]> OCCT Git - occt.git/commitdiff
Configuration - Extend support Ubuntu packages #118
authordpasukhi <dpasukhi@opencascade.com>
Sat, 26 Oct 2024 20:59:54 +0000 (21:59 +0100)
committerdpasukhi <dpasukhi@opencascade.com>
Sat, 26 Oct 2024 21:00:18 +0000 (22:00 +0100)
Draco, vtk and openvr now can be used from ubuntu packages
Fixed issue for Clang with msvc lib detection

adm/cmake/3rdparty_macro.cmake
adm/cmake/draco.cmake
adm/cmake/occt_macros.cmake
adm/cmake/vtk.cmake

index bb4962a6c6af616a68132585dc46ead81c094061..ac8a0ea729b15382536d57b004c05ad858a9b58b 100644 (file)
@@ -101,8 +101,9 @@ macro (THIRDPARTY_PRODUCT PRODUCT_NAME HEADER_NAME LIBRARY_CSF_NAME LIBRARY_NAME
                                                       CMAKE_FIND_ROOT_PATH_BOTH
                                                       NO_DEFAULT_PATH)
     else()
+      string(TOLOWER ${PRODUCT_NAME} LOW_CASE_PRODUCT_NAME)
       find_path (3RDPARTY_${PRODUCT_NAME}_INCLUDE_DIR NAMES ${HEADER_NAME}
-                                                      PATH_SUFFIXES include inc headers
+                                                      PATH_SUFFIXES include inc headers ${LOW_CASE_PRODUCT_NAME}
                                                       CMAKE_FIND_ROOT_PATH_BOTH)
     endif()
   endif()
index cebc75df999bf81c38113c4cb69a895c67b0b208..30533b64de540feda9c3ff27bf5927349c7b0af0 100644 (file)
@@ -51,6 +51,11 @@ if (NOT 3RDPARTY_DRACO_INCLUDE_DIR OR NOT EXISTS "${3RDPARTY_DRACO_INCLUDE_DIR}"
                                                  PATH_SUFFIXES "include"
                                                  CMAKE_FIND_ROOT_PATH_BOTH
                                                  NO_DEFAULT_PATH)
+  else()
+    find_path (3RDPARTY_DRACO_INCLUDE_DIR NAMES ${HEADER_NAMES}
+                                                 PATHS ${3RDPARTY_DRACO_DIR}
+                                                 PATH_SUFFIXES "include"
+                                                 CMAKE_FIND_ROOT_PATH_BOTH)
   endif()
 endif()
 
index 5b423275add01409c71302167af4427f8479f365..711b61c10d616b58638182a736aeeccf0a27338b 100644 (file)
@@ -173,6 +173,17 @@ function (OCCT_ORIGIN_AND_PATCHED_FILES RELATIVE_PATH SEARCH_TEMPLATE RESULT)
   set (${RESULT} ${FOUND_FILES} PARENT_SCOPE)
 endfunction()
 
+function (FILLUP_PRODUCT_SEARCH_TEMPLATE PRODUCT_NAME COMPILER COMPILER_BITNESS SEARCH_TEMPLATES)
+  list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*${COMPILER}.*${COMPILER_BITNESS}")
+  list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+.*${COMPILER}.*${COMPILER_BITNESS}")
+  list (APPEND SEARCH_TEMPLATES "^[a-zA-Z]*[0-9]*-${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+.*${COMPILER}.*${COMPILER_BITNESS}")
+  list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+.*${COMPILER_BITNESS}")
+  list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*.*${COMPILER_BITNESS}")
+  list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+")
+  list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*")
+  set (SEARCH_TEMPLATES ${SEARCH_TEMPLATES} PARENT_SCOPE)
+endfunction()
+
 function (FIND_PRODUCT_DIR ROOT_DIR PRODUCT_NAME RESULT)
   OCCT_MAKE_COMPILER_SHORT_NAME()
   OCCT_MAKE_COMPILER_BITNESS()
@@ -184,13 +195,11 @@ function (FIND_PRODUCT_DIR ROOT_DIR PRODUCT_NAME RESULT)
   elseif ("${lower_PRODUCT_NAME}" STREQUAL "tbb")
     list (APPEND SEARCH_TEMPLATES "^.*${lower_PRODUCT_NAME}.*")
   else()
-    list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*${COMPILER}.*${COMPILER_BITNESS}")
-    list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+.*${COMPILER}.*${COMPILER_BITNESS}")
-    list (APPEND SEARCH_TEMPLATES "^[a-zA-Z]*[0-9]*-${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+.*${COMPILER}.*${COMPILER_BITNESS}")
-    list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+.*${COMPILER_BITNESS}")
-    list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*.*${COMPILER_BITNESS}")
-    list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*[0-9.]+")
-    list (APPEND SEARCH_TEMPLATES "^[^a-zA-Z]*${lower_PRODUCT_NAME}[^a-zA-Z]*")
+    FILLUP_PRODUCT_SEARCH_TEMPLATE(${lower_PRODUCT_NAME} ${COMPILER} ${COMPILER_BITNESS} SEARCH_TEMPLATES)
+    if (WIN32 AND "${COMPILER}" STREQUAL "clang")
+      # for clang on Windows, search for "vc" as well
+      FILLUP_PRODUCT_SEARCH_TEMPLATE(${lower_PRODUCT_NAME} "vc" ${COMPILER_BITNESS} SEARCH_TEMPLATES)
+    endif()
   endif()
 
   SUBDIRECTORY_NAMES ("${ROOT_DIR}" SUBDIR_NAME_LIST)
index a81cdf9bb2a095d539b0a5ce017333a831c504f2..f7fb6580bc3f1070622b60c6cdaaae64f800523b 100644 (file)
@@ -200,7 +200,7 @@ endif()
 
 if (3RDPARTY_VTK_INCLUDE_DIR AND EXISTS "${3RDPARTY_VTK_INCLUDE_DIR}")
   list (APPEND 3RDPARTY_INCLUDE_DIRS ${3RDPARTY_VTK_INCLUDE_DIR})
-else()
+elseif (NOT VTK_FOUND)
   list (APPEND 3RDPARTY_NOT_INCLUDED 3RDPARTY_VTK_INCLUDE_DIR)
 endif()