[debian-mysql] Bug#842696: mariadb-10.0: FTBFS on hurd-i386: no hostpath(), but no socket path limitation

Samuel Thibault sthibault at debian.org
Mon Oct 31 11:56:53 UTC 2016

Source: mariadb-10.0
Version: 10.0.28-1
Severity: important
User: debian-hurd at lists.debian.org
Usertags: hurd


mariadb-10.0 FTBFS on hurd-i386:

# Run testsuite
cd builddir/mysql-test && ./mtr --force --testcase-timeout=30 --suite-timeout=540 --retry=3 --parallel=1 --skip-test-list=unstable-tests  || exit 1 ;
Logging: /<<PKGBUILDDIR>>/mysql-test/mysql-test-run.pl  --force --testcase-timeout=30 --suite-timeout=540 --retry=3 --parallel=1 --skip-test-list=unstable-tests
Too long tmpdir path '/<<PKGBUILDDIR>>/builddir/mysql-test/var/tmp'  creating a shorter one...
 - using tmpdir: '/tmp/fe_74snTmP'

vardir: /<<PKGBUILDDIR>>/builddir/mysql-test/var
Removing old var directory...
Creating var directory '/<<PKGBUILDDIR>>/builddir/mysql-test/var'...
mysql-test-run: *** ERROR: Socket path '/tmp/fe_74snTmP' too long, it would be  truncated and thus not possible to use for connection to  MySQL Server. Set a shorter with --tmpdir=

This is because on GNU/Hurd, perl's $sock->hostpath() can't work since
the path is not recorded in the socket internals. GNU/Hurd doesn't have
any socket path limitation anyway, so the attached proposed patch just
skips the check.

Also, just like on kfreebsd, upstream mariadb didn't define symbols, so
the same workaround applies here, see patch2.

Having mariadb-10.0 built has become very important for the port since a
lot of packages now depend on it through default-libmysqlclient-dev.

Thanks for considering these patches,

-- System Information:
Debian Release: stretch/sid
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable-debug'), (500, 'testing-debug'), (500, 'buildd-unstable'), (500, 'unstable'), (500, 'stable'), (500, 'oldstable'), (1, 'experimental-debug'), (1, 'buildd-experimental'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.8.0 (SMP w/4 CPU cores)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
-------------- next part --------------
--- mysql-test/lib/My/Platform.pm.original	2016-10-31 00:31:33.000000000 +0000
+++ mysql-test/lib/My/Platform.pm	2016-10-31 00:32:37.000000000 +0000
@@ -112,6 +112,8 @@
   return 0 if ($^O eq 'aix');
   # See Debian bug #670722 - failing on kFreeBSD even after setting short path
   return 0 if $^O eq 'gnukfreebsd' and length $path < 40;
+  # GNU/Hurd doesn't have hostpath(), but no limitation either.
+  return 0 if $^O eq 'gnu';
   require IO::Socket::UNIX;
-------------- next part --------------
--- debian/rules.original	2016-10-31 11:50:32.000000000 +0000
+++ debian/rules	2016-10-31 11:50:36.000000000 +0000
@@ -71,7 +71,7 @@
 	# Versioned symbols are only available on Linux.
 	# Remove symbols file on kFreeBSD builds so that
 	# dpkg-gensymbols will not fail the build.
-ifneq (,$(filter $(ARCH), kfreebsd-i386 kfreebsd-amd64))
+ifneq (,$(filter $(ARCH), kfreebsd-i386 kfreebsd-amd64 hurd-i386))
 	rm debian/libmariadbclient18.symbols

More information about the pkg-mysql-maint mailing list