SHA256
1
0
forked from pool/mariadb
mariadb/mariadb-10.2.4-fortify-and-O.patch

83 lines
4.4 KiB
Diff
Raw Normal View History

Accepting request 563119 from home:kstreitova:branches:server:database - update to 10.2.12 GA * release notes and changelog: https://mariadb.com/kb/en/library/mariadb-10212-release-notes/ https://mariadb.com/kb/en/library/mariadb-10212-changelog/ - remove mysql-community-server-5.5.6-safe-process-in-bin.patch becuase this moving is done in the specfile - get rid of the archive with patches (remove mysql-patches.tar.xz and series files), handle patches in the standard way - add comments to the section with removing unused files (based on https://lists.launchpad.net/maria-developers/msg11028.html) - put rm statements together - install the new upstream systemd-tmpfiles configuration file 'tmpfiles.conf' and rename it to 'mariadb.conf' in order to follow the manual - remove the new upstream systemd-sysusers configuration file as we handle creating of mysql user in the specfile - mysql.service: remove calling of the wait function and let systemd to do this job. Switch from 'Type=simple' to 'Type=notify' and add TimeoutSec=300 - rename unit files from mysql to mariadb and add mysql alias for the backward compatibility [bsc#1067443] * mysql.service -> mariadb.service * mysql.target -> mariadb.target * mysql@.service -> mariadb@.service - remove configuration-tweaks.tar.xz and move configuration to my.ini/my.cnf file (omit default_plugins.cnf as all configuration here was commented out) - add a numeric prefix for galera.cnf file in order to allow users to speficy in which order the configs will be loaded within the my.cnf.d directory [bsc#1055268] OBS-URL: https://build.opensuse.org/request/show/563119 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=203
2018-01-09 19:28:29 +01:00
PATCH-P0-FIX-HACK: Not enforcing specific flags
Useing some CFLAGS from distribution and some enforced can and leads to the
conflicts like FORTIFY and -O0. Removing hardcoded options.
Maintainer: Michal Hrusecky <mhrusecky@suse.cz>
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt.orig
+++ CMakeLists.txt
@@ -242,7 +242,6 @@ IF(SECURITY_HARDENED AND NOT WITH_ASAN A
MY_CHECK_AND_SET_COMPILER_FLAG("-pie -fPIC")
MY_CHECK_AND_SET_LINKER_FLAG("-Wl,-z,relro,-z,now")
MY_CHECK_AND_SET_COMPILER_FLAG("-fstack-protector --param=ssp-buffer-size=4")
- MY_CHECK_AND_SET_COMPILER_FLAG("-D_FORTIFY_SOURCE=2" RELEASE RELWITHDEBINFO)
Accepting request 563119 from home:kstreitova:branches:server:database - update to 10.2.12 GA * release notes and changelog: https://mariadb.com/kb/en/library/mariadb-10212-release-notes/ https://mariadb.com/kb/en/library/mariadb-10212-changelog/ - remove mysql-community-server-5.5.6-safe-process-in-bin.patch becuase this moving is done in the specfile - get rid of the archive with patches (remove mysql-patches.tar.xz and series files), handle patches in the standard way - add comments to the section with removing unused files (based on https://lists.launchpad.net/maria-developers/msg11028.html) - put rm statements together - install the new upstream systemd-tmpfiles configuration file 'tmpfiles.conf' and rename it to 'mariadb.conf' in order to follow the manual - remove the new upstream systemd-sysusers configuration file as we handle creating of mysql user in the specfile - mysql.service: remove calling of the wait function and let systemd to do this job. Switch from 'Type=simple' to 'Type=notify' and add TimeoutSec=300 - rename unit files from mysql to mariadb and add mysql alias for the backward compatibility [bsc#1067443] * mysql.service -> mariadb.service * mysql.target -> mariadb.target * mysql@.service -> mariadb@.service - remove configuration-tweaks.tar.xz and move configuration to my.ini/my.cnf file (omit default_plugins.cnf as all configuration here was commented out) - add a numeric prefix for galera.cnf file in order to allow users to speficy in which order the configs will be loaded within the my.cnf.d directory [bsc#1055268] OBS-URL: https://build.opensuse.org/request/show/563119 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=203
2018-01-09 19:28:29 +01:00
ENDIF()
INCLUDE(wsrep)
Accepting request 563119 from home:kstreitova:branches:server:database - update to 10.2.12 GA * release notes and changelog: https://mariadb.com/kb/en/library/mariadb-10212-release-notes/ https://mariadb.com/kb/en/library/mariadb-10212-changelog/ - remove mysql-community-server-5.5.6-safe-process-in-bin.patch becuase this moving is done in the specfile - get rid of the archive with patches (remove mysql-patches.tar.xz and series files), handle patches in the standard way - add comments to the section with removing unused files (based on https://lists.launchpad.net/maria-developers/msg11028.html) - put rm statements together - install the new upstream systemd-tmpfiles configuration file 'tmpfiles.conf' and rename it to 'mariadb.conf' in order to follow the manual - remove the new upstream systemd-sysusers configuration file as we handle creating of mysql user in the specfile - mysql.service: remove calling of the wait function and let systemd to do this job. Switch from 'Type=simple' to 'Type=notify' and add TimeoutSec=300 - rename unit files from mysql to mariadb and add mysql alias for the backward compatibility [bsc#1067443] * mysql.service -> mariadb.service * mysql.target -> mariadb.target * mysql@.service -> mariadb@.service - remove configuration-tweaks.tar.xz and move configuration to my.ini/my.cnf file (omit default_plugins.cnf as all configuration here was commented out) - add a numeric prefix for galera.cnf file in order to allow users to speficy in which order the configs will be loaded within the my.cnf.d directory [bsc#1055268] OBS-URL: https://build.opensuse.org/request/show/563119 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=203
2018-01-09 19:28:29 +01:00
Index: storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake
===================================================================
--- storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake.orig
+++ storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake
@@ -26,11 +26,9 @@ endif ()
if (CMAKE_VERSION VERSION_LESS 3.0)
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_DEBUG TOKU_PTHREAD_DEBUG=1 TOKU_DEBUG_TXN_SYNC=1)
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_DRD TOKU_PTHREAD_DEBUG=1 TOKU_DEBUG_TXN_SYNC=1)
- set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_DRD _FORTIFY_SOURCE=2)
else ()
set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS
$<$<OR:$<CONFIG:DEBUG>,$<CONFIG:DRD>>:TOKU_PTHREAD_DEBUG=1 TOKU_DEBUG_TXN_SYNC=1>
- $<$<CONFIG:DRD>:_FORTIFY_SOURCE=2>
)
endif ()
@@ -93,23 +91,23 @@ endif ()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexceptions")
Accepting request 563119 from home:kstreitova:branches:server:database - update to 10.2.12 GA * release notes and changelog: https://mariadb.com/kb/en/library/mariadb-10212-release-notes/ https://mariadb.com/kb/en/library/mariadb-10212-changelog/ - remove mysql-community-server-5.5.6-safe-process-in-bin.patch becuase this moving is done in the specfile - get rid of the archive with patches (remove mysql-patches.tar.xz and series files), handle patches in the standard way - add comments to the section with removing unused files (based on https://lists.launchpad.net/maria-developers/msg11028.html) - put rm statements together - install the new upstream systemd-tmpfiles configuration file 'tmpfiles.conf' and rename it to 'mariadb.conf' in order to follow the manual - remove the new upstream systemd-sysusers configuration file as we handle creating of mysql user in the specfile - mysql.service: remove calling of the wait function and let systemd to do this job. Switch from 'Type=simple' to 'Type=notify' and add TimeoutSec=300 - rename unit files from mysql to mariadb and add mysql alias for the backward compatibility [bsc#1067443] * mysql.service -> mariadb.service * mysql.target -> mariadb.target * mysql@.service -> mariadb@.service - remove configuration-tweaks.tar.xz and move configuration to my.ini/my.cnf file (omit default_plugins.cnf as all configuration here was commented out) - add a numeric prefix for galera.cnf file in order to allow users to speficy in which order the configs will be loaded within the my.cnf.d directory [bsc#1055268] OBS-URL: https://build.opensuse.org/request/show/563119 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=203
2018-01-09 19:28:29 +01:00
## set extra debugging flags and preprocessor definitions
-set(CMAKE_C_FLAGS_DEBUG "-g3 -O0 ${CMAKE_C_FLAGS_DEBUG}")
-set(CMAKE_CXX_FLAGS_DEBUG "-g3 -O0 ${CMAKE_CXX_FLAGS_DEBUG}")
+set(CMAKE_C_FLAGS_DEBUG "-g3 ${CMAKE_C_FLAGS_DEBUG}")
+set(CMAKE_CXX_FLAGS_DEBUG "-g3 ${CMAKE_CXX_FLAGS_DEBUG}")
## flags to use when we want to run DRD on the resulting binaries
## DRD needs debugging symbols.
## -O0 makes it too slow, and -O2 inlines too much for our suppressions to work. -O1 is just right.
-set(CMAKE_C_FLAGS_DRD "-g3 -O1 ${CMAKE_C_FLAGS_DRD}")
-set(CMAKE_CXX_FLAGS_DRD "-g3 -O1 ${CMAKE_CXX_FLAGS_DRD}")
+set(CMAKE_C_FLAGS_DRD "-g3 ${CMAKE_C_FLAGS_DRD}")
+set(CMAKE_CXX_FLAGS_DRD "-g3 ${CMAKE_CXX_FLAGS_DRD}")
## set extra release flags
## need to set flags for RelWithDebInfo as well because we want the MySQL/MariaDB builds to use them
if (CMAKE_CXX_COMPILER_ID STREQUAL Clang)
# have tried -flto and -O4, both make our statically linked executables break apple's linker
- set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -g -O3 -UNDEBUG")
- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -g -O3 -UNDEBUG")
- set(CMAKE_C_FLAGS_RELEASE "-g -O3 ${CMAKE_C_FLAGS_RELEASE} -UNDEBUG")
- set(CMAKE_CXX_FLAGS_RELEASE "-g -O3 ${CMAKE_CXX_FLAGS_RELEASE} -UNDEBUG")
+ set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -g -UNDEBUG")
+ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -g -UNDEBUG")
+ set(CMAKE_C_FLAGS_RELEASE "-g ${CMAKE_C_FLAGS_RELEASE} -UNDEBUG")
+ set(CMAKE_CXX_FLAGS_RELEASE "-g ${CMAKE_CXX_FLAGS_RELEASE} -UNDEBUG")
else ()
if (APPLE)
set(FLTO_OPTS "-fwhole-program")
@@ -117,10 +115,10 @@ else ()
Accepting request 563119 from home:kstreitova:branches:server:database - update to 10.2.12 GA * release notes and changelog: https://mariadb.com/kb/en/library/mariadb-10212-release-notes/ https://mariadb.com/kb/en/library/mariadb-10212-changelog/ - remove mysql-community-server-5.5.6-safe-process-in-bin.patch becuase this moving is done in the specfile - get rid of the archive with patches (remove mysql-patches.tar.xz and series files), handle patches in the standard way - add comments to the section with removing unused files (based on https://lists.launchpad.net/maria-developers/msg11028.html) - put rm statements together - install the new upstream systemd-tmpfiles configuration file 'tmpfiles.conf' and rename it to 'mariadb.conf' in order to follow the manual - remove the new upstream systemd-sysusers configuration file as we handle creating of mysql user in the specfile - mysql.service: remove calling of the wait function and let systemd to do this job. Switch from 'Type=simple' to 'Type=notify' and add TimeoutSec=300 - rename unit files from mysql to mariadb and add mysql alias for the backward compatibility [bsc#1067443] * mysql.service -> mariadb.service * mysql.target -> mariadb.target * mysql@.service -> mariadb@.service - remove configuration-tweaks.tar.xz and move configuration to my.ini/my.cnf file (omit default_plugins.cnf as all configuration here was commented out) - add a numeric prefix for galera.cnf file in order to allow users to speficy in which order the configs will be loaded within the my.cnf.d directory [bsc#1055268] OBS-URL: https://build.opensuse.org/request/show/563119 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=203
2018-01-09 19:28:29 +01:00
set(FLTO_OPTS "-fuse-linker-plugin")
endif()
# we overwrite this because the default passes -DNDEBUG and we don't want that
- set(CMAKE_C_FLAGS_RELWITHDEBINFO "-flto ${FLTO_OPTS} ${CMAKE_C_FLAGS_RELWITHDEBINFO} -g -O3 -UNDEBUG")
- set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-flto ${FLTO_OPTS} ${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -g -O3 -UNDEBUG")
- set(CMAKE_C_FLAGS_RELEASE "-g -O3 -flto ${FLTO_OPTS} ${CMAKE_C_FLAGS_RELEASE} -UNDEBUG")
- set(CMAKE_CXX_FLAGS_RELEASE "-g -O3 -flto ${FLTO_OPTS} ${CMAKE_CXX_FLAGS_RELEASE} -UNDEBUG")
+ set(CMAKE_C_FLAGS_RELWITHDEBINFO "-flto ${FLTO_OPTS} ${CMAKE_C_FLAGS_RELWITHDEBINFO} -g -UNDEBUG")
+ set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-flto ${FLTO_OPTS} ${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -g -UNDEBUG")
+ set(CMAKE_C_FLAGS_RELEASE "-g -flto ${FLTO_OPTS} ${CMAKE_C_FLAGS_RELEASE} -UNDEBUG")
+ set(CMAKE_CXX_FLAGS_RELEASE "-g -flto ${FLTO_OPTS} ${CMAKE_CXX_FLAGS_RELEASE} -UNDEBUG")
set(CMAKE_EXE_LINKER_FLAGS "-g ${FLTO_OPTS} ${CMAKE_EXE_LINKER_FLAGS}")
set(CMAKE_SHARED_LINKER_FLAGS "-g ${FLTO_OPTS} ${CMAKE_SHARED_LINKER_FLAGS}")
endif ()