Browse Source

Test find_path multiarch support (#13742)

Brad King 13 years ago
parent
commit
da1d9bac63

+ 1 - 0
Tests/CMakeOnly/CMakeLists.txt

@@ -32,6 +32,7 @@ add_CMakeOnly_test(SelectLibraryConfigurations)
 add_CMakeOnly_test(TargetScope)
 
 add_CMakeOnly_test(find_library)
+add_CMakeOnly_test(find_path)
 
 add_test(CMakeOnly.ProjectInclude ${CMAKE_CMAKE_COMMAND}
   -DTEST=ProjectInclude

+ 31 - 0
Tests/CMakeOnly/find_path/CMakeLists.txt

@@ -0,0 +1,31 @@
+cmake_minimum_required(VERSION 2.8)
+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)

+ 0 - 0
Tests/CMakeOnly/find_path/include/arch/test1arch.h


+ 0 - 0
Tests/CMakeOnly/find_path/include/test1.h