diff --git a/ChangeLog b/ChangeLog index 8821d081..6a03f42f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-10-25 Robert Boehne + + * ltmain.in (-XCClinker): New flag passes a linking option + directly to the compiler driver without appending ${wl}. + 2002-10-25 Gary V. Vaughan * README-alpha: Add some release not templates for inspiration and diff --git a/doc/libtool.texi b/doc/libtool.texi index 5ca45e72..f002e8d5 100644 --- a/doc/libtool.texi +++ b/doc/libtool.texi @@ -1144,10 +1144,11 @@ suffix (e.g. @samp{.c} for C source code) with the library object suffix, @samp{.lo}. If shared libraries are being built, any necessary PIC generation flags -are substituted into the compilation command. -You can pass compiler and linker specific flags using @samp{-Wc,@var{flag}} -and @samp{-Xcompiler @var{flag}} or @samp{-Wl,@var{flag}} and -@samp{-Xlinker @var{flag}}, respectively. +are substituted into the compilation command. You can pass link specific +flags to the compiler driver using @samp{-XCClinker @var{flag}} or pass +linker flags with @samp{-Wl,@var{flag}} and @samp{-Xlinker @var{flag}}. +You can also pass compile specific flags using @samp{-Wc,@var{flag}} +and @samp{-Xcompiler @var{flag}}. If the @samp{-static} option is given, then a @samp{.o} file is built, even if libtool was configured with @samp{--disable-static}. @@ -1298,6 +1299,9 @@ release information, rather see the @samp{-release} flag. @item -Wl,@var{flag} @itemx -Xlinker @var{flag} Pass a linker specific flag directly to the linker. + +@item -XCClinker @var{flag} +Pass a link specific flag to the compiler driver (@var{CC}) during linking. @end table If the @var{output-file} ends in @samp{.la}, then a libtool library is diff --git a/ltmain.in b/ltmain.in index 4ef72e71..13001420 100644 --- a/ltmain.in +++ b/ltmain.in @@ -1089,6 +1089,14 @@ EOF finalize_command="$finalize_command $wl$qarg" continue ;; + xcclinker) + linker_flags="$linker_flags $qarg" + compiler_flags="$compiler_flags $qarg" + prev= + compile_command="$compile_command $qarg" + finalize_command="$finalize_command $qarg" + continue + ;; *) eval "$prev=\"\$arg\"" prev= @@ -1357,6 +1365,11 @@ EOF continue ;; + -XCClinker) + prev=xcclinker + continue + ;; + # Some other compiler flag. -* | +*) # Unknown arguments in both finalize_command and compile_command need