Hi, AC_LIBOBJ removes duplicates but our replacement doesn't. This matters when building shared libraries on platforms like MacOS X and mingw. (For example, if you need both getline and getdelim, getdelim.o will be added twice.) Here is a fix.
2006-10-18 Bruno Haible <[EMAIL PROTECTED]> * gnulib-tool (func_emit_initmacro_end): Remove duplicates from the gl_LIBOBJS list. *** gnulib-tool.bak 2006-10-13 01:18:44.000000000 +0200 --- gnulib-tool 2006-10-19 04:15:27.000000000 +0200 *************** *** 1339,1348 **** echo " ${macro_prefix}_libobjs=" echo " ${macro_prefix}_ltlibobjs=" echo " if test -n \"\$${macro_prefix}_LIBOBJS\"; then" ! echo " for i in \$${macro_prefix}_LIBOBJS; do" ! echo " # Remove the extension." ! echo " sed_drop_objext='s/\\.o\$//;s/\\.obj\$//'" ! echo " i=\`echo \"\$i\" | sed \"\$sed_drop_objext\"\`" echo " ${macro_prefix}_libobjs=\"\$${macro_prefix}_libobjs \$i.\$ac_objext\"" echo " ${macro_prefix}_ltlibobjs=\"\$${macro_prefix}_ltlibobjs \$i.lo\"" echo " done" --- 1339,1347 ---- echo " ${macro_prefix}_libobjs=" echo " ${macro_prefix}_ltlibobjs=" echo " if test -n \"\$${macro_prefix}_LIBOBJS\"; then" ! echo " # Remove the extension." ! echo " sed_drop_objext='s/\\.o\$//;s/\\.obj\$//'" ! echo " for i in \`for i in \$${macro_prefix}_LIBOBJS; do echo \"\$i\"; done | sed \"\$sed_drop_objext\" | sort | uniq\`; do" echo " ${macro_prefix}_libobjs=\"\$${macro_prefix}_libobjs \$i.\$ac_objext\"" echo " ${macro_prefix}_ltlibobjs=\"\$${macro_prefix}_ltlibobjs \$i.lo\"" echo " done"