Browse Source

Utilities: Announce both system-installed and bundled dependencies

CMake already says if it's using a system-installed component when
configuring:

    -- Using system-installed BZIP2

For clarity, also list what components are using the bundled source
code.  Example output:

    -- Using system installed: ZLIB
    -- Using bundled: BZIP2 CPPDAP CURL EXPAT FORM JSONCPP LIBARCHIVE
       LIBLZMA LIBRHASH LIBUV NGHTTP2 ZSTD KWIML

This is useful when verifying packaging of CMake itself.
Ross Burton 2 weeks ago
parent
commit
82e3d17b5e
1 changed files with 14 additions and 1 deletions
  1. 14 1
      CMakeLists.txt

+ 14 - 1
CMakeLists.txt

@@ -225,11 +225,24 @@ macro(CMAKE_HANDLE_SYSTEM_LIBRARIES)
     # Avoid messaging about curl-only dependencies.
     list(REMOVE_ITEM UTILITIES NGHTTP2)
   endif()
+
+  set(DEPS_SYSTEM "")
+  set(DEPS_BUNDLED "")
   foreach(util IN LISTS UTILITIES ITEMS KWIML)
     if(CMAKE_USE_SYSTEM_${util})
-      message(STATUS "Using system-installed ${util}")
+      string(APPEND DEPS_SYSTEM " ${util}")
+    else()
+      string(APPEND DEPS_BUNDLED " ${util}")
     endif()
   endforeach()
+  if(DEPS_SYSTEM)
+    message(STATUS "Using system-installed:${DEPS_SYSTEM}")
+  endif()
+  if(DEPS_BUNDLED)
+    message(STATUS "Using bundled:${DEPS_BUNDLED}")
+  endif()
+  unset(DEPS_SYSTEM)
+  unset(DEPS_BUNDLED)
 
   # Inform utility library header wrappers whether to use system versions.
   configure_file(Utilities/cmThirdParty.h.in Utilities/cmThirdParty.h @ONLY)