[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [patch #6448] [MSVC 7/7] Add MSVC Support
From: |
Peter Rosin |
Subject: |
Re: [patch #6448] [MSVC 7/7] Add MSVC Support |
Date: |
Fri, 15 Aug 2008 11:36:14 +0200 |
User-agent: |
Thunderbird 2.0.0.16 (Windows/20080708) |
Ralf Wildenhues skrev:
Hi Peter,
* Peter Rosin wrote on Wed, Aug 13, 2008 at 12:41:04PM CEST:
2008-08-13 Peter Rosin <address@hidden>
* 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.
Please add "Set to @code{false} on systems that cannot create
reloadable objects" to the reload_cmds documentation in libtool.texi.
I used @samp(false) instead, as that seemed to be the usage for
constants in the surrounding entries.
OK with nit below addressed.
Thanks,
Ralf
And thanks to you to for all your reviews and excellent feedback!
PS: yes, all the other new tag variables need documenting in the manual,
too, before the branch can be merged into master.
Right...
--- a/libltdl/m4/libtool.m4
+++ b/libltdl/m4/libtool.m4
@@ -4821,6 +4821,7 @@ _LT_EOF
mt -manifest "@address@hidden" -outputresource:"@address@hidden";
$RM "@address@hidden";
fi'
+ reload_cmds=false
Why is this not set in _LT_CMD_RELOAD? That's where reload_cmds is set
(exceptions not invalidating the rule ;-)
Because - explanation retrofitted :-) - I only want to set it to false
for cc_basename matching cl*, and cc_basename isn't available in
_LT_CMD_RELOAD. So I added a call to _LT_CC_BASENAME to _LT_CMD_RELOAD,
is that ok.
Ok to push like this?
2008-08-15 Peter Rosin <address@hidden>
* libltdl/m4/libtool.m4 (_LT_CMD_RELOAD)
[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.
* doc/libtool.texi (libtool script contents): Document how to
indicate that reloadable objects does not work.
Cheers,
Peter
diff --git a/doc/libtool.texi b/doc/libtool.texi
index 7b6b3f5..ee1f362 100644
--- a/doc/libtool.texi
+++ b/doc/libtool.texi
@@ -5909,7 +5909,8 @@ Commands run after uninstalling a shared or static
library, respectively.
@defvar reload_cmds
@defvarx reload_flag
-Commands to create a reloadable object.
+Commands to create a reloadable object. Set to @samp{false} on systems
+that cannot create reloadable objects.
@end defvar
@defvar runpath_var
diff --git a/libltdl/m4/libtool.m4 b/libltdl/m4/libtool.m4
index 7ceec66..e61d899 100644
--- a/libltdl/m4/libtool.m4
+++ b/libltdl/m4/libtool.m4
@@ -3023,7 +3023,15 @@ case $reload_flag in
*) reload_flag=" $reload_flag" ;;
esac
reload_cmds='$LD$reload_flag -o $output$reload_objs'
+_LT_CC_BASENAME([$CC])
case $host_os in
+ cygwin* | mingw* | pw32* | cegcc*)
+ if test "$GCC" != yes; then
+ case $cc_basename in
+ cl*) reload_cmds=false ;;
+ esac
+ fi
+ ;;
darwin*)
if test "$GCC" = yes; then
reload_cmds='$LTCC $LTCFLAGS -nostdlib ${wl}-r -o $output$reload_objs'
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])
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, (continued)
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/13
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/07
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/07
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Ralf Wildenhues, 2008/08/09
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/09
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Ralf Wildenhues, 2008/08/11
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Ralf Wildenhues, 2008/08/13
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/13
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/13
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Ralf Wildenhues, 2008/08/14
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support,
Peter Rosin <=
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Ralf Wildenhues, 2008/08/16
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/17
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Ralf Wildenhues, 2008/08/19
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/19
- RE: [patch #6448] [MSVC 7/7] Add MSVC Support, Markus Duft, 2008/08/20
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/20
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/20
- RE: [patch #6448] [MSVC 7/7] Add MSVC Support, Markus Duft, 2008/08/20
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Ralf Wildenhues, 2008/08/21
- Re: [patch #6448] [MSVC 7/7] Add MSVC Support, Peter Rosin, 2008/08/22