Skip to content

Commit c53f6bb

Browse files
authored
Merge pull request #1 from roboticslibrary/patch
Add namespace for target, CPack configuration, minor fixes
2 parents ec3e218 + 7754bb8 commit c53f6bb

3 files changed

Lines changed: 66 additions & 10 deletions

File tree

CMakeLists.txt

Lines changed: 52 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,12 @@ if(NOT DYNAMIC_SOLID)
3030
add_definitions(-DSOLID_STATIC)
3131
endif(NOT DYNAMIC_SOLID)
3232

33+
option(USE_DOUBLES "Use double-precision floating-point numbers." OFF)
34+
35+
if(USE_DOUBLES)
36+
add_definitions(-DUSE_DOUBLES)
37+
endif(USE_DOUBLES)
38+
3339
include_directories(
3440
${PROJECT_SOURCE_DIR}/include
3541
)
@@ -71,8 +77,8 @@ if(MSVC)
7177
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /GR- /W3 /Oi /fp:fast /D_SCL_SECURE_NO_WARNINGS /D_CRT_SECURE_NO_WARNINGS")
7278
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /GS-")
7379
set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /GS-")
74-
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "/INCREMENTAL:NO")
75-
set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "/INCREMENTAL:NO")
80+
set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO} /INCREMENTAL:NO")
81+
set(CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO} /INCREMENTAL:NO")
7682
if(CMAKE_CL_64)
7783
else(CMAKE_CL_64)
7884
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} /arch:SSE2")
@@ -100,7 +106,48 @@ configure_package_config_file(
100106
${CMAKE_CURRENT_SOURCE_DIR}/solid3-config.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/solid3-config.cmake
101107
INSTALL_DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/solid3
102108
)
103-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/solid3-config.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/solid3)
109+
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/solid3-config.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/solid3 COMPONENT development)
104110
write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/solid3-config-version.cmake VERSION ${VERSION} COMPATIBILITY ExactVersion)
105-
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/solid3-config-version.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/solid3)
106-
install(EXPORT solid3 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/solid3 FILE solid3-export.cmake)
111+
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/solid3-config-version.cmake DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/solid3 COMPONENT development)
112+
install(EXPORT solid3 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/solid3 NAMESPACE solid3:: FILE solid3-export.cmake COMPONENT development)
113+
114+
set(CPACK_COMPONENT_DEVELOPMENT_DEPENDS runtime)
115+
set(CPACK_DEB_COMPONENT_INSTALL ON)
116+
set(CPACK_DEBIAN_DEVELOPMENT_FILE_NAME "DEB-DEFAULT")
117+
set(CPACK_DEBIAN_DEVELOPMENT_PACKAGE_DEPENDS "libsolid3d")
118+
set(CPACK_DEBIAN_DEVELOPMENT_PACKAGE_NAME "libsolid3d-dev")
119+
set(CPACK_DEBIAN_DEVELOPMENT_PACKAGE_SECTION "libdevel")
120+
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "http://www.dtecta.com/")
121+
set(CPACK_DEBIAN_PACKAGE_NAME "libsolid3d")
122+
set(CPACK_DEBIAN_PACKAGE_SECTION "devel")
123+
set(CPACK_DEBIAN_RUNTIME_FILE_NAME "DEB-DEFAULT")
124+
set(CPACK_DEBIAN_RUNTIME_PACKAGE_NAME "libsolid3d")
125+
set(CPACK_DEBIAN_RUNTIME_PACKAGE_SECTION "libs")
126+
set(CPACK_NSIS_PACKAGE_NAME "SOLID ${VERSION}")
127+
set(CPACK_NSIS_URL_INFO_ABOUT ${CPACK_DEBIAN_PACKAGE_HOMEPAGE})
128+
set(CPACK_PACKAGE_CONTACT "bugs@dtecta.com")
129+
set(CPACK_PACKAGE_DISPLAY_NAME "SOLID ${VERSION}")
130+
set(CPACK_PACKAGE_INSTALL_DIRECTORY "SOLID-${VERSION}")
131+
set(CPACK_PACKAGE_NAME "SOLID")
132+
set(CPACK_PACKAGE_VERSION ${VERSION})
133+
set(CPACK_PACKAGE_VERSION_MAJOR ${VERSION_MAJOR})
134+
set(CPACK_PACKAGE_VERSION_MINOR ${VERSION_MINOR})
135+
set(CPACK_PACKAGE_VERSION_PATCH ${VERSION_PATCH})
136+
set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE_GPL.txt)
137+
set(CPACK_RPM_COMPONENT_INSTALL ON)
138+
set(CPACK_RPM_DEVELOPMENT_FILE_NAME "RPM-DEFAULT")
139+
set(CPACK_RPM_development_PACKAGE_NAME "SOLID-devel")
140+
set(CPACK_RPM_development_PACKAGE_REQUIRES "SOLID")
141+
set(CPACK_RPM_PACKAGE_GROUP "Development/Libraries")
142+
set(CPACK_RPM_PACKAGE_LICENSE "GPL/QPL")
143+
set(CPACK_RPM_PACKAGE_NAME "SOLID")
144+
set(CPACK_RPM_PACKAGE_URL ${CPACK_DEBIAN_PACKAGE_HOMEPAGE})
145+
set(CPACK_RPM_RUNTIME_FILE_NAME "RPM-DEFAULT")
146+
set(CPACK_RPM_runtime_PACKAGE_NAME "SOLID")
147+
148+
if(WIN32 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
149+
set(CPACK_NSIS_INSTALL_ROOT "$PROGRAMFILES64")
150+
endif()
151+
152+
include(CPack)
153+

solid3-config.cmake.in

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ include("${CMAKE_CURRENT_LIST_DIR}/solid3-export.cmake")
1010
set(SOLID3_DEFINITIONS "")
1111
set(SOLID3_INCLUDE_DIRS "${PACKAGE_PREFIX_DIR}/include")
1212
set(SOLID3_LIBRARY_DIRS "${PACKAGE_PREFIX_DIR}/lib")
13-
set(SOLID3_LIBRARIES "solid3")
13+
set(SOLID3_LIBRARIES "solid3::solid3")

src/CMakeLists.txt

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -83,20 +83,29 @@ add_library(solid3 ${LIBRARY_TYPE}
8383
$<TARGET_OBJECTS:qhull>
8484
)
8585

86+
target_include_directories(solid3 INTERFACE $<INSTALL_INTERFACE:$<INSTALL_PREFIX>/${CMAKE_INSTALL_INCLUDEDIR}>)
8687
set_target_properties(solid3 PROPERTIES VERSION ${VERSION})
8788

8889
install(
8990
TARGETS solid3
9091
EXPORT solid3
91-
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
92-
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
93-
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
92+
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT development
93+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT runtime NAMELINK_SKIP
94+
RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT runtime
9495
)
96+
if(DYNAMIC_SOLID)
97+
install(
98+
TARGETS solid3
99+
EXPORT solid3
100+
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT development NAMELINK_ONLY
101+
)
102+
endif()
95103
install(
96104
FILES ${SOLID_PUBLIC_HEADERS}
97105
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/SOLID
106+
COMPONENT development
98107
)
99108

100109
if(MSVC AND DYNAMIC_SOLID AND ${CMAKE_MAJOR_VERSION} GREATER 2 AND ${CMAKE_MINOR_VERSION} GREATER 0)
101-
install(FILES $<TARGET_PDB_FILE:solid3> DESTINATION ${CMAKE_INSTALL_BINDIR} CONFIGURATIONS Debug)
110+
install(FILES $<TARGET_PDB_FILE:solid3> DESTINATION ${CMAKE_INSTALL_BINDIR} CONFIGURATIONS Debug RelWithDebInfo COMPONENT debug)
102111
endif()

0 commit comments

Comments
 (0)