+2020-05-29 Bruno Haible <bruno@clisp.org>
+
+ gnulib-tool: Fix link errors with a particular set of modules on mingw.
+ * gnulib-tool (func_emit_tests_Makefile_am): Add ../lib/libgnu.a to
+ LDADD a second time, after the second occurrence of libtests.a.
+ * pygnulib/GLEmiter.py (tests_Makefile_am): Likewise.
+
2020-05-29 Bruno Haible <bruno@clisp.org>
fnmatch: Rely on more gnulib modules.
echo " -I${testsbase_inverse} -I\$(srcdir)/${testsbase_inverse} \\"
echo " -I${testsbase_inverse}/${sourcebase-lib} -I\$(srcdir)/${testsbase_inverse}/${sourcebase-lib}"
echo
- local_ldadd_before=''
- local_ldadd_after=''
if $use_libtests; then
# All test programs need to be linked with libtests.a.
# It needs to be passed to the linker before ${libname}.${libext}, since
# 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)'
+ echo "LDADD = libtests.a ${testsbase_inverse}/${sourcebase-lib}/${libname}.${libext} libtests.a ${testsbase_inverse}/${sourcebase-lib}/${libname}.${libext} \$(LIBTESTS_LIBDEPS)"
+ else
+ echo "LDADD = ${testsbase_inverse}/${sourcebase-lib}/${libname}.${libext}"
fi
- echo "LDADD =${local_ldadd_before} ${testsbase_inverse}/${sourcebase-lib}/${libname}.${libext}${local_ldadd_after}"
echo
if $use_libtests; then
echo "libtests_a_SOURCES ="
(testsbase_inverse, sourcebase, testsbase_inverse, sourcebase)
emit += '\n'
- local_ldadd_before = string()
- local_ldadd_after = string()
if libtests:
# All test programs need to be linked with libtests.a.
# It needs to be passed to the linker before ${libname}.${libext}, since
# '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)'
- emit += 'LDADD =%s %s/%s/%s.%s%s\n\n' % \
- (local_ldadd_before, testsbase_inverse, sourcebase, libname, libext,
- local_ldadd_after)
+ emit += 'LDADD = libtests.a %s/%s/%s.%s libtests.a %s/%s/%s.%s $(LIBTESTS_LIBDEPS)\n\n' % \
+ (testsbase_inverse, sourcebase, libname, libext,
+ testsbase_inverse, sourcebase, libname, libext)
+ else:
+ emit += 'LDADD = %s/%s/%s.%s\n\n' % \
+ (testsbase_inverse, sourcebase, libname, libext)
if libtests:
emit += 'libtests_a_SOURCES =\n'
# Here we use $(LIBOBJS), not @LIBOBJS@. The value is the same. However,