Преглед изворни кода

Merge topic 'FindBoost-config-mode' into release-3.19

4b2a61946f FindBoost: Honor BOOST_ROOT when finding upstream BoostConfig
b32cb33275 FindBoost: Honor Boost_NO_SYSTEM_PATHS when finding upstream BoostConfig

Acked-by: Kitware Robot <[email protected]>
Merge-request: !5408
Brad King пре 5 година
родитељ
комит
6335b67c80
1 измењених фајлова са 12 додато и 1 уклоњено
  1. 12 1
      Modules/FindBoost.cmake

+ 12 - 1
Modules/FindBoost.cmake

@@ -442,10 +442,21 @@ if (NOT Boost_NO_BOOST_CMAKE)
     endif()
   endif()
 
+  set(_boost_FIND_PACKAGE_ARGS "")
+  if(Boost_NO_SYSTEM_PATHS)
+    list(APPEND _boost_FIND_PACKAGE_ARGS NO_CMAKE_SYSTEM_PATH NO_SYSTEM_ENVIRONMENT_PATH)
+  endif()
+
   # Do the same find_package call but look specifically for the CMake version.
   # Note that args are passed in the Boost_FIND_xxxxx variables, so there is no
   # need to delegate them to this find_package call.
-  find_package(Boost QUIET NO_MODULE)
+  cmake_policy(PUSH)
+  if(BOOST_ROOT AND NOT Boost_ROOT)
+    cmake_policy(SET CMP0074 NEW)
+    set(Boost_ROOT "${BOOST_ROOT}")
+  endif()
+  find_package(Boost QUIET NO_MODULE ${_boost_FIND_PACKAGE_ARGS})
+  cmake_policy(POP)
   if (DEFINED Boost_DIR)
     mark_as_advanced(Boost_DIR)
   endif ()