Package: src:meson
Version: 0.45.1-1
Severity: serious
Tags: sid buster patch
The java and cross tests fail. and I don't see how these could succeed in the
past. This package is uploaded including the binary package, so the only
explanation I have is that the tests were disabled during these local builds.
Please don't do that, and do source only uploads instead so you can see what
fails.
The attached patch fixes the test failures regarding the java and the cross
tests.
* Fix javac detection. This cannot have worked in any source only
upload.
* Build-depend on g++-arm-linux-gnueabihf. The cross tests call
gcc/g++ explicitly.
* Use default-jdk-headless instead of openjdk-8.
diff -Nru meson-0.45.1/debian/control meson-0.45.1/debian/control
--- meson-0.45.1/debian/control 2018-03-04 20:53:50.0 +0100
+++ meson-0.45.1/debian/control 2018-04-01 09:44:20.0 +0200
@@ -29,7 +29,7 @@
protobuf-compiler ,
libprotobuf-dev ,
# OpenJDK does not work on Hurd, so skip the tests.
- openjdk-8-jdk [!hurd-i386] ,
+ default-jdk-headless [!hurd-i386] ,
valac ,
gobject-introspection ,
libgirepository1.0-dev ,
@@ -57,7 +57,7 @@
itstool ,
libgtk-3-dev ,
# Not available on older releases and only needed for tests
- c++-compiler-arm-linux-gnueabihf [!armhf] | bash-doc ,
+ g++-arm-linux-gnueabihf [!armhf] | bash-doc ,
valgrind [amd64 i386] ,
llvm-dev ,
libsdl2-dev ,
diff -Nru meson-0.45.1/debian/patches/fix-javac-test.diff
meson-0.45.1/debian/patches/fix-javac-test.diff
--- meson-0.45.1/debian/patches/fix-javac-test.diff 1970-01-01
01:00:00.0 +0100
+++ meson-0.45.1/debian/patches/fix-javac-test.diff 2018-04-01
09:43:52.0 +0200
@@ -0,0 +1,13 @@
+Index: b/mesonbuild/environment.py
+===
+--- a/mesonbuild/environment.py
b/mesonbuild/environment.py
+@@ -661,7 +661,7 @@ class Environment:
+ except OSError:
+ raise EnvironmentException('Could not execute Java compiler "%s"'
% ' '.join(exelist))
+ version = search_version(err)
+-if 'javac' in err:
++if 'javac' in out or 'javac' in err:
+ return JavaCompiler(exelist, version)
+ raise EnvironmentException('Unknown compiler "' + ' '.join(exelist) +
'"')
+
diff -Nru meson-0.45.1/debian/patches/series meson-0.45.1/debian/patches/series
--- meson-0.45.1/debian/patches/series 2017-08-15 00:26:22.0 +0200
+++ meson-0.45.1/debian/patches/series 2018-04-01 09:44:20.0 +0200
@@ -1 +1,3 @@
1-disable-openmpi.patch
+fix-javac-test.diff
+unversioned-armhf-cross.diff
diff -Nru meson-0.45.1/debian/patches/unversioned-armhf-cross.diff
meson-0.45.1/debian/patches/unversioned-armhf-cross.diff
--- meson-0.45.1/debian/patches/unversioned-armhf-cross.diff1970-01-01
01:00:00.0 +0100
+++ meson-0.45.1/debian/patches/unversioned-armhf-cross.diff2018-04-01
09:44:20.0 +0200
@@ -0,0 +1,28 @@
+Index: b/cross/ubuntu-armhf.txt
+===
+--- a/cross/ubuntu-armhf.txt
b/cross/ubuntu-armhf.txt
+@@ -1,8 +1,8 @@
+ [binaries]
+ # we could set exe_wrapper = qemu-arm-static but to test the case
+ # when cross compiled binaries can't be run we don't do that
+-c = '/usr/bin/arm-linux-gnueabihf-gcc-7'
+-cpp = '/usr/bin/arm-linux-gnueabihf-g++-7'
++c = '/usr/bin/arm-linux-gnueabihf-gcc'
++cpp = '/usr/bin/arm-linux-gnueabihf-g++'
+ rust = ['rustc', '--target', 'arm-unknown-linux-gnueabihf', '-C',
'linker=/usr/bin/arm-linux-gnueabihf-gcc-7']
+ ar = '/usr/arm-linux-gnueabihf/bin/ar'
+ strip = '/usr/arm-linux-gnueabihf/bin/strip'
+Index: b/run_tests.py
+===
+--- a/run_tests.py
b/run_tests.py
+@@ -131,7 +131,7 @@ def get_fake_options(prefix):
+ return opts
+
+ def should_run_linux_cross_tests():
+-return shutil.which('arm-linux-gnueabihf-gcc-7') and not
platform.machine().lower().startswith('arm')
++return shutil.which('arm-linux-gnueabihf-gcc') and not
platform.machine().lower().startswith('arm')
+
+ def run_configure_inprocess(meson_command, commandlist):
+ old_stdout = sys.stdout