cmake export - propagate HAS_SCHEMA definitions to exported IfcParse target

This commit is contained in:
Andrej730
2025-12-12 18:25:59 +05:00
parent d303acd660
commit d5210e0d75
3 changed files with 4 additions and 5 deletions
+3 -2
View File
@@ -464,12 +464,13 @@ endif()
message(STATUS "IFC SCHEMA_VERSIONS that will be used for the build: ${SCHEMA_VERSIONS}.")
set(SCHEMA_DEFINITIONS "")
foreach(schema ${SCHEMA_VERSIONS})
add_definitions(-DHAS_SCHEMA_${schema})
list(APPEND SCHEMA_DEFINITIONS "-DHAS_SCHEMA_${schema}")
endforeach()
string(REPLACE ";" ")(" schema_version_seq "(${SCHEMA_VERSIONS})")
add_definitions(-DSCHEMA_SEQ=${schema_version_seq})
list(APPEND SCHEMA_DEFINITIONS "-DSCHEMA_SEQ=${schema_version_seq}")
if(COMPILE_SCHEMA)
# @todo, this appears to be untested at the moment
-3
View File
@@ -47,7 +47,6 @@ if(STANDALONE_PROJECT OR SCHEMA_VERSIONS MATCHES "2x3")
target_link_libraries(IfcParseExamples ${Boost_LIBRARIES})
target_link_libraries(IfcParseExamples IfcOpenShell::IfcParse)
target_compile_features(IfcParseExamples PRIVATE cxx_std_17)
target_compile_definitions(IfcParseExamples PRIVATE "SCHEMA_SEQ=(2x3)" HAS_SCHEMA_2x3)
else()
target_include_directories(IfcParseExamples PRIVATE "${CMAKE_SOURCE_DIR}/../src")
target_link_libraries(IfcParseExamples IfcParse)
@@ -73,7 +72,6 @@ if(STANDALONE_PROJECT OR SCHEMA_VERSIONS MATCHES "2x3")
INTERFACE ${OpenCASCADE_LIBRARIES} RocksDB::rocksdb
IfcOpenShell::IfcParse IfcOpenShell::geometry_serializer
)
target_compile_definitions(IfcHouseInterface INTERFACE "SCHEMA_SEQ=(2x3)" HAS_SCHEMA_2x3)
else()
target_include_directories(IfcHouseInterface INTERFACE "${CMAKE_SOURCE_DIR}/../src")
target_link_libraries(IfcHouseInterface INTERFACE ${IFCOPENSHELL_LIBRARIES} ${OpenCASCADE_LIBRARIES})
@@ -93,7 +91,6 @@ if(STANDALONE_PROJECT OR SCHEMA_VERSIONS MATCHES "4x3_add2")
if(STANDALONE_PROJECT)
target_include_directories(IfcAlignmentInterface INTERFACE ${Boost_INCLUDE_DIRS})
target_compile_definitions(IfcAlignmentInterface INTERFACE HAS_SCHEMA_4x3_add2)
target_link_libraries(IfcAlignment PRIVATE IfcOpenShell::IfcParse)
target_link_libraries(IfcSimplifiedAlignment PRIVATE IfcOpenShell::IfcParse)
else()
+1
View File
@@ -31,6 +31,7 @@ endforeach()
set(IFCPARSE_FILES ${IFCPARSE_CPP_FILES} ${IFCPARSE_H_FILES})
add_library(IfcParse ${IFCPARSE_FILES})
target_compile_definitions(IfcParse PUBLIC ${SCHEMA_DEFINITIONS})
target_include_directories(IfcParse PUBLIC $<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
set_target_properties(IfcParse
PROPERTIES