[PATCH] Make compile_time_assert compatible with x32 (Closes: #1063738)
authorOtto Kekäläinen <otto@debian.org>
Thu, 4 Jul 2024 07:03:58 +0000 (00:03 -0700)
committerOtto Kekäläinen <otto@debian.org>
Mon, 19 Aug 2024 04:59:29 +0000 (21:59 -0700)
    The x32 build was failing on:

        compile_time_assert(sizeof(MYSQL) == 77*sizeof(void*)+656);

    Reported upstream at https://jira.mariadb.org/browse/MDEV-34195.
    This is a regression from upstream commits c432c9ef and 06a884a57071.

    Fix is based on advice from https://lists.debian.org/debian-amd64/2024/07/msg00003.html
    which is also aligned with https://wiki.debian.org/X32Port.

Gbp-Pq: Name 1063738-x32-compile-time-assert.patch

tests/mysql_client_fw.c

index 9f0faf85021d4a3fab671134c60adf7179f13524..b8794d03e5256838277d30e4960954af8f02fb0e 100644 (file)
@@ -1442,7 +1442,7 @@ int main(int argc, char **argv)
   this limited check is enough, if sizeof(MYSQL) changes, it changes
   everywhere
 */
-#if defined __x86_64__
+#if defined(__x86_64__) && !defined(__ILP32__)
   compile_time_assert(sizeof(MYSQL) == 1272);
 #elif defined __i386__
   compile_time_assert(sizeof(MYSQL) == 964);