You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
cmake_minimum_required(VERSION 3.5)
|
|
|
|
project(FindPathTest NONE)
|
|
|
|
|
|
|
|
set(CMAKE_FIND_DEBUG_MODE 1)
|
|
|
|
|
|
|
|
macro(test_find_path expected)
|
|
|
|
unset(HDR CACHE)
|
|
|
|
find_path(HDR ${ARGN}
|
|
|
|
NO_CMAKE_ENVIRONMENT_PATH
|
|
|
|
NO_SYSTEM_ENVIRONMENT_PATH
|
|
|
|
)
|
|
|
|
if(HDR)
|
|
|
|
# Convert to relative path for comparison to expected location.
|
|
|
|
file(RELATIVE_PATH REL_HDR "${CMAKE_CURRENT_SOURCE_DIR}" "${HDR}")
|
|
|
|
|
|
|
|
# Check and report failure.
|
|
|
|
if(NOT "${REL_HDR}" STREQUAL "${expected}")
|
|
|
|
message(SEND_ERROR "Header ${expected} found as [${REL_HDR}]")
|
|
|
|
elseif(CMAKE_FIND_DEBUG_MODE)
|
|
|
|
message(STATUS "Header ${expected} found as [${REL_HDR}]")
|
|
|
|
endif()
|
|
|
|
else()
|
|
|
|
message(SEND_ERROR "Header ${expected} NOT FOUND")
|
|
|
|
endif()
|
|
|
|
endmacro()
|
|
|
|
|
|
|
|
set(CMAKE_SYSTEM_PREFIX_PATH ${CMAKE_CURRENT_SOURCE_DIR})
|
|
|
|
set(CMAKE_LIBRARY_ARCHITECTURE arch)
|
|
|
|
|
|
|
|
test_find_path(include NAMES test1.h)
|
|
|
|
test_find_path(include/arch NAMES test1arch.h)
|