mirror of
https://github.com/IfcOpenShell/IfcOpenShell.git
synced 2026-08-13 10:57:49 +00:00
Add occt build script patch for V7_7_1
This commit is contained in:
@@ -0,0 +1,85 @@
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index fd17283f77..7a6cef1ac2 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -431,6 +431,9 @@ if (WIN32)
|
||||
else()
|
||||
set (USE_D3D OFF)
|
||||
endif()
|
||||
+ # IfcOpenShell begin
|
||||
+ add_definitions(-DHAVE_NO_DLL)
|
||||
+ # IfcOpenShell end
|
||||
|
||||
# Enable/Disable the floating point exceptions (FPE) during runtime.
|
||||
if (NOT BUILD_ENABLE_FPE_SIGNAL_HANDLER)
|
||||
@@ -826,6 +829,8 @@ if (EMSCRIPTEN)
|
||||
list (REMOVE_ITEM BUILD_TOOLKITS ExpToCasExe)
|
||||
endif()
|
||||
|
||||
+list (REMOVE_ITEM BUILD_TOOLKITS ExpToCasExe)
|
||||
+
|
||||
# bison
|
||||
if (BUILD_YACCLEX)
|
||||
OCCT_INCLUDE_CMAKE_FILE ("adm/cmake/bison")
|
||||
diff --git a/adm/cmake/occt_defs_flags.cmake b/adm/cmake/occt_defs_flags.cmake
|
||||
index 33b50e8ce7..6b0628235e 100644
|
||||
--- a/adm/cmake/occt_defs_flags.cmake
|
||||
+++ b/adm/cmake/occt_defs_flags.cmake
|
||||
@@ -153,7 +153,23 @@ elseif (DEFINED CMAKE_COMPILER_IS_GNUCXX)
|
||||
set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -s")
|
||||
endif()
|
||||
|
||||
-if (BUILD_RELEASE_DISABLE_EXCEPTIONS)
|
||||
- set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DNo_Exception")
|
||||
- set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DNo_Exception")
|
||||
-endif()
|
||||
+# IfcOpenShell begin
|
||||
+# https://salsa.debian.org/science-team/opencascade/blob/739e7e9c4fbe575165eb3ff0251774bfad27139e/debian/patches/enable-exception-handling.patch
|
||||
+# if (BUILD_RELEASE_DISABLE_EXCEPTIONS)
|
||||
+# set (CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DNo_Exception")
|
||||
+# set (CMAKE_C_FLAGS_RELEASE "${CMAKE_C_FLAGS_RELEASE} -DNo_Exception")
|
||||
+# endif()
|
||||
+
|
||||
+if (MSVC AND MSVC_STATIC_RUNTIME)
|
||||
+ foreach(flag CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE CMAKE_CXX_FLAGS_MINSIZEREL
|
||||
+ CMAKE_CXX_FLAGS_RELWITHDEBINFO CMAKE_C_FLAGS CMAKE_C_FLAGS_DEBUG CMAKE_C_FLAGS_RELEASE
|
||||
+ CMAKE_C_FLAGS_MINSIZEREL CMAKE_C_FLAGS_RELWITHDEBINFO)
|
||||
+ if (${flag} MATCHES "/MD")
|
||||
+ string(REGEX REPLACE "/MD" "/MT" ${flag} "${${flag}}")
|
||||
+ endif()
|
||||
+ if (${flag} MATCHES "/MDd")
|
||||
+ string(REGEX REPLACE "/MDd" "/MTd" ${flag} "${${flag}}")
|
||||
+ endif()
|
||||
+ endforeach()
|
||||
+endif()
|
||||
+# IfcOpenShell end
|
||||
diff --git a/adm/cmake/occt_toolkit.cmake b/adm/cmake/occt_toolkit.cmake
|
||||
index 132890bc84..7e74b1f489 100644
|
||||
--- a/adm/cmake/occt_toolkit.cmake
|
||||
+++ b/adm/cmake/occt_toolkit.cmake
|
||||
@@ -284,9 +284,22 @@ else()
|
||||
else()
|
||||
set (aReleasePdbConf)
|
||||
endif()
|
||||
- install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.pdb
|
||||
- CONFIGURATIONS Debug ${aReleasePdbConf} RelWithDebInfo
|
||||
- DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}")
|
||||
+ # IfcOpenShell begin
|
||||
+ if (BUILD_SHARED_LIBS)
|
||||
+ install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/bin\${OCCT_INSTALL_BIN_LETTER}/${PROJECT_NAME}.pdb
|
||||
+ CONFIGURATIONS Debug ${aReleasePdbConf} RelWithDebInfo
|
||||
+ DESTINATION "${INSTALL_DIR_BIN}\${OCCT_INSTALL_BIN_LETTER}")
|
||||
+ else()
|
||||
+ set_target_properties (${PROJECT_NAME} PROPERTIES
|
||||
+ COMPILE_PDB_NAME ${PROJECT_NAME}
|
||||
+ COMPILE_PDB_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/pdb/
|
||||
+ )
|
||||
+
|
||||
+ install (FILES ${CMAKE_BINARY_DIR}/${OS_WITH_BIT}/${COMPILER}/pdb/\${CMAKE_INSTALL_CONFIG_NAME}/${PROJECT_NAME}.pdb
|
||||
+ CONFIGURATIONS Debug ${aReleasePdbConf} RelWithDebInfo
|
||||
+ DESTINATION "${INSTALL_DIR_LIB}\${OCCT_INSTALL_BIN_LETTER}")
|
||||
+ endif()
|
||||
+ # IfcOpenShell end
|
||||
endif()
|
||||
|
||||
if (BUILD_SHARED_LIBS AND NOT "${BUILD_SHARED_LIBRARY_NAME_POSTFIX}" STREQUAL "")
|
||||
Reference in New Issue
Block a user