@@ -4,20 +4,30 @@ find_package(IRODS 4.2.10 EXACT REQUIRED)
44set (IRODS_PLUGIN_REVISION "0" )
55set (IRODS_PLUGIN_VERSION "${IRODS_VERSION} .${IRODS_PLUGIN_REVISION} " )
66
7- set (CMAKE_C_COMPILER ${IRODS_EXTERNALS_FULLPATH_CLANG} /bin/clang)
87set (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
1114project (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+
1525include (${IRODS_TARGETS_PATH} )
1626
1727include (GNUInstallDirs )
28+ include (UseLibCXX )
1829
1930set (CMAKE_EXPORT_COMPILE_COMMANDS TRUE )
20- set (CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE )
2131
2232if (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()
3242find_package (PythonInterp ${IRODS_PYTHON_VERSION} REQUIRED )
3343find_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
4447set (
4548 IRODS_RULE_ENGINE_PLUGIN-PYTHON_COMPILE_DEFINITIONS
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
9496install (
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
130129set (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