blob: 0f698551f740ec32cc96e18dacd44d394e4f9bca [file] [log] [blame]
set(TEST_SUITE_EXTERNALS_DIR "" CACHE PATH
"Directory containing test-suite external benchmark sources")
# Find path containing an external benchmark and set PATHVAR to it.
# Specifically this:
# - Adds a CACHE variable for PATHVAR
# - If PATHVAR is unset set it to the first existing directory in this list:
# - ${TEST_SUITE_EXTERNALS_DIR}/${NAME}
# - ${CMAKE_SOURCE_DIR}/test-suite-externals/${NAME}
function(llvm_externals_find PATHVAR NAME DESCRIPTION)
set(${PATHVAR} "" CACHE PATH "Directory containing ${DESCRIPTION} sourcecode")
if(NOT ${PATHVAR})
if(TEST_SUITE_EXTERNALS_DIR)
if (IS_DIRECTORY "${TEST_SUITE_EXTERNALS_DIR}/${NAME}")
set(${PATHVAR} "${TEST_SUITE_EXTERNALS_DIR}/${NAME}" PARENT_SCOPE)
endif()
else()
if(IS_DIRECTORY "${CMAKE_SOURCE_DIR}/test-suite-externals/${NAME}")
set(${PATHVAR} "${CMAKE_SOURCE_DIR}/test-suite-externals/${NAME}"
PARENT_SCOPE)
endif()
endif()
if(${PATHVAR})
message(STATUS "Found ${DESCRIPTION}: ${${PATHVAR}}")
endif()
endif()
endfunction()