From 09b981d943a4ca06865e11b68a0f1c892895edcb Mon Sep 17 00:00:00 2001 From: "Nathan V. Morrical" Date: Tue, 13 Aug 2024 01:23:14 -0600 Subject: [PATCH 1/4] fixing static build (#5713) --- contrib/poly2tri/poly2tri/common/dll_symbol.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/contrib/poly2tri/poly2tri/common/dll_symbol.h b/contrib/poly2tri/poly2tri/common/dll_symbol.h index 72ed5a75f..c18c2baec 100644 --- a/contrib/poly2tri/poly2tri/common/dll_symbol.h +++ b/contrib/poly2tri/poly2tri/common/dll_symbol.h @@ -53,7 +53,9 @@ # define P2T_DLL_SYMBOL # elif defined(P2T_SHARED_EXPORTS) # define P2T_DLL_SYMBOL P2T_COMPILER_DLLEXPORT -# else +# elif defined(BUILD_SHARED_LIBS) # define P2T_DLL_SYMBOL P2T_COMPILER_DLLIMPORT +# else +# define P2T_DLL_SYMBOL # endif #endif From d41b6b253d215a003ed6cfd7db197dbe7e7e8206 Mon Sep 17 00:00:00 2001 From: mkuritsu <92603490+mkuritsu@users.noreply.github.com> Date: Tue, 13 Aug 2024 08:39:53 +0100 Subject: [PATCH 2/4] =?UTF-8?q?Added=20AND=20condition=20in=20poly2tri=20d?= =?UTF-8?q?ll=5Fsymbol.h=20to=20only=20define=20macros=20fo=E2=80=A6=20(#5?= =?UTF-8?q?693)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Added ADD condition in poly2tri dll_symbol.h to only define macros for dynamic library linking if assimp is ordered to build as DLL * Reverted last commit to handle this issue in a better way. * added P2T_STATIC_EXPORTS to compile definitions when building assimp as DLL --------- Co-authored-by: Kim Kulling --- code/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/CMakeLists.txt b/code/CMakeLists.txt index e4e67e682..30730f716 100644 --- a/code/CMakeLists.txt +++ b/code/CMakeLists.txt @@ -1334,7 +1334,7 @@ ADD_LIBRARY(assimp::assimp ALIAS assimp) IF (BUILD_SHARED_LIBS) TARGET_COMPILE_DEFINITIONS(assimp PRIVATE ASSIMP_BUILD_DLL_EXPORT) ELSE () - TARGET_COMPILE_DEFINITIONS(assimp PRIVATE OPENDDL_STATIC_LIBARY) + TARGET_COMPILE_DEFINITIONS(assimp PRIVATE OPENDDL_STATIC_LIBARY P2T_STATIC_EXPORTS) ENDIF () TARGET_USE_COMMON_OUTPUT_DIRECTORY(assimp) From afe06f22986f7815051538d7279aa2188655d370 Mon Sep 17 00:00:00 2001 From: RichardTea <31507749+RichardTea@users.noreply.github.com> Date: Tue, 13 Aug 2024 08:53:33 +0100 Subject: [PATCH 3/4] Fix MSVC PDBs and permit them to be disabled if required (#5710) * Revert "Remove /Zi compiler flag for MSVC, release config" This reverts commit 9e1de3ec6e6a5749ff23f3b8640da96bb32b1046. * Allow MSVC PDB creation to be disabled Turn off ASSIMP_INSTALL_PDB to disable PDB creation * Whitespace cleanup Assimp uses spaces in cmakelists, not tabs --------- Co-authored-by: Kim Kulling --- CMakeLists.txt | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 619cd0ce3..978c3f4a0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -154,7 +154,7 @@ IF (WIN32) IF(MSVC) OPTION( ASSIMP_INSTALL_PDB - "Install MSVC debug files." + "Create MSVC debug symbol files and add to Install target." ON ) IF(NOT (MSVC_VERSION LESS 1900)) # Multibyte character set has been deprecated since at least MSVC2015 (possibly earlier) @@ -299,8 +299,13 @@ ELSEIF(MSVC) # supress warning for double to float conversion if Double precision is activated ADD_COMPILE_OPTIONS(/wd4244) SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /D_DEBUG /Zi /Od") - SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") - SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG:FULL /PDBALTPATH:%_PDB% /OPT:REF /OPT:ICF") + # Allow user to disable PDBs + if(ASSIMP_INSTALL_PDB) + SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Zi") + SET(CMAKE_SHARED_LINKER_FLAGS_RELEASE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE} /DEBUG:FULL /PDBALTPATH:%_PDB% /OPT:REF /OPT:ICF") + elseif((GENERATOR_IS_MULTI_CONFIG) OR (CMAKE_BUILD_TYPE MATCHES Release)) + message("-- MSVC PDB generation disabled. Release binary will not be debuggable.") + endif() ELSEIF (CMAKE_CXX_COMPILER_ID MATCHES "Clang" ) IF(NOT ASSIMP_HUNTER_ENABLED) SET(CMAKE_POSITION_INDEPENDENT_CODE ON) From f950f61a5220a74b04f6c2c3152d968768c769be Mon Sep 17 00:00:00 2001 From: RichardTea <31507749+RichardTea@users.noreply.github.com> Date: Tue, 13 Aug 2024 09:09:28 +0100 Subject: [PATCH 4/4] Use DRACO_GLTF_BITSTREAM (#5709) Replaces deprecated DRACO_GLTF cmake option Co-authored-by: Kim Kulling --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 978c3f4a0..3551cb5b4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -648,7 +648,7 @@ ELSE() IF ( ASSIMP_BUILD_DRACO ) # Primarily for glTF v2 # Enable Draco glTF feature set - set(DRACO_GLTF ON CACHE BOOL "" FORCE) + set(DRACO_GLTF_BITSTREAM ON CACHE BOOL "" FORCE) # Disable unnecessary or omitted components set(DRACO_JS_GLUE OFF CACHE BOOL "" FORCE) set(DRACO_WASM OFF CACHE BOOL "" FORCE)