From 62c991290b1bcd05736bc2ae39265db5a46936d4 Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 29 Jan 2021 17:10:38 -0500 Subject: [PATCH 1/2] Try adding Draco support through Hunter --- .github/workflows/ccpp.yml | 8 +++++++- CMakeLists.txt | 19 +++++++++---------- cmake/assimp-hunter-config.cmake.in | 4 ++++ 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/.github/workflows/ccpp.yml b/.github/workflows/ccpp.yml index f29e2e500..83e71b9cb 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 d25d1d897..722486b41 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 b5283f4fb..91efcbf24 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@") From a0116c6e01db932ed268ff07cc8cb3954e934f7f Mon Sep 17 00:00:00 2001 From: Rahul Sheth Date: Fri, 29 Jan 2021 17:22:16 -0500 Subject: [PATCH 2/2] Need to link against correct target --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index 722486b41..06669c4ff 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -587,6 +587,7 @@ ELSE() IF(ASSIMP_HUNTER_ENABLED) hunter_add_package(draco) find_package(draco CONFIG REQUIRED) + set(draco_LIBRARIES draco::draco) ELSE() # Draco 1.4.1 has many warnings and will not build with /WX or -Werror # See https://github.com/google/draco/issues/672