Bug#946372: fluidsynth: Please make autopkgtests cross-test-friendly
Package: fluidsynth
Version: 1.1.11-4
Severity: minor
Tags: patch
User: ubuntu-devel@lists.ubuntu.com
Usertags: origin-ubuntu focal ubuntu-patch
Dear maintainers,
In Ubuntu, we are in the process of moving the i386 architecture to a
compatibility-only layer on amd64, and therefore we are also moving our
autopkgtest infrastructure to test i386 binaries in a cross-environment.
This requires changes to some tests so that they are cross-aware and can do
the right thing.
The fluidsynth tests currently fail in this environment, because they are
build tests that do not invoke the toolchain in a cross-aware manner. I've
verified that the attached patch lets the tests successfully build (and run)
i386 tests on an amd64 host.
Note that upstream autopkgtest doesn't currently set DEB_HOST_ARCH so this
is a complete no-op in Debian for the moment. Support for cross-testing in
autopkgtest is currently awaiting review at
https://salsa.debian.org/ci-team/autopkgtest/merge_requests/69 and once
landed, will still have no effect unless autopkgtest is invoked with a '-a'
option. So this change should be safe to land in your package despite this
not being upstream in autopkgtest.
Thanks for considering,
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
Ubuntu Developer https://www.debian.org/
slangasek@ubuntu.com vorlon@debian.org
diff -Nru fluidsynth-1.1.11/debian/tests/build fluidsynth-1.1.11/debian/tests/build
--- fluidsynth-1.1.11/debian/tests/build 2018-03-15 09:24:33.000000000 -0700
+++ fluidsynth-1.1.11/debian/tests/build 2019-12-07 16:42:33.000000000 -0800
@@ -8,6 +8,13 @@
WORKDIR=$(mktemp -d)
trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM
cd $WORKDIR
+
+if [ -n "${DEB_HOST_GNU_TYPE:-}" ]; then
+ CROSS_COMPILE="$DEB_HOST_GNU_TYPE-"
+else
+ CROSS_COMPILE=
+fi
+
cat <<EOF > build_test.c
#include <fluidsynth.h>
int main(int argc, char** argv) {
@@ -25,7 +32,7 @@
}
EOF
-gcc -o build_test build_test.c -lfluidsynth
+${CROSS_COMPILE}gcc -o build_test build_test.c -lfluidsynth
echo "build: OK"
[ -x build_test ]
./build_test
Reply to: