File tree Expand file tree Collapse file tree 7 files changed +40
-43
lines changed
Expand file tree Collapse file tree 7 files changed +40
-43
lines changed Original file line number Diff line number Diff line change @@ -170,14 +170,6 @@ endif()
170170
171171include (GNUInstallDirs )
172172
173- if (NOT INCLUDEDIR)
174- set (INCLUDEDIR include)
175- endif ()
176- if (NOT IS_ABSOLUTE ${INCLUDEDIR} )
177- set (INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR} )
178- endif ()
179- message (STATUS "INCLUDEDIR: ${INCLUDEDIR} " )
180-
181173set (IFCOPENSHELL_EXPORT_TARGETS "${PROJECT_NAME} Targets" )
182174
183175# On Windows Release and Debug binaries are not compatible.
Original file line number Diff line number Diff line change @@ -14,7 +14,13 @@ file(GLOB SCHEMA_AGNOSTIC_CPP_FILES *.cpp)
1414set (SCHEMA_AGNOSTIC_FILES ${SCHEMA_AGNOSTIC_H_FILES} ${SCHEMA_AGNOSTIC_CPP_FILES} )
1515
1616add_library (IfcGeom ${SCHEMA_AGNOSTIC_FILES} )
17- set_target_properties (IfcGeom PROPERTIES COMPILE_FLAGS -DIFC_GEOM_EXPORTS VERSION "${PROJECT_VERSION} " SOVERSION "${PROJECT_VERSION_MAJOR} .${PROJECT_VERSION_MINOR} " )
17+ set_target_properties (IfcGeom
18+ PROPERTIES
19+ COMPILE_FLAGS -DIFC_GEOM_EXPORTS
20+ VERSION "${PROJECT_VERSION} "
21+ SOVERSION "${PROJECT_VERSION_MAJOR} .${PROJECT_VERSION_MINOR} "
22+ PUBLIC_HEADER "${SCHEMA_AGNOSTIC_H_FILES} "
23+ )
1824
1925if (UNIX )
2026 find_package (Threads )
@@ -33,7 +39,5 @@ endif()
3339
3440install (TARGETS IfcGeom
3541 EXPORT ${IFCOPENSHELL_EXPORT_TARGETS}
36- )
37- install (FILES ${SCHEMA_AGNOSTIC_H_FILES}
38- DESTINATION ${INCLUDEDIR} /ifcgeom
42+ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /ifcgeom"
3943)
Original file line number Diff line number Diff line change 11add_subdirectory (schema )
22
33add_library (geometry_serializer STATIC Serialization.cpp )
4- set_target_properties (geometry_serializer PROPERTIES COMPILE_FLAGS "-DIFC_GEOMSERIALIZATION_EXPORTS" )
4+ file (GLOB IFCGEOM_SERIALIZATION_H_FILE *.h )
5+
6+ set_target_properties (geometry_serializer PROPERTIES
7+ COMPILE_FLAGS "-DIFC_GEOMSERIALIZATION_EXPORTS"
8+ PUBLIC_HEADER "${IFCGEOM_SERIALIZATION_H_FILE} "
9+ )
510target_link_libraries (geometry_serializer ${geometry_serializer_libraries} IfcParse )
611set (IFCOPENSHELL_LIBRARIES ${IFCOPENSHELL_LIBRARIES} "geometry_serializer" ${geometry_serializer_libraries} )
712set (IFCOPENSHELL_LIBRARIES ${IFCOPENSHELL_LIBRARIES} PARENT_SCOPE )
813
9- file (GLOB IFCGEOM_SERIALIZATION_H_FILE *.h )
10- install (FILES ${IFCGEOM_SERIALIZATION_H_FILE}
11- DESTINATION ${INCLUDEDIR} /ifcgeom/Serialization
12- )
13-
1414install (TARGETS geometry_serializer ${geometry_serializer_libraries}
1515 EXPORT ${IFCOPENSHELL_EXPORT_TARGETS}
16+ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /ifcgeom/Serialization"
1617)
1718
1819set (geometry_serializer_libraries ${geometry_serializer_libraries} PARENT_SCOPE )
Original file line number Diff line number Diff line change @@ -9,11 +9,15 @@ foreach(kernel ${GEOMETRY_KERNELS})
99 set (KERNEL_TARGET "geometry_kernel_${kernel} " )
1010
1111 add_library (${KERNEL_TARGET} OBJECT ${IFCGEOM_FILES} )
12- set_property (TARGET ${KERNEL_TARGET} APPEND PROPERTY COMPILE_FLAGS "-DIFC_GEOM_EXPORTS" )
12+ set_target_properties (${KERNEL_TARGET} PROPERTIES
13+ COMPILE_FLAGS "-DIFC_GEOM_EXPORTS"
14+ PUBLIC_HEADER "${IFCGEOM_H_FILES} "
15+ )
1316 list (APPEND kernel_libraries ${KERNEL_TARGET} )
1417 target_link_libraries (${KERNEL_TARGET} ${${KERNEL_UPPER}_LIBRARIES} Eigen3::Eigen )
1518 install (TARGETS ${KERNEL_TARGET}
1619 EXPORT ${IFCOPENSHELL_EXPORT_TARGETS}
20+ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /ifcgeom/kernels/${kernel} "
1721 )
1822
1923 if (${kernel} STREQUAL "cgal" )
@@ -33,10 +37,6 @@ foreach(kernel ${GEOMETRY_KERNELS})
3337 elseif (${kernel} STREQUAL "opencascade" )
3438 target_link_libraries (${KERNEL_TARGET} ${OpenCASCADE_LIBRARIES} )
3539 endif ()
36-
37- install (FILES ${IFCGEOM_H_FILES}
38- DESTINATION ${INCLUDEDIR} /ifcgeom/kernels/${kernel}
39- )
4040endforeach ()
4141
4242set (kernel_libraries ${kernel_libraries} PARENT_SCOPE )
Original file line number Diff line number Diff line change @@ -31,7 +31,13 @@ endforeach()
3131set (IFCPARSE_FILES ${IFCPARSE_CPP_FILES} ${IFCPARSE_H_FILES} )
3232
3333add_library (IfcParse ${IFCPARSE_FILES} )
34- set_target_properties (IfcParse PROPERTIES COMPILE_FLAGS -DIFC_PARSE_EXPORTS VERSION "${PROJECT_VERSION} " SOVERSION "${PROJECT_VERSION_MAJOR} .${PROJECT_VERSION_MINOR} " )
34+ set_target_properties (IfcParse
35+ PROPERTIES
36+ COMPILE_FLAGS -DIFC_PARSE_EXPORTS
37+ VERSION "${PROJECT_VERSION} "
38+ SOVERSION "${PROJECT_VERSION_MAJOR} .${PROJECT_VERSION_MINOR} "
39+ PUBLIC_HEADER "${IFCPARSE_H_FILES} "
40+ )
3541
3642if (IFCXML_SUPPORT)
3743 find_package (LibXml2 REQUIRED )
@@ -47,11 +53,8 @@ else()
4753 target_link_libraries (IfcParse ${Boost_LIBRARIES} ${BCRYPT_LIBRARIES} )
4854endif ()
4955
50- # CMake installation targets
51- install (FILES ${IFCPARSE_H_FILES}
52- DESTINATION ${INCLUDEDIR} /ifcparse
53- )
5456
5557install (TARGETS IfcParse
5658 EXPORT ${IFCOPENSHELL_EXPORT_TARGETS}
59+ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /ifcparse"
5760)
Original file line number Diff line number Diff line change @@ -5,7 +5,11 @@ file(GLOB SERIALIZERS_CPP_FILES *.cpp)
55set (SERIALIZERS_FILES ${SERIALIZERS_H_FILES} ${SERIALIZERS_CPP_FILES} )
66
77add_library (Serializers ${SERIALIZERS_FILES} )
8- set_target_properties (Serializers PROPERTIES COMPILE_FLAGS "-DSERIALIZERS_EXPORTS" VERSION "${PROJECT_VERSION} " SOVERSION "${PROJECT_VERSION_MAJOR} .${PROJECT_VERSION_MINOR} " )
8+ set_target_properties (Serializers PROPERTIES
9+ COMPILE_FLAGS "-DSERIALIZERS_EXPORTS"
10+ VERSION "${PROJECT_VERSION} "
11+ SOVERSION "${PROJECT_VERSION_MAJOR} .${PROJECT_VERSION_MINOR} "
12+ )
913set (SERIALIZER_SCHEMA_LIBRARIES Serializers ${SERIALIZER_SCHEMA_LIBRARIES} PARENT_SCOPE )
1014
1115if (WITH_PROJ)
@@ -25,10 +29,10 @@ target_link_libraries(Serializers
2529
2630install (TARGETS Serializers)
2731
32+ # Can't use `PUBLIC_HEADER` since we need two folders.
2833install (FILES ${SERIALIZERS_H_FILES}
29- DESTINATION ${INCLUDEDIR } /serializers/
34+ DESTINATION " ${CMAKE_INSTALL_INCLUDEDIR } /serializers/"
3035)
31-
3236install (FILES ${SERIALIZERS_S_H_FILES}
33- DESTINATION ${INCLUDEDIR } /serializers/schema_dependent
37+ DESTINATION " ${CMAKE_INSTALL_INCLUDEDIR } /serializers/schema_dependent"
3438)
Original file line number Diff line number Diff line change @@ -10,16 +10,6 @@ if(POLICY CMP0167) # 3.30 find_package(Boost) to use BoostConfig instead of Find
1010 cmake_policy (SET CMP0167 OLD )
1111endif ()
1212
13- include (GNUInstallDirs )
14-
15-
16- if (NOT INCLUDEDIR)
17- set (INCLUDEDIR include)
18- endif ()
19- if (NOT IS_ABSOLUTE ${INCLUDEDIR} )
20- set (INCLUDEDIR ${CMAKE_INSTALL_INCLUDEDIR} )
21- endif ()
22- message (STATUS "INCLUDEDIR: ${INCLUDEDIR} " )
2313
2414if (WIN32 AND NOT DEFINED ENV{CONDA_BUILD})
2515 set (Boost_USE_STATIC_LIBS ON )
@@ -57,6 +47,9 @@ file(GLOB LIB_CPP_FILES src/svgfill.cpp src/arrange_polygons.cpp)
5747set (LIB_SRC_FILES ${LIB_H_FILES} ${LIB_CPP_FILES} )
5848add_library (svgfill ${LIB_SRC_FILES} )
5949target_link_libraries (svgfill ${Boost_LIBRARIES} ${BCRYPT_LIBRARIES} LibXml2::LibXml2 CGAL::CGAL_INTERFACE )
50+ set_target_properties (svgfill PROPERTIES
51+ PUBLIC_HEADER "${LIB_H_FILES} "
52+ )
6053
6154add_executable (svgfill_exe src/main.cpp )
6255target_link_libraries (svgfill_exe svgfill )
@@ -74,5 +67,5 @@ endif()
7467
7568install (TARGETS svgfill_exe svgfill
7669 EXPORT ${IFCOPENSHELL_EXPORT_TARGETS}
70+ PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR} /svgfill"
7771)
78- install (FILES ${LIB_H_FILES} DESTINATION ${INCLUDEDIR} )
You can’t perform that action at this time.
0 commit comments