mirror of
https://github.com/MariaDB/server.git
synced 2025-01-22 14:54:20 +01:00
3c9bec1100
Implement a check whether pthread_t objects can be used by GCC atomic builtin functions. This check is implemented in plug.in and defines the macro HAVE_ATOMIC_PTHREAD_T. This macro is checked in univ.i and the relevant part of the code enabled (the one that uses GCC atomics against pthread_t objects). In addition to this, the same program that is compiled as part of the plug.in check is added in ut/ut0auxconf.c. In the InnoDB Plugin source archives that are shipped to the users, a generated Makefile.in is added. That Makefile.in will be modified to compile ut/ut0auxconf.c and define the macro HAVE_ATOMIC_PTHREAD_T if the compilation succeeds. I.e. Makefile.in will emulate the work that is done by plug.in. This is done in order to make the check happen and HAVE_ATOMIC_PTHREAD_T eventually defined without regenerating MySQL's ./configure from ./storage/innobase/plug.in. The point is not to ask users to install the autotools and regenerate ./configure. rb://95 Approved by: Marko
14 lines
747 B
C
14 lines
747 B
C
/* Do not remove this file even though it is empty.
|
|
This file is included in univ.i and will cause compilation failure
|
|
if not present.
|
|
A custom check has been added in the generated
|
|
storage/innobase/Makefile.in that is shipped with with the InnoDB Plugin
|
|
source archive. This check tries to compile a test program and if
|
|
successful then adds "#define HAVE_ATOMIC_PTHREAD_T" to this file.
|
|
This is a hack that has been developed in order to check for pthread_t
|
|
atomicity without the need to regenerate the ./configure script that is
|
|
distributed in the MySQL 5.1 official source archives.
|
|
If by any chance Makefile.in and ./configure are regenerated and thus
|
|
the hack from Makefile.in wiped away then the "real" check from plug.in
|
|
will take over.
|
|
*/
|