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

debian/rules2 runs the libstdc++-v3 testsuite against the *installed* library



This fails for me when building gnat-4.6:

make[1]: Entering directory `/home/lbrenta/src/debian/gnat-4.6-4.6.3'
rm -f test-protocol
chmod 755 /home/lbrenta/src/debian/gnat-4.6-4.6.3/src/contrib/test_summary
: # libstdc++6 built from newer gcc-4.x source, run testsuite against the installed lib
sed 's/-L[^ ]*//g' /home/lbrenta/src/debian/gnat-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/scripts/testsuite_flags \
	  > /home/lbrenta/src/debian/gnat-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/scripts/testsuite_flags.installed
/bin/bash: /home/lbrenta/src/debian/gnat-4.6-4.6.3/build/x86_64-linux-gnu/libstdc++-v3/scripts/testsuite_flags.installed: No such file or directory
make[1]: *** [stamps/06-check-stamp] Error 1

In debian/rules2 I see:

ifneq ($(with_common_libs),yes)
	: # libstdc++6 built from newer gcc-4.x source, run testsuite against the installed lib

	sed 's/-L[^ ]*//g' $(buildlibdir)/libstdc++-v3/scripts/testsuite_flags \
	  > $(buildlibdir)/libstdc++-v3/scripts/testsuite_flags.installed

The 'sed' line is the one that fails.  I am not building libstdc++, so I
don't have the $(buildlibdir)/libstdc++-v3/ directory at all.

I can understand there is some value in running all versions of the
testsuite (from gcc-4.*) against the installed library (now built from
gcc-4.7 only) but there appears to be no place where we run the
testsuite against the *just-built* library.  Is this intentional?

Also, the test "ifneq ($(with_common_libs),yes)" seems entirely wrong to
me.  When with_common_libs = yes, we are not running the testsuite, even
if we build it; when with_common_libs = no, we are assuming that we just
built the libstdc++ and we run the testsuite against another version of
the library.  Should the test not be, simply, "ifeq
($(with_libcxx),yes)"?

-- 
Ludovic Brenta.


Reply to: