diff options
author | Sergei Golubchik <serg@mariadb.org> | 2020-06-29 16:40:55 +0200 |
---|---|---|
committer | Sergei Golubchik <serg@mariadb.org> | 2020-07-01 08:48:31 +0200 |
commit | d742f282fc9bde46db2e19863128814d1b4d1464 (patch) | |
tree | b2f72fca3374d2836bcde0cc3777ae97bd2b8c9c /storage/columnstore | |
parent | 04df0bdae7313965d85b3127d3fe48b4b01ad257 (diff) | |
download | mariadb-git-d742f282fc9bde46db2e19863128814d1b4d1464.tar.gz |
ColumnStore RPM packaging fixes
1. move columnstore-as-a-submodule RPM packaging away from the submodule
2. set REQUIRES correctly, appending to existing REQUIRES
3. same for USER_FILELIST and CONFLICTS
4. set all variables in the correct scope
5. skip columnstore correctly (not when RPM or DEB, but when
a plugin target is not created)
Diffstat (limited to 'storage/columnstore')
-rw-r--r-- | storage/columnstore/CMakeLists.txt | 25 | ||||
m--------- | storage/columnstore/columnstore | 0 |
2 files changed, 16 insertions, 9 deletions
diff --git a/storage/columnstore/CMakeLists.txt b/storage/columnstore/CMakeLists.txt index 783c17d3c24..34a4255b2c5 100644 --- a/storage/columnstore/CMakeLists.txt +++ b/storage/columnstore/CMakeLists.txt @@ -1,9 +1,16 @@ #set(PLUGIN_COLUMNSTORE "NO" CACHE STRING "Enable ColumnStore engine") -if("NO" STREQUAL "${PLUGIN_COLUMNSTORE}" OR NOT (RPM OR DEB)) +if("NO" STREQUAL "${PLUGIN_COLUMNSTORE}") return() endif() +# this does everything, gets the var from the correct scope, appends new +# values, sets in the correct scope +macro(APPEND_FOR_CPACK V) + get_directory_property(var DIRECTORY columnstore DEFINITION ${V}) + set(${V} "${var}${ARGN}" PARENT_SCOPE) +endmacro() + IF(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "amd64" OR CMAKE_SYSTEM_PROCESSOR STREQUAL "i386" OR @@ -13,15 +20,15 @@ CMAKE_SYSTEM_PROCESSOR STREQUAL "i686") IF(TARGET columnstore) # Needed to bump the component changes up to the main scope - SET(CPACK_COMPONENTS_ALL ${CPACK_COMPONENTS_ALL} PARENT_SCOPE) + APPEND_FOR_CPACK(CPACK_COMPONENTS_ALL) IF (RPM) - SET(CPACK_RPM_columnstore-engine_USER_FILELIST ${CPACK_RPM_columnstore-engine_USER_FILELIST} PARENT_SCOPE) - # To untie the python mess across distributions MCS supports. - SET(CPACK_RPM_columnstore-engine_PACKAGE_REQUIRES "${CPACK_RPM_columnstore-engine_PACKAGE_REQUIRES}, MariaDB-server >= 10.5.4, python3, binutils" PARENT_SCOPE) - SET(CPACK_RPM_columnstore-engine_PRE_INSTALL_SCRIPT_FILE ${CPACK_RPM_columnstore-engine_PRE_INSTALL_SCRIPT_FILE} PARENT_SCOPE) - SET(CPACK_RPM_columnstore-engine_POST_INSTALL_SCRIPT_FILE ${CPACK_RPM_columnstore-engine_POST_INSTALL_SCRIPT_FILE} PARENT_SCOPE) - SET(CPACK_RPM_columnstore-engine_PRE_UNINSTALL_SCRIPT_FILE ${CPACK_RPM_columnstore-engine_PRE_UNINSTALL_SCRIPT_FILE} PARENT_SCOPE) - SET(CPACK_RPM_columnstore-engine_PACKAGE_CONFLICTS "thrift, MariaDB-columnstore-engine, MariaDB-columnstore-platform, MariaDB-columnstore-libs" PARENT_SCOPE) + APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_PACKAGE_REQUIRES " binutils net-tools python3") + APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_USER_FILELIST ";%ignore /var/lib;%ignore /var") + APPEND_FOR_CPACK(CPACK_RPM_columnstore-engine_PACKAGE_CONFLICTS " thrift MariaDB-columnstore-platform MariaDB-columnstore-libs") + # these three don't have the list semantics, so no append here + SET(CPACK_RPM_columnstore-engine_PRE_INSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/columnstore/build/preInstall_storage_engine.sh PARENT_SCOPE) + SET(CPACK_RPM_columnstore-engine_POST_INSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/columnstore/build/postInstall_storage_engine.sh PARENT_SCOPE) + SET(CPACK_RPM_columnstore-engine_PRE_UNINSTALL_SCRIPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/columnstore/build/preUn_storage_engine.sh PARENT_SCOPE) ENDIF() INSTALL_MYSQL_TEST("${CMAKE_CURRENT_SOURCE_DIR}/mysql-test/" "plugin/columnstore") ENDIF() diff --git a/storage/columnstore/columnstore b/storage/columnstore/columnstore -Subproject 31df46168d2eb51e524a7f24386f557a809b78d +Subproject d9a8f5fd3cad63d736ca9c900ce3e9d76c4c094 |