Source: mariadb Version: 10.11.7-4 Severity: important Tags: patch User: debian-hurd@lists.debian.org Usertags: hurd X-Debbugs-CC: debian-hurd@lists.debian.org
Hi, mariadb FTBFS on hurd-i386. Attached are three patches enabling a successful build: - debian_rules.patch: override_dh_installsystemd: Install mariadb.service on Linux only. override_dh_missing: Change dh_missing from fail to list on non-linux. - storage_connect_ioapi.h.patch: Add Hurd to define __USE_FILE_OFFSET64 et al. - plugin_disks_information_schema_disks.cc.patch: Define PATH_MAX if not defined. Unfortunately the build succeeds only with DEB_BUILD_OPTIONS=nocheck since debian/rules override_dh_auto_test errors out with: 2024-04-16 11:09:38 0 [Note] Plugin 'INNODB_SYS_VIRTUAL' is disabled. ERROR: 1017 Can't find file: '(temporary)' (errno: 1073741826 "No such file or directory") 2024-04-16 11:09:38 0 [ERROR] Aborting Additionally the file debian/unstable-tests.hurd should be linked to unstable-tests.hurd-i386 (or equivalent) since dpkg-architecture -qDEB_BUILD_ARCH results in hurd-i386. Thanks!
--- a/debian/rules 2024-04-15 16:46:16.000000000 +0200 +++ b/debian/rules 2024-04-15 16:45:59.000000000 +0200 @@ -205,7 +205,14 @@ mv -v $(TMP)/usr/lib/mysql/plugin/qa_auth_client.so $(TMP)/usr/lib/$(DEB_HOST_MULTIARCH)/libmariadb3/plugin/ override_dh_installsystemd: +ifneq (,$(filter linux,$(DEB_HOST_ARCH_OS))) dh_installsystemd -pmariadb-server mariadb.service +endif + +override_dh_missing: +ifneq (,$(filter linux,$(DEB_HOST_ARCH_OS))) + dh_missing --list-missing +endif override_dh_installinit-arch: dh_installinit --name=mariadb
Index: mariadb-10.11.7/plugin/disks/information_schema_disks.cc =================================================================== --- mariadb-10.11.7.orig/plugin/disks/information_schema_disks.cc +++ mariadb-10.11.7/plugin/disks/information_schema_disks.cc @@ -32,6 +32,9 @@ #include <sys/mntent.h> #endif #endif +#ifndef PATH_MAX +#define PATH_MAX 4096 +#endif #include <sql_class.h> #include <sql_i_s.h> #include <sql_acl.h> /* check_global_access() */
--- a/storage/connect/ioapi.h 2024-02-01 18:36:14.000000000 +0100 +++ b/storage/connect/ioapi.h 2024-04-14 17:29:57.000000000 +0200 @@ -21,9 +21,10 @@ #ifndef _ZLIBIOAPI64_H #define _ZLIBIOAPI64_H -#if defined(__linux__) +#if defined(__linux__) || defined (__GNU__) - // Linux needs this to support file operation on files larger then 4+GB + // Linux and Hurd needs this to support file operation on files larger + // than 4+GB. // But might need better if/def to select just the platforms that needs them. #ifndef __USE_FILE_OFFSET64