diff --git a/.github/workflows/ccpp.yml b/.github/workflows/ccpp.yml index f29e2e5005..83e71b9cb1 100644 --- a/.github/workflows/ccpp.yml +++ b/.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 diff --git a/CMakeLists.txt b/CMakeLists.txt index d25d1d897a..722486b410 100644 --- a/CMakeLists.txt +++ b/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 ) diff --git a/cmake/assimp-hunter-config.cmake.in b/cmake/assimp-hunter-config.cmake.in index b5283f4fbe..91efcbf249 100644 --- a/cmake/assimp-hunter-config.cmake.in +++ b/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}/@TARGETS_EXPORT_NAME@.cmake") check_required_components("@PROJECT_NAME@")