Bug#830739: mpi-testsuite: FTBFS on non-Linux: 'override_dh_auto_configure' failed
Santiago Vila
sanvila at unex.es
Sun Aug 26 12:52:08 BST 2018
On Sun, 10 Jul 2016, Aaron M. Ucko wrote:
> Source: mpi-testsuite
> Version: 3.2+dfsg-1
> Severity: important
> Justification: fails to build from source
>
> Builds of mpi-testsuite on kFreeBSD and the Hurd have been failing:
>
> config.status: executing default-4 commands
> for i in `find . -name "testlist" | grep -v ^..build`; \
> do \
> if [ ! -e build-openmpi/$i ]; \
> then \
> ln -s `pwd`/$i `pwd`/build-openmpi/$i; \
> fi; \
> done
> ln: failed to create symbolic link '/«BUILDDIR»/mpi-testsuite-3.2+dfsg/build-openmpi/./.pc/disable_large_tests.patch/group/testlist': No such file or directory
> debian/rules:14: recipe for target 'override_dh_auto_configure' failed
>
> The error from ln also appears on Linux, so it's probably a red
> herring; it's not clear from the log what the actual problem is.
The problem is that the order of "find" is undefined and there is a
missing "set -e" at the beginning.
So the last "ln" command is the one that decides whether or not the
whole "for" loop is successful or not.
This is why we have Policy 4.6, "Error trapping in makefiles".
(Untested) patch follows:
--- a/debian/rules
+++ b/debian/rules
@@ -23,7 +23,7 @@ override_dh_auto_configure:
--disable-largetests \
--disable-silent-rules \
--disable-maintainer-mode)
- for i in `find . -name "testlist" | grep -v ^..build`; \
+ set -e; for i in `find * -name "testlist" | grep -v ^..build`; \
do \
if [ ! -e build-openmpi/$$i ]; \
then \
@@ -42,7 +42,7 @@ override_dh_auto_configure:
--disable-largetests \
--disable-silent-rules \
--disable-maintainer-mode)
- for i in `find . -name "testlist" | grep -v ^..build`; \
+ set -e; for i in `find * -name "testlist" | grep -v ^..build`; \
do \
if [ ! -e build-mpich/$$i ]; \
then \
Adrian: This should really be "serious". I'm going to do some tidy up
for both bugs.
Thanks.
More information about the debian-science-maintainers
mailing list