]> OCCT Git - occt-copy.git/commitdiff
0030456: Make OCCT_CHECK_AND_UNSET_GROUP more general
authorapn <apn@opencascade.com>
Fri, 19 Jul 2019 13:25:59 +0000 (16:25 +0300)
committerabv <abv@opencascade.com>
Mon, 21 Oct 2019 06:58:39 +0000 (09:58 +0300)
Modify OCCT_CHECK_AND_UNSET_GROUP function to allow unset any group of variables

adm/cmake/occt_macros.cmake

index 8220ecd5d32fe37b033454d2eb880de5a5f3cfce..0a38794527ef0d66421504f07482bdf015c7bbba 100644 (file)
@@ -12,18 +12,12 @@ macro (OCCT_CHECK_AND_UNSET VARNAME)
   endif()
 endmacro()
 
-macro (OCCT_CHECK_AND_UNSET_GROUP VARNAME)
-  OCCT_CHECK_AND_UNSET ("${VARNAME}_DIR")
-
-  OCCT_CHECK_AND_UNSET ("${VARNAME}_INCLUDE_DIR")
-
-  OCCT_CHECK_AND_UNSET ("${VARNAME}_LIBRARY")
-  OCCT_CHECK_AND_UNSET ("${VARNAME}_LIBRARY_DIR")
-
-  if (WIN32)
-    OCCT_CHECK_AND_UNSET ("${VARNAME}_DLL")
-    OCCT_CHECK_AND_UNSET ("${VARNAME}_DLL_DIR")
-  endif()
+macro (OCCT_CHECK_AND_UNSET_GROUP GROUPNAME)
+  get_cmake_property(VARS VARIABLES)
+  string (REGEX MATCHALL "(^|;)${GROUPNAME}[A-Za-z0-9_]*" GROUPNAME_VARS "${VARS}")
+  foreach(GROUPNAME_VAR ${GROUPNAME_VARS})
+    OCCT_CHECK_AND_UNSET(${GROUPNAME_VAR})
+  endforeach()
 endmacro()
 
 macro (OCCT_CHECK_AND_UNSET_INSTALL_DIR_SUBDIRS)