]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
* doc/libtool.texi (Invoking libtool): Document `--tag'.
authorRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sat, 27 Jan 2007 17:28:14 +0000 (17:28 +0000)
committerRalf Wildenhues <Ralf.Wildenhues@gmx.de>
Sat, 27 Jan 2007 17:28:14 +0000 (17:28 +0000)
(Tags): New node, backported from HEAD.
(Other languages): Adjust.
* NEWS: Update.

ChangeLog
NEWS
doc/libtool.texi

index 5c92456100e3b47d7399916d101ad9eabce9849e..524ae09fccc8e499f7bbc3b07f1bbbfcaa7bba0b 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2007-01-27  Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>
+
+       * doc/libtool.texi (Invoking libtool): Document `--tag'.
+       (Tags): New node, backported from HEAD.
+       (Other languages): Adjust.
+       * NEWS: Update.
+
 2007-01-27  James Su <james.su@gmail.com>
 
        * libltdl/ltdl.c (lt_dlmutex_register): Fix usage of old unlock
diff --git a/NEWS b/NEWS
index 2ab281c3d4e1a4ea561cbe77dc8b2a2ab172adc3..81e15761b41ba59f31644e5c324ca9a53f30d08d 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -14,6 +14,8 @@ New in 1.5.23a: 2006-??-??; CVS version 1.5.23a, Libtool team:
 * Initial support for the Sun compiler suite on GNU/Linux.
 * Improved support for GNU/kFreeBSD and GNU/NetBSD.
 * Search paths with GCC on multilib systems like x86_64 have been fixed.
+* The libtool --tag argument which has been supported since version 1.5
+  is documented now.
 * Bug Fixes.
 \f
 New in 1.5.22: 2005-12-18; CVS version 1.5.21a, Libtool team:
index f816e2c6817e905beafa81a7cd503410642bfe6e..a2bf7f84710a1506e18b1e7f4025412277517133 100644 (file)
@@ -172,7 +172,8 @@ Using libltdl
 
 Using libtool with other languages
 
-* C++ libraries::
+* C++ libraries::               Writing libraries for C++
+* Tags::                        Tags
 
 Troubleshooting
 
@@ -1066,6 +1067,9 @@ be executed by libtool.
 Display basic configuration options.  This provides a way for packages
 to determine whether shared or static libraries will be built.
 
+@item --tag=@var{tag}
+Use configuration variables from tag @var{tag} (@pxref{Tags}).
+
 @item --preserve-dup-deps
 Do not remove duplicate dependencies in libraries.  When building packages
 with static libraries, the libraries may depend circularly on each other
@@ -3652,7 +3656,8 @@ This chapter describes how libtool interacts with other languages,
 and what special considerations you need to make if you do not use C.
 
 @menu
-* C++ libraries::
+* C++ libraries::               Writing libraries for C++
+* Tags::                        Tags
 @end menu
 
 @node C++ libraries
@@ -3693,6 +3698,42 @@ compiled with the C++ compiler for static C++ objects to be properly
 initialized.
 
 
+@node Tags
+@section Tags
+@cindex tag names
+@cindex language names
+@cindex inferring tags
+
+Libtool supports multiple languages through the use of tags.  Technically
+a tag corresponds to a set of configuration variables associated with a
+language.  These variables tell @command{libtool} how it should create
+objects and libraries for each language.
+
+Tags are defined at @command{configure}-time for each language activated
+in the package.  Here is the correspondence between language names and tags
+names.
+
+@multitable {Windows Resource} {Tag name}
+@item Language name    @tab Tag name
+@item C                @tab CC
+@item C++              @tab CXX
+@item Java             @tab GCJ
+@item Fortran 77       @tab F77
+@item Windows Resource @tab RC
+@end multitable
+
+@command{libtool} tries to automatically infer which tag to use from
+the compiler command being used to compile or link.  If it can't infer
+a tag, then it defaults to the configuration for the @code{C} language.
+
+The tag can also be specified using @command{libtool}'s
+@option{--tag=@var{tag}} option (@pxref{Invoking libtool}).  It is a good
+idea to do so in @file{Makefile} rules, because that will allow users to
+substitute the compiler without relying on @command{libtool} inference
+heuristics.  When no tag is specified, @command{libtool} will default
+to @code{CC}; this tag always exists.
+
+
 @node Troubleshooting
 @chapter Troubleshooting
 @cindex troubleshooting