Peter Rosin skrev:
Ralf Wildenhues skrev:
* Peter Rosin wrote on Wed, Aug 06, 2008 at 09:47:28AM CEST:
Ralf Wildenhues skrev:
* Peter Rosin wrote on Tue, Aug 05, 2008 at 10:38:14AM CEST:
Peter Rosin skrev:
16: duplicate_conv.at:25 duplicate convenience archive names
MS link doesn't have reloadable objects (i.e. like "ld -r").
Should be fixed by at-file support I hope.
Unfortunately not, the test tries to link with "-o cee.$OBJEXT" which
triggers some different code path using -r. I don't think's it's
possible to have link.exe output an object file.
Ah yes, I didn't look at the test. In this case, the test should just
be skipped for systems where reload_cmds does not work. Speaking of
which, I think you should set reload_cmds to 'false' or so, so that it's
clear things fail. That could then be tested for as a SKIP criterion in
the testsuite.
Right, I'll prepare a patch later...
Attached...
2008-08-13 Peter Rosin <[EMAIL PROTECTED]>
* libltdl/m4/libtool.m4 (_LT_LINKER_SHLIBS)
[cygwin, mingw, pw32, cegcc] <cl*>: Indicate that reloadable
objects does not work.
* tests/duplicate_conv.at: Skip last test if reloadable
objects does not work.
Cheers,
Peter
diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4
index 7ceec66..5149a45 100644
--- a/libltdl/m4/libtool.m4
+++ b/libltdl/m4/libtool.m4
@@ -4821,6 +4821,7 @@ _LT_EOF
mt -manifest "@[EMAIL PROTECTED]" -outputresource:"@[EMAIL
PROTECTED]";
$RM "@[EMAIL PROTECTED]";
fi'
+ reload_cmds=false
;;
*)
# Assume MSVC wrapper
diff --git a/tests/duplicate_conv.at b/tests/duplicate_conv.at
index ac5643b..be04005 100644
--- a/tests/duplicate_conv.at
+++ b/tests/duplicate_conv.at
@@ -25,6 +25,8 @@
AT_SETUP([duplicate convenience archive names])
AT_KEYWORDS([libtool])
+eval `$LIBTOOL --config | sed -n '/^reload_cmds=/,/^$/p'`
+
# We create two convenience archives with the same name, and _also_
# containing an object with the same name. This is necessary to detect
# the failure with both 1.5.22 and HEAD, since the latter does not (did
@@ -75,6 +77,8 @@ AT_CHECK([$LIBTOOL --mode=link $CC $CFLAGS $LDFLAGS -o main
main.$OBJEXT ./libce
LT_AT_EXEC_CHECK([./main],[0],[ignore],[ignore])
$LIBTOOL --mode=clean rm -f libcee.la
+AT_CHECK([test "x$reload_cmds" = xfalse && exit 77], [1])
+
# Test whether this works with reloadable objects as well.
AT_CHECK([$LIBTOOL --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o cee.$OBJEXT
c.lo a/liba.la b/liba.la],
[0], [ignore], [ignore])