Bug#1069094: mariadb: FTBFS on hurd-i386
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
Reply to: