Cmake install config fixes

This commit is contained in:
Thomas Krijnen
2026-07-30 08:54:08 +02:00
parent 6d7aa3c48c
commit 41308cf122
13 changed files with 75 additions and 17 deletions
+4
View File
@@ -14,6 +14,10 @@ add_library(IfcGeom ${SCHEMA_AGNOSTIC_FILES})
set_target_properties(IfcGeom PROPERTIES
OUTPUT_NAME "ifcopenshell.geometry"
)
target_include_directories(IfcGeom PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/..>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
)
if((NOT WIN32) AND BUILD_SHARED_LIBS AND NOT WASM_BUILD AND NOT CREATE_BUNDLE AND NOT CMAKE_INSTALL_RPATH AND COMMAND SET_INSTALL_SELF_RPATH)
SET_INSTALL_SELF_RPATH(IfcGeom)
+11 -1
View File
@@ -3,6 +3,13 @@ set(geometry_serialization_plugin_runtime_dir "${CMAKE_CURRENT_BINARY_DIR}/$<CON
add_subdirectory(schema)
add_library(geometry_serializer Serialization.cpp opencascade_geometry_ifc_writer_plugin.cpp)
target_include_directories(geometry_serializer PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../..>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
)
if((NOT WIN32) AND BUILD_SHARED_LIBS AND NOT WASM_BUILD AND NOT CREATE_BUNDLE AND NOT CMAKE_INSTALL_RPATH AND COMMAND SET_INSTALL_SELF_RPATH)
SET_INSTALL_SELF_RPATH(geometry_serializer)
endif()
set_target_properties(geometry_serializer PROPERTIES
OUTPUT_NAME "ifcopenshell.geometry.writer"
COMPILE_FLAGS "-DIFC_GEOMSERIALIZATION_EXPORTS"
@@ -18,6 +25,9 @@ install(FILES Serialization.h
DESTINATION ${INCLUDEDIR}/ifcgeom/Serialization
)
install(TARGETS geometry_serializer ${geometry_serializer_libraries})
install(
TARGETS geometry_serializer ${geometry_serializer_libraries}
EXPORT ${IFCOPENSHELL_EXPORT_TARGETS}
)
set(geometry_serializer_libraries ${geometry_serializer_libraries} PARENT_SCOPE)
@@ -28,7 +28,7 @@ PLUGIN_API std::filesystem::path add_search_paths_or_default(manager& manager, s
}
namespace {
constexpr const char* opencascade_geometry_ifc_writer_plugin_prefix = "geometry.serialization.";
constexpr const char* opencascade_geometry_ifc_writer_plugin_prefix = "geometry.writer.";
}
const char* IfcGeom::opencascade_geometry_ifc_writer_plugin_registration_symbol() {
+9
View File
@@ -22,6 +22,9 @@ foreach(kernel ${GEOMETRY_KERNELS})
set(KERNEL_TARGET "geometry_kernel_${kernel}")
add_library(${KERNEL_TARGET} SHARED ${IFCGEOM_FILES})
if((NOT WIN32) AND NOT WASM_BUILD AND NOT CREATE_BUNDLE AND NOT CMAKE_INSTALL_RPATH AND COMMAND SET_INSTALL_SELF_RPATH)
SET_INSTALL_SELF_RPATH(${KERNEL_TARGET})
endif()
if(${kernel} STREQUAL "opencascade")
ifcopenshell_wasm_plugin_link_options(${KERNEL_TARGET} ifcopenshell_register_kernel_plugin_v1 OPTIMIZATION -O0)
@@ -45,6 +48,9 @@ foreach(kernel ${GEOMETRY_KERNELS})
set(KERNEL_TARGET_SIMPLE "${KERNEL_TARGET}_simple")
add_library(${KERNEL_TARGET_SIMPLE} SHARED ${IFCGEOM_FILES})
if((NOT WIN32) AND NOT CREATE_BUNDLE AND NOT CMAKE_INSTALL_RPATH AND COMMAND SET_INSTALL_SELF_RPATH)
SET_INSTALL_SELF_RPATH(${KERNEL_TARGET_SIMPLE})
endif()
ifcopenshell_wasm_plugin_link_options(${KERNEL_TARGET_SIMPLE} ifcopenshell_register_kernel_plugin_v1)
@@ -74,6 +80,9 @@ foreach(kernel ${GEOMETRY_KERNELS})
${kernel}/tree_${tree_backend}_plugin.cpp
${kernel}/tree_backends.h
)
if((NOT WIN32) AND NOT CREATE_BUNDLE AND NOT CMAKE_INSTALL_RPATH AND COMMAND SET_INSTALL_SELF_RPATH)
SET_INSTALL_SELF_RPATH(${TREE_TARGET})
endif()
set_target_properties(${TREE_TARGET} PROPERTIES
COMPILE_FLAGS "-DIFC_GEOMLIBRARY_EXPORTS"
OUTPUT_NAME "ifcopenshell.geometry.tree.opencascade.${tree_backend}"
+1 -1
View File
@@ -37,7 +37,7 @@ foreach(schema ${SCHEMA_VERSIONS})
list(APPEND mapping_libraries geometry_mapping_ifc${schema})
install(TARGETS geometry_mapping_ifc${schema})
install(TARGETS geometry_mapping_ifc${schema} EXPORT ${IFCOPENSHELL_EXPORT_TARGETS})
endforeach()
set(mapping_libraries ${mapping_libraries} PARENT_SCOPE)