Package: gcr Version: 3.34.0-1 Severity: minor Tags: patch User: ubuntu-de...@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 gcr 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/ slanga...@ubuntu.com vor...@debian.org
diff -Nru gcr-3.34.0/debian/tests/libgck-1-dev gcr-3.34.0/debian/tests/libgck-1-dev --- gcr-3.34.0/debian/tests/libgck-1-dev 2019-10-22 03:20:09.000000000 -0700 +++ gcr-3.34.0/debian/tests/libgck-1-dev 2019-12-07 15:30:29.000000000 -0800 @@ -11,6 +11,13 @@ export XDG_RUNTIME_DIR="$WORKDIR" 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 > test.c #include <gck/gck.h> @@ -26,7 +33,7 @@ # Deliberately word-splitting cflags and pkg-config's output: # shellcheck disable=SC2046 disable=SC2086 -gcc ${cflags} -o gck-test test.c $(pkg-config --cflags --libs gck-1) +${CROSS_COMPILE}gcc ${cflags} -o gck-test test.c $(${CROSS_COMPILE}pkg-config --cflags --libs gck-1) echo "build: OK" [ -x gck-test ] ./gck-test diff -Nru gcr-3.34.0/debian/tests/libgcr-3-dev gcr-3.34.0/debian/tests/libgcr-3-dev --- gcr-3.34.0/debian/tests/libgcr-3-dev 2019-10-22 03:20:09.000000000 -0700 +++ gcr-3.34.0/debian/tests/libgcr-3-dev 2019-12-07 15:30:29.000000000 -0800 @@ -11,6 +11,13 @@ export XDG_RUNTIME_DIR="$WORKDIR" 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 > base.c #include <gcr/gcr.h> @@ -37,21 +44,21 @@ # Deliberately word-splitting cflags and pkg-config's output: # shellcheck disable=SC2046 disable=SC2086 -gcc ${cflags} -o gcr-test ui.c $(pkg-config --cflags --libs gcr-3) +${CROSS_COMPILE}gcc ${cflags} -o gcr-test ui.c $(${CROSS_COMPILE}pkg-config --cflags --libs gcr-3) echo "build: OK" [ -x gcr-test ] xvfb-run -a dbus-run-session -- ./gcr-test echo "run: OK" # shellcheck disable=SC2046 disable=SC2086 -gcc ${cflags} -o base-test base.c $(pkg-config --cflags --libs gcr-ui-3) +${CROSS_COMPILE}gcc ${cflags} -o base-test base.c $(${CROSS_COMPILE}pkg-config --cflags --libs gcr-ui-3) echo "build: OK" [ -x base-test ] ./base-test echo "run: OK" # shellcheck disable=SC2046 disable=SC2086 -gcc ${cflags} -o ui-test ui.c $(pkg-config --cflags --libs gcr-ui-3) +${CROSS_COMPILE}gcc ${cflags} -o ui-test ui.c $(${CROSS_COMPILE}pkg-config --cflags --libs gcr-ui-3) echo "build: OK" [ -x ui-test ] xvfb-run -a dbus-run-session -- ./ui-test