Mercurial > gnulib
diff gnulib-tool @ 9540:56fe79dce87d
Remove unnecessary -l options from LDFLAGS.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Wed, 26 Dec 2007 15:59:53 +0100 |
parents | 49f7561fc2d3 |
children | aad8160fa3ef |
line wrap: on
line diff
--- a/gnulib-tool Thu Dec 20 13:15:27 2007 -0700 +++ b/gnulib-tool Wed Dec 26 15:59:53 2007 +0100 @@ -1919,14 +1919,21 @@ echo " -I${testsbase_inverse} -I\$(srcdir)/${testsbase_inverse} \\" echo " -I${testsbase_inverse}/${sourcebase-lib} -I\$(srcdir)/${testsbase_inverse}/${sourcebase-lib}" echo - local_ldadd='' + local_ldadd_before='' + local_ldadd_after='' if $use_libtests; then - local_ldadd=' libtests.a $(LIBTESTS_LIBDEPS)' + # All test programs need to be linked with libtests.a. + # It needs to be passed to the linker before ${libname}.${libext}, since + # the tests-related modules depend on the main modules. + # It also needs to be passed to the linker after ${libname}.${libext} + # because the latter might contain incomplete modules (such as the 'error' + # module whose dependency to 'progname' is voluntarily omitted). + # The LIBTESTS_LIBDEPS can be passed to the linker once or twice, it does + # not matter. + local_ldadd_before=' libtests.a' + local_ldadd_after=' libtests.a $(LIBTESTS_LIBDEPS)' fi - # local_ldadd must be listed first, since it often depends on non-test - # modules; it must also be listed last, since it can include modules - # such as progname that satisfy dependencies of non-test modules. - echo "LDADD =${local_ldadd} ${testsbase_inverse}/${sourcebase-lib}/${libname}.${libext}${local_ldadd}" + echo "LDADD =${local_ldadd_before} ${testsbase_inverse}/${sourcebase-lib}/${libname}.${libext}${local_ldadd_after}" echo if $use_libtests; then echo "libtests_a_SOURCES ="