aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Schanzenbach <schanzen@gnunet.org>2023-02-01 18:57:09 +0900
committerMartin Schanzenbach <schanzen@gnunet.org>2023-02-01 18:57:09 +0900
commitac40efdae723f850bfff62c0cddad130a37f425e (patch)
tree686827a1a92882a8e549bc25edfd56bd35e46a60
parent2161f34f8cd4d4250248554c0e1786ad4c45de16 (diff)
downloadgnunet-ac40efdae723f850bfff62c0cddad130a37f425e.tar.gz
gnunet-ac40efdae723f850bfff62c0cddad130a37f425e.zip
MYSQL: Use autoconf-based my_bool detection
NEWS: We now detect MySQL's strange, version-dependent my_bool type on configure.
-rw-r--r--configure.ac13
-rw-r--r--src/include/gnunet_mysql_compat.h10
2 files changed, 13 insertions, 10 deletions
diff --git a/configure.ac b/configure.ac
index 7ba1d27a7..ec89fd4c7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -935,6 +935,19 @@ AC_ARG_WITH([mysql],
935AC_SUBST(MYSQL_LDFLAGS) 935AC_SUBST(MYSQL_LDFLAGS)
936AC_SUBST(MYSQL_CPPFLAGS) 936AC_SUBST(MYSQL_CPPFLAGS)
937 937
938# check for my_bool
939AS_IF([test "x$mysql" = "xtrue"],
940 [AC_MSG_CHECKING([for my_bool])
941 AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
942 [[#include <mysql/mysql.h>]],
943 [[#ifndef my_bool
944#no my_bool found
945#endif]])],
946 [AC_MSG_RESULT([yes])
947 AC_DEFINE_UNQUOTED([MYSQL_BOOL], [my_bool], [Bool variable for some mysql versions])],
948 [AC_MSG_RESULT([no])
949 AC_DEFINE_UNQUOTED([MYSQL_BOOL], [bool], [Normal boolean value])])])
950
938# additional version checks for mysql 951# additional version checks for mysql
939AS_IF([test "x$mysql" = "xtrue"], 952AS_IF([test "x$mysql" = "xtrue"],
940 [AC_MSG_CHECKING([for mysql version]) 953 [AC_MSG_CHECKING([for mysql version])
diff --git a/src/include/gnunet_mysql_compat.h b/src/include/gnunet_mysql_compat.h
index 9fb9db30f..38c7ecc63 100644
--- a/src/include/gnunet_mysql_compat.h
+++ b/src/include/gnunet_mysql_compat.h
@@ -41,16 +41,6 @@ extern "C"
41#endif 41#endif
42#endif 42#endif
43 43
44#ifndef LIBMARIADB
45#if MYSQL_VERSION_ID >= 80000
46#define MYSQL_BOOL bool
47#else
48#define MYSQL_BOOL my_bool /* MySQL < 8 wants this */
49#endif
50#else
51#define MYSQL_BOOL my_bool /* MariaDB still uses my_bool */
52#endif
53
54#if 0 /* keep Emacsens' auto-indent happy */ 44#if 0 /* keep Emacsens' auto-indent happy */
55{ 45{
56#endif 46#endif