summaryrefslogtreecommitdiffstats
path: root/games/vegastrike/cmake/FindPackageMessage.cmake
diff options
context:
space:
mode:
author CRTS <crts [at] gmx [dot] net>2021-01-24 19:34:40 +0100
committer Robby Workman <rworkman@slackbuilds.org>2021-04-18 00:04:03 -0500
commita569ecc1f95142fae653b2c75079d87a9c1f32b3 (patch)
tree14858a60c74981df276749edd313ea1f4e05b941 /games/vegastrike/cmake/FindPackageMessage.cmake
parentad1208115f0dc3c27bfaec00de1f3db7dd7550b2 (diff)
downloadslackbuilds-a569ecc1f95142fae653b2c75079d87a9c1f32b3.tar.gz
slackbuilds-a569ecc1f95142fae653b2c75079d87a9c1f32b3.tar.xz
games/vegastrike: Adjustments for -current.
Signed-off-by: Matteo Bernardini <ponce@slackbuilds.org>
Diffstat (limited to 'games/vegastrike/cmake/FindPackageMessage.cmake')
-rw-r--r--games/vegastrike/cmake/FindPackageMessage.cmake48
1 files changed, 48 insertions, 0 deletions
diff --git a/games/vegastrike/cmake/FindPackageMessage.cmake b/games/vegastrike/cmake/FindPackageMessage.cmake
new file mode 100644
index 0000000000..0628b98169
--- /dev/null
+++ b/games/vegastrike/cmake/FindPackageMessage.cmake
@@ -0,0 +1,48 @@
+# Distributed under the OSI-approved BSD 3-Clause License. See accompanying
+# file Copyright.txt or https://cmake.org/licensing for details.
+
+#[=======================================================================[.rst:
+FindPackageMessage
+------------------
+
+.. code-block:: cmake
+
+ find_package_message(<name> "message for user" "find result details")
+
+This function is intended to be used in FindXXX.cmake modules files.
+It will print a message once for each unique find result. This is
+useful for telling the user where a package was found. The first
+argument specifies the name (XXX) of the package. The second argument
+specifies the message to display. The third argument lists details
+about the find result so that if they change the message will be
+displayed again. The macro also obeys the QUIET argument to the
+find_package command.
+
+Example:
+
+.. code-block:: cmake
+
+ if(X11_FOUND)
+ find_package_message(X11 "Found X11: ${X11_X11_LIB}"
+ "[${X11_X11_LIB}][${X11_INCLUDE_DIR}]")
+ else()
+ ...
+ endif()
+#]=======================================================================]
+
+function(find_package_message pkg msg details)
+ # Avoid printing a message repeatedly for the same find result.
+ if(NOT ${pkg}_FIND_QUIETLY)
+ string(REPLACE "\n" "" details "${details}")
+ set(DETAILS_VAR FIND_PACKAGE_MESSAGE_DETAILS_${pkg})
+ if(NOT "${details}" STREQUAL "${${DETAILS_VAR}}")
+ # The message has not yet been printed.
+ message(STATUS "${msg}")
+
+ # Save the find details in the cache to avoid printing the same
+ # message again.
+ set("${DETAILS_VAR}" "${details}"
+ CACHE INTERNAL "Details about finding ${pkg}")
+ endif()
+ endif()
+endfunction()