Rename a CMake variable in compile_flags.cmake to avoid triggering
CMake 3.1 warning about CMP0054 about interpreting if() arguments
as keywords or variables.
No changes in behavior.
issue, no mariadb-server in provides
MDEV-7233: Fix issue with missing dependency socat
when installing MariaDB-galera-server on
RedhatEL/OracleEL/(Others?) RPM based
* Added mariadb-server to "provides" for MariaDB Galera
server package. (rpm)
* Removed "socat" from MariaDB Galera server's mandatory
dependency list. (rpm)
* Moved "socat" from mandatory to optional dependency. (deb)
issue, no mariadb-server in provides
MDEV-7233: Fix issue with missing dependency socat
when installing MariaDB-galera-server on
RedhatEL/OracleEL/(Others?) RPM based
* Added mariadb-server to "provides" for MariaDB Galera
server package. (rpm)
* Removed "socat" from MariaDB Galera server's mandatory
dependency list. (rpm)
* Moved "socat" from mandatory to optional dependency. (deb)
Bug#17959689: MAKE GCC AND CLANG GIVE CONSISTENT COMPILATION WARNINGS
Bug#18313717: ENABLE -WERROR IN MAINTANER MODE WHEN COMPILING WITH CLANG
Bug#18510941: REMOVE CMAKE WORKAROUNDS FOR OLDER VERSIONS OF OS X/XCODE
Backport from mysql-5.6 to mysql-5.5
Bug#17959689: MAKE GCC AND CLANG GIVE CONSISTENT COMPILATION WARNINGS
Bug#18313717: ENABLE -WERROR IN MAINTANER MODE WHEN COMPILING WITH CLANG
Bug#18510941: REMOVE CMAKE WORKAROUNDS FOR OLDER VERSIONS OF OS X/XCODE
Backport from mysql-5.6 to mysql-5.5
Problem: For every event read, mysqlbinlog calls localtime() which in turn
calls stat(/etc/localtime) which is causing kernel mutex contention.
Analysis and Fix:
localtime() calls stat(/etc/localtime) for every instance of the call
where as localtime_r() the reentrant version was optimized to store
the read only tz internal structure. Hence it will not call
stat(/etc/localtime). It will call only once at the beginning.
The mysql server is calling localtime_r() and mysqlbinlog tool is
one place where we are still using localtime().
Once the process (mysqlbinlog) is started if timezone is changed
it will be not picked up the the process and it will continue
with the same values as the beginning of the process. This
behavior is in-lined with mysql server.
Also adding localtime_r() and gmtime_r() support for windows.
Problem: For every event read, mysqlbinlog calls localtime() which in turn
calls stat(/etc/localtime) which is causing kernel mutex contention.
Analysis and Fix:
localtime() calls stat(/etc/localtime) for every instance of the call
where as localtime_r() the reentrant version was optimized to store
the read only tz internal structure. Hence it will not call
stat(/etc/localtime). It will call only once at the beginning.
The mysql server is calling localtime_r() and mysqlbinlog tool is
one place where we are still using localtime().
Once the process (mysqlbinlog) is started if timezone is changed
it will be not picked up the the process and it will continue
with the same values as the beginning of the process. This
behavior is in-lined with mysql server.
Also adding localtime_r() and gmtime_r() support for windows.
1. move cflags/libs cleanup from mysql_config.sh (runtime)
to for_client.cmake (build time). Include/library paths are
still calculated at runtime (they depend on the location of mysql_config)
2. Use cleaned-up cflags/libs to generate mariadb.pc
3. remove obsolete @expansions@ from mysql_config (for variables that are
never set in cmake files)