]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
* tests/inherited_flags.at: Weaken for MSVC.
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Fri, 26 Aug 2005 13:48:27 +0000 (13:48 +0000)
committerPeter Rosin <peda@lysator.liu.se>
Fri, 26 Aug 2005 13:48:27 +0000 (13:48 +0000)
* tests/early-libtool.at, tests/template.at: Fix for compiler
that do not understand '-c -o'.

ChangeLog
tests/early-libtool.at
tests/inherited_flags.at
tests/template.at

index f17d814725bde129c2cac4b470609e88b144e9cf..b72c85a914aab54d07160a8f445f06981fb84501 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+           Peter Ekberg  <peda@lysator.liu.se>
+
+       * tests/inherited_flags.at: Weaken for MSVC.
+       * tests/early-libtool.at, tests/template.at: Fix for compiler
+       that do not understand '-c -o'.
+
 2005-08-26  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
 
        * tests/standalone.at, tests/template.at: Do not compare
index 5b4d7ad2617045e6e80596924bec595e6cb753ec..5e10ba5898ebb51aeb20c84876b546e7f646cf2c 100644 (file)
@@ -42,6 +42,7 @@ top_builddir = .
 DEFAULT_INCLUDES = -I. -I@srcdir@
 EXEEXT = @EXEEXT@
 LIBTOOL = @LIBTOOL@
+OBJEXT = @OBJEXT@
 
 COMPILE = $(CC) $(DEFAULT_INCLUDES)
 LTCOMPILE = $(LIBTOOL) --mode=compile --tag=CC $(CC) $(DEFAULT_INCLUDES)
@@ -51,14 +52,14 @@ all: hell
 
 libhello.la: hello.lo
        $(LINK) -rpath $(libdir) hello.lo
-hell$(EXEEXT): main.o libhello.la
-       $(LINK) main.o libhello.la
+hell$(EXEEXT): main.$(OBJEXT) libhello.la
+       $(LINK) main.$(OBJEXT) libhello.la
 
 .SUFFIXES:
-.SUFFIXES: .c .o .lo
+.SUFFIXES: .c .$(OBJEXT) .lo
 
-.c.o:
-       $(COMPILE) -c -o $@ $<
+.c.$(OBJEXT):
+       $(COMPILE) -c $@ $<
 .c.lo:
        $(LTCOMPILE) -c -o $@ $<
 ]])
@@ -151,18 +152,19 @@ top_builddir = .
 DEFAULT_INCLUDES = -I. -I@srcdir@
 EXEEXT = @EXEEXT@
 LIBTOOL = @LIBTOOL@
+OBJEXT = @OBJEXT@
 
 COMPILE = $(CC) $(DEFAULT_INCLUDES)
 LINK = $(LIBTOOL) --mode=link --tag=CC $(CC) -o $@
 
-hell$(EXEEXT): main.o libhello.la
-       $(LINK) main.o libhello.la
+hell$(EXEEXT): main.$(OBJEXT) libhello.la
+       $(LINK) main.$(OBJEXT) libhello.la
 
 .SUFFIXES:
-.SUFFIXES: .c .o
+.SUFFIXES: .c .$(OBJEXT)
 
-.c.o:
-       $(COMPILE) -c -o $@ $<
+.c.$(OBJEXT):
+       $(COMPILE) -c $@ $<
 ]])
 
 AT_DATA([hello.c],
index 85447d044b23b6c10de15e56c492a88729e59767..e2d97e0b25537d40c86084d00ad4f35016160169 100644 (file)
@@ -57,11 +57,15 @@ rm libbar.la.bak
 
 AT_CHECK([${LIBTOOL} --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o libbaz.la baz.lo -no-undefined -rpath /usr/local/lib ./libfoo.la ./libbar.la],
         [ignore],[stdout],[ignore])
-AT_CHECK([grep 'llt_[[ui]]nlikely_existing_lib.*llt_[[ui]]nlikely_existing_lib' stdout],
+# We used to grep for
+# 'llt_[[ui]]nlikely_existing_lib.*llt_[[ui]]nlikely_existing_lib'
+# here.  This fails on win32/MSVC because the generated command lines have a
+# different syntax.  So drop the first `l'.
+AT_CHECK([grep 'lt_[[ui]]nlikely_existing_lib.*lt_[[ui]]nlikely_existing_lib' stdout],
         [0],[ignore],[ignore])
 AT_CHECK([${LIBTOOL} --mode=link --tag=CC $CC $CFLAGS $LDFLAGS -o main main.lo -no-undefined -rpath /usr/local/lib  ./libfoo.la ./libbar.la],
        [ignore],[stdout],[ignore])
-AT_CHECK([grep 'llt_[[ui]]nlikely_existing_lib.*llt_[[ui]]nlikely_existing_lib' stdout],
+AT_CHECK([grep 'lt_[[ui]]nlikely_existing_lib.*lt_[[ui]]nlikely_existing_lib' stdout],
         [0],[ignore],[ignore])
 
 AT_CLEANUP
index 9b18f4f6233604b3c4f76fee992e9d5f5195cca5..a96d62ae4e1ac98b0132c1cb95b9ae89a4ce61fe 100644 (file)
@@ -81,8 +81,8 @@ AT_CHECK($LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o al
 AT_CHECK($LIBTOOL --tag=CXX --mode=compile $CXX -I. $CPPFLAGS $CXXFLAGS -c -o aclib.lo aclib.cpp, [0], [ignore], [ignore])
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS -o libaclib.la aclib.lo, [0], [ignore], [ignore])
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS -o libalib.la -rpath /usr/local/lib alib.lo libaclib.la, [0], [ignore], [ignore])
-AT_CHECK($CXX -I. $CPPFLAGS $CXXFLAGS -c -o prog.o prog.cpp, [0], [ignore], [ignore])
-AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS -o prog prog.o libalib.la, [0], [ignore], [ignore])
+AT_CHECK($CXX -I. $CPPFLAGS $CXXFLAGS -c prog.cpp, [0], [ignore], [ignore])
+AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CPPFLAGS $CXXFLAGS -o prog prog.$OBJEXT libalib.la, [0], [ignore], [ignore])
 
 LT_AT_EXEC_CHECK([./prog], [0], [ignore], [ignore])
 
@@ -196,37 +196,51 @@ int main()
 
 cd obj
 
+# If the compiler supports -c -o, we want to use it:
+# it may make a difference for templates
+eval `$LIBTOOL --tag=CXX --config | grep ^compiler_c_o=`
+case $compiler_c_o in
+yes)
+  main_o=sub/main.$OBJEXT
+  AT_CHECK($CXX $CPPFLAGS $CXXFLAGS -c -o $main_o ../src/sub/main.cpp, [0], [ignore], [ignore])
+  ;;
+*)
+  main_o=main.$OBJEXT
+  AT_CHECK($CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp, [0], [ignore], [ignore])
+  ;;
+esac
+
 AT_CHECK($LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib/a.lo ../src/lib/a.cpp, [0], [ignore], [ignore])
 AT_CHECK($LIBTOOL --tag=CXX --mode=compile $CXX $CPPFLAGS $CXXFLAGS -c -o lib2/b.lo ../src/lib2/b.cpp, [0], [ignore], [ignore])
-AT_CHECK($CXX $CPPFLAGS $CXXFLAGS -c -o sub/main.o ../src/sub/main.cpp, [0], [ignore], [ignore])
+AT_CHECK($CXX $CPPFLAGS $CXXFLAGS -c ../src/sub/main.cpp, [0], [ignore], [ignore])
 # both convenience
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib/liba.la lib/a.lo, [0], [ignore], [ignore])
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib2/libb.la lib2/b.lo, [0], [ignore], [ignore])
-AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main sub/main.o lib2/libb.la lib/liba.la, [0], [ignore], [ignore])
+AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la, [0], [ignore], [ignore])
 LT_AT_EXEC_CHECK([./sub/main], [ignore])
 # lib convenience
 case $host in
   *-*-darwin*) ;;
   *)   AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib2/libb.la lib2/b.lo -rpath /foo, [0], [ignore], [ignore])
-       AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main sub/main.o lib2/libb.la lib/liba.la, [0], [ignore], [ignore])
+       AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la, [0], [ignore], [ignore])
        LT_AT_EXEC_CHECK([./sub/main])
        ;;
 esac
 # both installed
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib/liba.la lib/a.lo -rpath /foo, [0], [ignore], [ignore])
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib2/libb.la lib2/b.lo -rpath /bar, [0], [ignore], [ignore])
-AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main sub/main.o lib2/libb.la lib/liba.la, [0], [ignore], [ignore])
+AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main $main_o lib2/libb.la lib/liba.la, [0], [ignore], [ignore])
 LT_AT_EXEC_CHECK([./sub/main])
 # both convenience, libb depending on liba
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib/liba.la lib/a.lo, [0], [ignore], [ignore])
 AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la, [0], [ignore], [ignore])
-AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main sub/main.o lib2/libb.la, [0], [ignore], [ignore])
+AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main $main_o lib2/libb.la, [0], [ignore], [ignore])
 LT_AT_EXEC_CHECK([./sub/main])
 # lib convenience
 case $host in
   *-*-darwin*) ;;
   *)   AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /foo, [0], [ignore], [ignore])
-       AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main sub/main.o lib2/libb.la, [0], [ignore], [ignore])
+       AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main $main_o lib2/libb.la, [0], [ignore], [ignore])
        LT_AT_EXEC_CHECK([./sub/main])
        ;;
 esac
@@ -234,7 +248,7 @@ esac
 case $host in
   *-*-darwin*) ;;
   *)   AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o lib2/libb.la lib2/b.lo lib/liba.la -rpath /bar, [0], [ignore], [ignore])
-       AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main sub/main.o lib2/libb.la, [0], [ignore], [ignore])
+       AT_CHECK($LIBTOOL --tag=CXX --mode=link $CXX $CXXFLAGS -o sub/main $main_o lib2/libb.la, [0], [ignore], [ignore])
        LT_AT_EXEC_CHECK([./sub/main])
        ;;
 esac