Skip to content

Commit b89e588

Browse files
SwooshyCuebtrel
authored andcommitted
[irods/irods#5827] CMake consistency sweep
1 parent 445ea37 commit b89e588

1 file changed

Lines changed: 20 additions & 21 deletions

File tree

CMakeLists.txt

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,30 @@ find_package(IRODS 4.2.10 EXACT REQUIRED)
44
set(IRODS_PLUGIN_REVISION "0")
55
set(IRODS_PLUGIN_VERSION "${IRODS_VERSION}.${IRODS_PLUGIN_REVISION}")
66

7-
set(CMAKE_C_COMPILER ${IRODS_EXTERNALS_FULLPATH_CLANG}/bin/clang)
87
set(CMAKE_CXX_COMPILER ${IRODS_EXTERNALS_FULLPATH_CLANG}/bin/clang++)
9-
set(CMAKE_EXE_LINKER_FLAGS_INIT "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++")
8+
set(CMAKE_CXX_STANDARD ${IRODS_CXX_STANDARD})
9+
set(CMAKE_MODULE_LINKER_FLAGS_INIT "-Wl,--enable-new-dtags -Wl,--as-needed -Wl,-z,defs")
10+
set(CMAKE_SHARED_LINKER_FLAGS_INIT "-Wl,--enable-new-dtags -Wl,--as-needed -Wl,-z,defs")
11+
set(CMAKE_MODULE_LINKER_FLAGS_RELEASE_INIT "-Wl,--gc-sections -Wl,-z,combreloc")
12+
set(CMAKE_SHARED_LINKER_FLAGS_RELEASE_INIT "-Wl,--gc-sections -Wl,-z,combreloc")
1013

1114
project(irods_rule_engine_plugin-python
1215
VERSION "${IRODS_PLUGIN_VERSION}"
1316
LANGUAGES CXX)
1417

18+
set(CMAKE_SKIP_BUILD_RPATH OFF)
19+
set(CMAKE_SKIP_INSTALL_RPATH OFF)
20+
set(CMAKE_SKIP_RPATH OFF)
21+
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH ON)
22+
set(CMAKE_BUILD_WITH_INSTALL_RPATH OFF)
23+
set(CMAKE_BUILD_RPATH_USE_ORIGIN ON)
24+
1525
include(${IRODS_TARGETS_PATH})
1626

1727
include(GNUInstallDirs)
28+
include(UseLibCXX)
1829

1930
set(CMAKE_EXPORT_COMPILE_COMMANDS TRUE)
20-
set(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
2131

2232
if (NOT CMAKE_CONFIGURATION_TYPES AND NOT CMAKE_BUILD_TYPE)
2333
set(CMAKE_BUILD_TYPE Release CACHE STRING "Choose the type of build {Debug, Release}." FORCE)
@@ -32,14 +42,7 @@ endif()
3242
find_package(PythonInterp ${IRODS_PYTHON_VERSION} REQUIRED)
3343
find_package(PythonLibs ${IRODS_PYTHON_VERSION} REQUIRED)
3444

35-
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++")
36-
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -stdlib=libc++")
37-
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -stdlib=libc++")
38-
set(CMAKE_MODULE_LINKER_FLAGS "${CMAKE_MODULE_LINKER_FLAGS} -Wl,-z,defs")
39-
add_compile_options(-nostdinc++)
40-
link_libraries(c++abi)
41-
include_directories(${IRODS_EXTERNALS_FULLPATH_CLANG}/include/c++/v1
42-
${IRODS_EXTERNALS_FULLPATH_JSON}/include)
45+
include_directories(${IRODS_EXTERNALS_FULLPATH_JSON}/include)
4346

4447
set(
4548
IRODS_RULE_ENGINE_PLUGIN-PYTHON_COMPILE_DEFINITIONS
@@ -89,7 +92,6 @@ set(
8992

9093
target_compile_definitions(${PLUGIN} PRIVATE ${IRODS_RULE_ENGINE_PYTHON_PLUGIN_COMPILE_DEFINITIONS} ${IRODS_COMPILE_DEFINITIONS})
9194
#target_compile_options(${PLUGIN} PRIVATE -Wno-write-strings)
92-
set_property(TARGET ${PLUGIN} PROPERTY CXX_STANDARD ${IRODS_CXX_STANDARD})
9395

9496
install(
9597
TARGETS
@@ -117,15 +119,12 @@ install(
117119
)
118120

119121

120-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}var")
121-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}var/lib")
122-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}var/lib/irods")
123-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}var/lib/irods/scripts")
124-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}var/lib/irods/scripts/irods")
125-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}var/lib/irods/scripts/irods/test")
126-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}var/lib/irods/scripts/irods/test/python_rules")
127-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}etc")
128-
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}etc/irods")
122+
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}${IRODS_HOME_DIRECTORY}")
123+
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}${IRODS_HOME_DIRECTORY}/scripts")
124+
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}${IRODS_HOME_DIRECTORY}/scripts/irods")
125+
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}${IRODS_HOME_DIRECTORY}/scripts/irods/test")
126+
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}${IRODS_HOME_DIRECTORY}/scripts/irods/test/python_rules")
127+
list(APPEND CPACK_RPM_EXCLUDE_FROM_AUTO_FILELIST_ADDITION "${CPACK_PACKAGING_INSTALL_PREFIX}${CMAKE_INSTALL_SYSCONFDIR}/irods")
129128

130129
set(CPACK_PACKAGE_FILE_NAME "irods-rule-engine-plugin-python-${IRODS_PLUGIN_VERSION}-${IRODS_LINUX_DISTRIBUTION_NAME}${IRODS_LINUX_DISTRIBUTION_VERSION_MAJOR}-${CMAKE_SYSTEM_PROCESSOR}")
131130

0 commit comments

Comments
 (0)