Browse Source

CMake: Don't conflict with find_package internal variables

Sam Edwards 7 years ago
parent
commit
0c889db928
2 changed files with 11 additions and 9 deletions
  1. 7 7
      cmake/macros/PackageConfig.cmake
  2. 4 2
      dtool/src/interrogate/CMakeLists.txt

+ 7 - 7
cmake/macros/PackageConfig.cmake

@@ -148,16 +148,16 @@ function(package_option name)
   # Create the option.
   # Create the option.
   option("HAVE_${name}" "${cache_string}" "${default}")
   option("HAVE_${name}" "${cache_string}" "${default}")
   if(HAVE_${name})
   if(HAVE_${name})
-    set(_${name}_INCLUDES ${${found_as}_INCLUDE_DIRS} ${${found_as}_INCLUDE_DIR}
+    set(_PKG_${name}_INCLUDES ${${found_as}_INCLUDE_DIRS} ${${found_as}_INCLUDE_DIR}
       CACHE INTERNAL "<Internal>")
       CACHE INTERNAL "<Internal>")
     if(${found_as}_LIBRARIES)
     if(${found_as}_LIBRARIES)
-      set(_${name}_LIBRARIES ${${found_as}_LIBRARIES} CACHE INTERNAL "<Internal>")
+      set(_PKG_${name}_LIBRARIES ${${found_as}_LIBRARIES} CACHE INTERNAL "<Internal>")
     else()
     else()
-      set(_${name}_LIBRARIES "${${found_as}_LIBRARY}" CACHE INTERNAL "<Internal>")
+      set(_PKG_${name}_LIBRARIES "${${found_as}_LIBRARY}" CACHE INTERNAL "<Internal>")
     endif()
     endif()
   else()
   else()
-    unset(_${name}_INCLUDES CACHE)
-    unset(_${name}_LIBRARIES CACHE)
+    unset(_PKG_${name}_INCLUDES CACHE)
+    unset(_PKG_${name}_LIBRARIES CACHE)
   endif()
   endif()
 endfunction()
 endfunction()
 
 
@@ -231,13 +231,13 @@ macro(target_use_packages target)
 
 
   foreach(lib ${libs})
   foreach(lib ${libs})
     if(HAVE_${lib})
     if(HAVE_${lib})
-      target_link_libraries("${target}" ${_${lib}_LIBRARIES})
+      target_link_libraries("${target}" ${_PKG_${lib}_LIBRARIES})
 
 
       # This is gross, but we actually want to hide package include directories
       # This is gross, but we actually want to hide package include directories
       # from Interrogate to make sure it relies on parser-inc instead, so we'll
       # from Interrogate to make sure it relies on parser-inc instead, so we'll
       # use some generator expressions to do that.
       # use some generator expressions to do that.
       target_include_directories("${target}" PUBLIC
       target_include_directories("${target}" PUBLIC
-        $<$<NOT:$<BOOL:$<TARGET_PROPERTY:IS_INTERROGATE>>>:${_${lib}_INCLUDES}>)
+        $<$<NOT:$<BOOL:$<TARGET_PROPERTY:IS_INTERROGATE>>>:${_PKG_${lib}_INCLUDES}>)
     endif()
     endif()
   endforeach(lib)
   endforeach(lib)
 endmacro(target_use_packages)
 endmacro(target_use_packages)

+ 4 - 2
dtool/src/interrogate/CMakeLists.txt

@@ -53,11 +53,13 @@ composite_sources(interrogate INTERROGATE_SOURCES)
 
 
 add_executable(interrogate ${INTERROGATE_HEADERS} ${INTERROGATE_SOURCES})
 add_executable(interrogate ${INTERROGATE_HEADERS} ${INTERROGATE_SOURCES})
 target_link_libraries(interrogate
 target_link_libraries(interrogate
-  p3cppParser p3dtoolconfig p3pystub ${_OPENSSL_LIBRARIES})
+  p3cppParser p3dtoolconfig p3pystub)
+target_use_packages(interrogate OPENSSL)
 
 
 add_executable(interrogate_module interrogate_module.cxx)
 add_executable(interrogate_module interrogate_module.cxx)
 target_link_libraries(interrogate_module
 target_link_libraries(interrogate_module
-  p3cppParser p3dtoolconfig p3pystub ${_OPENSSL_LIBRARIES})
+  p3cppParser p3dtoolconfig p3pystub)
+target_use_packages(interrogate_module OPENSSL)
 
 
 if(NOT CMAKE_CROSSCOMPILING)
 if(NOT CMAKE_CROSSCOMPILING)
   add_executable(host_interrogate ALIAS interrogate)
   add_executable(host_interrogate ALIAS interrogate)