Add assimp

This commit is contained in:
Pcornat 2024-10-24 11:14:17 +02:00
parent dfe1880c08
commit a328b57c3c
Signed by: Pcornat
GPG Key ID: E0326CC678A00BDD
3 changed files with 24 additions and 5 deletions

3
.gitmodules vendored Normal file
View File

@ -0,0 +1,3 @@
[submodule "external/assimp"]
path = external/assimp
url = https://github.com/assimp/assimp.git

View File

@ -45,19 +45,34 @@ if (${ENABLE_COVERAGE})
list(APPEND LINKER_FLAGS gcov)
endif ()
option(BUILD_SHARED_LIBS "Build package with shared libraries." ON)
option(ASSIMP_NO_EXPORT "Disable Assimp's export functionality." ON)
option(ASSIMP_INSTALL "Disable this if you want to use assimp as a submodule." OFF)
option(ASSIMP_BUILD_ZLIB "Build your own zlib" OFF)
option(ASSIMP_BUILD_TESTS "If the test suite for Assimp is built in addition to the library." OFF)
option(ASSIMP_WARNINGS_AS_ERRORS "Treat all warnings as errors." OFF)
option(ASSIMP_INSTALL_PDB "Install MSVC debug files." OFF)
option(ASSIMP_INJECT_DEBUG_POSTFIX "Inject debug postfix in .a/.so/.dll lib names" OFF)
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
option(ASSIMP_INJECT_DEBUG_POSTFIX "Inject debug postfix in .a/.so/.dll lib names" ON)
else ()
option(ASSIMP_INJECT_DEBUG_POSTFIX "Inject debug postfix in .a/.so/.dll lib names" OFF)
endif ()
add_subdirectory(external/assimp EXCLUDE_FROM_ALL)
add_executable(LearnGtk4 main.cpp
hello_world.cpp
hello_world.hpp)
set_target_properties(LearnGtk4 PROPERTIES
CXX_STANDARD 20
set_target_properties(LearnGtk4 assimp PROPERTIES
CXX_STANDARD 17
CXX_STANDARD_REQUIRED ON
CXX_EXTENSIONS OFF
INTERPROCEDURAL_OPTIMIZATION ON
UNITY_BUILD ON
)
target_compile_definitions(LearnGtk4 PUBLIC $<$<CONFIG:Debug>:_GLIBCXX_DEBUG>)
target_compile_options(LearnGtk4 PUBLIC ${COMPILE_OPTIONS})
target_compile_definitions(assimp PUBLIC $<$<CONFIG:Debug>:_GLIBCXX_DEBUG>)
target_compile_options(LearnGtk4 PUBLIC ${COMPILE_FLAGS})
target_link_options(LearnGtk4 PUBLIC ${LINKER_OPTIONS})
target_link_libraries(LearnGtk4 PkgConfig::GTKMM4)
target_link_libraries(LearnGtk4 PkgConfig::GTKMM4 assimp)

1
external/assimp vendored Submodule

@ -0,0 +1 @@
Subproject commit f6c62605c76001ac37f1d86da9922ef61e65501d