From 0e18a0cea962a187cffcca248b1685924742afd4 Mon Sep 17 00:00:00 2001 From: Mingli Yu Date: Mon, 26 Feb 2024 17:04:29 +0800 Subject: [PATCH] mariadb: Upgrade to 10.11.7 As the change [1] introduced in 10.11.7, there comes below configure failure: | -- Performing Test HAVE_SYSTEM_LIBFMT | CMake Error: try_run() invoked in cross-compiling mode, please set the following cache variables appropriately: | HAVE_SYSTEM_LIBFMT_EXITCODE (advanced) | For details see /build/tmp-glibc/work/core2-64-wrs-linux/mariadb/10.11.7/build/TryRunResults.cmake | -- Performing Test HAVE_SYSTEM_LIBFMT - Failed [snip] Considering [1] is mainly used to test fmt 10.0.0 failure and we use libfmt 10.2.1 now, so define "-DHAVE_SYSTEM_LIBFMT_EXITCODE=0" as workaround [2] to fix the above configure error. Remove the problematic assert lines to fix the below build failure on 32bit arm as the next 10.11 release will bring the assert back in a way that works on 32-bit arm [3]. In file included from TOPDIR/build/tmp/work/cortexa15t2hf-neon-yoe-linux-gnueabi/mariadb/10.11.7/mariadb-10.11.7/tests/mysql_client_test.c:38: TOPDIR/build/tmp/work/cortexa15t2hf-neon-yoe-linux-gnueabi/mariadb/10.11.7/mariadb-10.11.7/tests/mysql_client_fw.c:1438:3: error: 'compile_time_assert' declared as an array with a negative size 1438 | compile_time_assert(sizeof(MYSQL) == 77*sizeof(void*)+656); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [1] https://github.com/MariaDB/server/commit/b5c367cd88e37091ab5f8dab0396c01c97d037e2 [2] https://jira.mariadb.org/browse/MDEV-30694 [3] https://jira.mariadb.org/browse/MDEV-33429 Signed-off-by: Mingli Yu Signed-off-by: Khem Raj --- ...e_10.11.6.bb => mariadb-native_10.11.7.bb} | 0 meta-oe/recipes-dbs/mysql/mariadb.inc | 4 +- ...Remove-the-compile_time_assert-lines.patch | 43 +++++++++++++++++++ ...{mariadb_10.11.6.bb => mariadb_10.11.7.bb} | 0 4 files changed, 46 insertions(+), 1 deletion(-) rename meta-oe/recipes-dbs/mysql/{mariadb-native_10.11.6.bb => mariadb-native_10.11.7.bb} (100%) create mode 100644 meta-oe/recipes-dbs/mysql/mariadb/0001-Remove-the-compile_time_assert-lines.patch rename meta-oe/recipes-dbs/mysql/{mariadb_10.11.6.bb => mariadb_10.11.7.bb} (100%) diff --git a/meta-oe/recipes-dbs/mysql/mariadb-native_10.11.6.bb b/meta-oe/recipes-dbs/mysql/mariadb-native_10.11.7.bb similarity index 100% rename from meta-oe/recipes-dbs/mysql/mariadb-native_10.11.6.bb rename to meta-oe/recipes-dbs/mysql/mariadb-native_10.11.7.bb diff --git a/meta-oe/recipes-dbs/mysql/mariadb.inc b/meta-oe/recipes-dbs/mysql/mariadb.inc index 25dc15b466..9e6d490cbe 100644 --- a/meta-oe/recipes-dbs/mysql/mariadb.inc +++ b/meta-oe/recipes-dbs/mysql/mariadb.inc @@ -23,9 +23,10 @@ SRC_URI = "https://archive.mariadb.org/${BP}/source/${BP}.tar.gz \ file://0001-sql-CMakeLists.txt-fix-gen_lex_hash-not-found.patch \ file://lfs64.patch \ file://0001-Add-missing-includes-cstdint-and-cstdio.patch \ + file://0001-Remove-the-compile_time_assert-lines.patch \ " SRC_URI:append:libc-musl = " file://ppc-remove-glibc-dep.patch" -SRC_URI[sha256sum] = "1c0163463e98d71f4780741611a40981eee2bc44d392601ca49bbf948d04dd67" +SRC_URI[sha256sum] = "5239a245ed90517e96396605cd01ccd8f73cd7442d1b3076b6ffe258110e5157" UPSTREAM_CHECK_URI = "https://github.com/MariaDB/server/releases" @@ -96,6 +97,7 @@ EXTRA_OECMAKE = "-DWITH_EMBEDDED_SERVER=ON \ -DMYSQL_DATADIR:PATH=/var/mysql \ -DCAT_EXECUTABLE=`which cat` \ -DSTACK_DIRECTION=1 \ + -DHAVE_SYSTEM_LIBFMT_EXITCODE=0 \ -DCMAKE_AR:FILEPATH=${AR}" diff --git a/meta-oe/recipes-dbs/mysql/mariadb/0001-Remove-the-compile_time_assert-lines.patch b/meta-oe/recipes-dbs/mysql/mariadb/0001-Remove-the-compile_time_assert-lines.patch new file mode 100644 index 0000000000..9a6e28297b --- /dev/null +++ b/meta-oe/recipes-dbs/mysql/mariadb/0001-Remove-the-compile_time_assert-lines.patch @@ -0,0 +1,43 @@ +From cc5f1d0759b367265a1a000287e2ec15c31eb518 Mon Sep 17 00:00:00 2001 +From: Mingli Yu +Date: Mon, 26 Feb 2024 14:56:02 +0800 +Subject: [PATCH] Remove the compile_time_assert lines + +Remove the problematic compile_time_assert lines to fix the below build +failure on 32-bit arm. + In file included from TOPDIR/build/tmp/work/cortexa15t2hf-neon-yoe-linux-gnueabi/mariadb/10.11.7/mariadb-10.11.7/tests/mysql_client_test.c:38: + TOPDIR/build/tmp/work/cortexa15t2hf-neon-yoe-linux-gnueabi/mariadb/10.11.7/mariadb-10.11.7/tests/mysql_client_fw.c:1438:3: error: 'compile_time_assert' declared as an array with a negative size + 1438 | compile_time_assert(sizeof(MYSQL) == 77*sizeof(void*)+656); + | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Upstream-Status: Inappropriate [Upstream will bring the asset back + in a new way [1]] +[1] https://jira.mariadb.org/browse/MDEV-33429 + +Signed-off-by: Mingli Yu +--- + tests/mysql_client_fw.c | 8 -------- + 1 file changed, 8 deletions(-) + +diff --git a/tests/mysql_client_fw.c b/tests/mysql_client_fw.c +index c9e64678..5c0c7ce2 100644 +--- a/tests/mysql_client_fw.c ++++ b/tests/mysql_client_fw.c +@@ -1430,14 +1430,6 @@ int main(int argc, char **argv) + tests_to_run[i]= NULL; + } + +-#ifdef _WIN32 +- /* must be the same in C/C and embedded, 1208 on 64bit, 968 on 32bit */ +- compile_time_assert(sizeof(MYSQL) == 60*sizeof(void*)+728); +-#else +- /* must be the same in C/C and embedded, 1272 on 64bit, 964 on 32bit */ +- compile_time_assert(sizeof(MYSQL) == 77*sizeof(void*)+656); +-#endif +- + if (mysql_server_init(embedded_server_arg_count, + embedded_server_args, + (char**) embedded_server_groups)) +-- +2.25.1 + diff --git a/meta-oe/recipes-dbs/mysql/mariadb_10.11.6.bb b/meta-oe/recipes-dbs/mysql/mariadb_10.11.7.bb similarity index 100% rename from meta-oe/recipes-dbs/mysql/mariadb_10.11.6.bb rename to meta-oe/recipes-dbs/mysql/mariadb_10.11.7.bb