Prechádzať zdrojové kódy

Try adding Draco support through Hunter

Rahul Sheth 4 rokov pred
rodič
commit
62c991290b

+ 7 - 1
.github/workflows/ccpp.yml

@@ -67,7 +67,13 @@ jobs:
       uses: actions/checkout@v2
       with:
         repository: cpp-pm/polly
-        path: cmake/polly     
+        path: cmake/polly
+
+    - name: Remove contrib directory for Hunter builds
+      if: contains(matrix.name, 'hunter')
+      uses: JesseTG/rm@v1
+      with:
+        path: contrib
 
     - name: Cache DX SDK
       id: dxcache

+ 9 - 10
CMakeLists.txt

@@ -46,8 +46,8 @@ option(ASSIMP_HUNTER_ENABLED "Enable Hunter package manager support" OFF)
 IF(ASSIMP_HUNTER_ENABLED)
   include("cmake/HunterGate.cmake")
   HunterGate(
-    URL "https://github.com/cpp-pm/hunter/archive/v0.23.269.tar.gz"
-    SHA1 "64024b7b95b4c86d50ae05b926814448c93a70a0"
+    URL "https://github.com/cpp-pm/hunter/archive/v0.23.293.tar.gz"
+    SHA1 "e8e5470652db77149d9b38656db2a6c0b7642693"
   )
 
   add_definitions(-DASSIMP_USE_HUNTER)
@@ -583,9 +583,8 @@ ELSE()
     set(DRACO_MAYA_PLUGIN OFF CACHE BOOL "" FORCE)
     set(DRACO_UNITY_PLUGIN OFF CACHE BOOL "" FORCE)
     set(DRACO_TESTS OFF CACHE BOOL "" FORCE)
-     
+
     IF(ASSIMP_HUNTER_ENABLED)
-      # hunter is untested
       hunter_add_package(draco)
       find_package(draco CONFIG REQUIRED)
     ELSE()
@@ -607,7 +606,7 @@ ELSE()
           "-fvisibility=default"
         )
       ENDIF()
-      
+
       ADD_SUBDIRECTORY( "contrib/draco" )
 
       if(MSVC OR WIN32)
@@ -619,19 +618,19 @@ ELSE()
           set(draco_LIBRARIES "draco_static")
         endif()
       endif()
-      
+
       # Don't build the draco command-line tools by default
       set_target_properties(draco_encoder draco_decoder PROPERTIES
         EXCLUDE_FROM_ALL TRUE
         EXCLUDE_FROM_DEFAULT_BUILD TRUE
         )
-      
+
       TARGET_USE_COMMON_OUTPUT_DIRECTORY(${draco_LIBRARIES})
       TARGET_USE_COMMON_OUTPUT_DIRECTORY(draco_encoder)
       TARGET_USE_COMMON_OUTPUT_DIRECTORY(draco_decoder)
-      
+
       set(draco_INCLUDE_DIRS "${CMAKE_CURRENT_SOURCE_DIR}/contrib/draco/src")
-      
+
       # This is probably wrong
       INSTALL( TARGETS ${draco_LIBRARIES}
         EXPORT "${TARGETS_EXPORT_NAME}"
@@ -661,7 +660,7 @@ IF ( ASSIMP_BUILD_ASSIMP_TOOLS )
   ADD_SUBDIRECTORY( tools/assimp_cmd/ )
 ENDIF ()
 
-IF ( ASSIMP_BUILD_SAMPLES)
+IF ( ASSIMP_BUILD_SAMPLES )
   SET( SAMPLES_DIR ${CMAKE_CURRENT_SOURCE_DIR}/samples )
   SET( SAMPLES_SHARED_CODE_DIR ${SAMPLES_DIR}/SharedCode )
   IF ( WIN32 )

+ 4 - 0
cmake/assimp-hunter-config.cmake.in

@@ -10,5 +10,9 @@ find_package(polyclipping CONFIG REQUIRED)
 find_package(zip CONFIG REQUIRED)
 find_package(pugixml CONFIG REQUIRED)
 
+if(@ASSIMP_BUILD_DRACO@)
+  find_package(draco CONFIG REQUIRED)
+endif()
+
 include("${CMAKE_CURRENT_LIST_DIR}/@[email protected]")
 check_required_components("@PROJECT_NAME@")