[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#946472: libtheora: Please make autopkgtests cross-test-friendly



Package: libtheora
Version: 1.1.1+dfsg.1-15
Severity: minor
Tags: patch
User: ubuntu-devel@lists.ubuntu.com
Usertags: origin-ubuntu focal ubuntu-patch

ear 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.

One of the libtheora tests currently fails in this environment, because it
is a build test that does not invoke the toolchain in a cross-aware manner. 
In addition, all of the tests have a test dependency on '@', that is, all of
the binary packages from this source; which includes libtheora-doc, which is
currently not usable as a cross-dependency because it's not marked
Multi-Arch: foreign.

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 libtheora-1.1.1+dfsg.1/debian/control libtheora-1.1.1+dfsg.1/debian/control
--- libtheora-1.1.1+dfsg.1/debian/control	2019-02-24 13:58:12.000000000 -0800
+++ libtheora-1.1.1+dfsg.1/debian/control	2019-12-09 08:31:49.000000000 -0800
@@ -50,6 +50,7 @@
 
 Package: libtheora-doc
 Architecture: all
+Multi-Arch: foreign
 Section: doc
 Depends: ${misc:Depends}
 Suggests: libtheora-dev
diff -Nru libtheora-1.1.1+dfsg.1/debian/tests/test-simple-build-link libtheora-1.1.1+dfsg.1/debian/tests/test-simple-build-link
--- libtheora-1.1.1+dfsg.1/debian/tests/test-simple-build-link	2019-02-24 13:35:01.000000000 -0800
+++ libtheora-1.1.1+dfsg.1/debian/tests/test-simple-build-link	2019-12-09 08:31:49.000000000 -0800
@@ -10,6 +10,12 @@
 trap at_exit INT TERM EXIT
 set -x
 
+if [ -n "${DEB_HOST_GNU_TYPE:-}" ]; then
+    CROSS_COMPILE="$DEB_HOST_GNU_TYPE-"
+else
+    CROSS_COMPILE=
+fi
+
 cd $WORKDIR
 
 if type valgrind >/dev/null 2>&1 ; then
@@ -39,6 +45,6 @@
 }
 EOF
 
-gcc -o test -Wall -Wextra example.c -ltheoradec
+${CROSS_COMPILE}gcc -o test -Wall -Wextra example.c -ltheoradec
 
 ${VALGRIND} ./test

Reply to: