[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[patch 14/19] 298-gary-document-libltdl-build-modes.diff Queue
From: |
Gary V. Vaughan |
Subject: |
[patch 14/19] 298-gary-document-libltdl-build-modes.diff Queue |
Date: |
Mon, 10 Oct 2005 11:26:38 +0100 |
User-agent: |
quilt/0.42-1 |
doc/libtool.texi | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 90 insertions(+), 2 deletions(-)
Index: libtool--devo--1.0/ChangeLog
from Gary V. Vaughan <address@hidden>
* tests/testsuite.at (_LTDL_PROJECT_FILES): Factored out from
common code to build a basic libltdl using project.
* tests/old-m4-iface.at, tests/standalone.at, tests/subproject.at:
Use it.
* doc/libtool.texi (Distributing libltdl): Document correct use of
LT_CONFIG_LTDL_DIR mode argument with Autoconf and Automake.
Index: libtool--devo--1.0/doc/libtool.texi
===================================================================
--- libtool--devo--1.0.orig/doc/libtool.texi
+++ libtool--devo--1.0/doc/libtool.texi
@@ -4186,10 +4186,98 @@ or against both a local convenience libr
is bad. Ensuring that only one copy of the libltdl sources are linked
into any program is left as an exercise for the reader.
address@hidden LT_CONFIG_LTDL_DIR (@var{DIRECTORY})
address@hidden LT_CONFIG_LTDL_DIR (@var{DIRECTORY}. @var{LTDL-MODE})
Declare @var{DIRECTORY} to be the location of the @code{libltdl}
source files, for @command{libtoolize --ltdl} to place
-them. @xref{Invoking libtoolize}, for more details.
+them. @xref{Invoking libtoolize}, for more details. Providing that you
+add an appropriate @code{LT_CONFIG_LTDL} call in your
address@hidden before calling @command{libtoolize}, then the
+appropriate @code{libltdl} files will be installed automatically without
+manually specifying the mode to @command{libtoolize} explicitly.
+
address@hidden can be either @samp{nonrecursive}, @samp{recursive}, or
address@hidden depending on how you wish for your project to build
address@hidden:
+
address@hidden @samp
address@hidden nonrecursive
+This is how the Libtool project distribution builds the @code{libltdl}
+we ship and install. If you wish to use Automake to build
address@hidden without invoking a recursive make to descend into the
address@hidden subdirectory, then use this option. You will need to set
+your configuration up carefully to make this work properly, and you will
+need a release of Automake that supports @code{subdir-objects}. In your
address@hidden, add:
+
address@hidden
+LT_CONFIG_LTDL_DIR([libltdl], [nonrecursive])
+AM_PROG_CC_C_O
+AM_INIT_AUTOMAKE([subdir-objects])
+LT_WITH_LTDL
address@hidden example
+
address@hidden
+And add the following near the top of your @file{Makefile.am}:
+
address@hidden
+BUILT_SOURCES =
+EXTRA_DIST =
+CLEANFILES =
+MOSTLYCLEANFILES =
+
+include libltdl/Makefile.inc
address@hidden example
+
address@hidden
+Unless you don't build any other libraries from this @file{Makefile.am},
+you will also need to change @code{lib_LTLIBRARIES} to assign with
address@hidden so that the @code{libltdl} targets declared in
address@hidden are not overwritten.
+
address@hidden recursive
+This build mode still requires that you use Automake, but (in contrast
+with @samp{nonrecursive}) uses the more usual device of starting another
address@hidden process in the @file{libltdl} subdirectory. To use this
+mode, you should add to your @file{configure.ac}:
+
address@hidden
+LT_CONFIG_LTDL_DIR([libltdl], [recursive])
+AM_INIT_AUTOMAKE
+LT_WITH_LTDL
+AC_CONFIG_FILES([libltdl/Makefile])
address@hidden example
+
address@hidden
+and to your @file{Makefile.am}:
+
address@hidden
+SUBDIRS = libltdl
address@hidden example
+
address@hidden subproject
+This mode is the default unless you declare otherwise with
address@hidden, and is the only mode supported by previous
+releases of Libtool. If you do not use Autoconf in the parent project,
+then @samp{subproject} mode @code{libltdl} contains all the necessary
+files to configure and build itself -- you just need to arrange for your
+build system to call @file{libltdl/configure} with appropriate options,
+and then run @code{make} in the @code{libltdl} subdirectory.
+
+If you @emph{are} using Autoconf and Automake, then you will need to add
+the following to your @file{configure.ac}:
+
address@hidden
+LT_CONFIG_LTDL_DIR([libltdl], [subproject])
+LT_WITH_LTDL
address@hidden example
+
address@hidden
+and to @file{Makefile.am}:
+
address@hidden
+SUBDIRS = libltdl
address@hidden example
address@hidden table
@end defmac
@defmac LT_WITH_LTDL
--
Gary V. Vaughan ())_. address@hidden,gnu.org}
Research Scientist ( '/ http://tkd.kicks-ass.net
GNU Hacker / )= http://www.gnu.org/software/libtool
Technical Author `(_~)_ http://sources.redhat.com/autobook
- Re: [patch 09/19] 293-gary-default-convenience-ltdl.diff Queue, (continued)
[patch 10/19] 294-gary-libltdl-configure-messages.diff Queue, Gary V. Vaughan, 2005/10/10
[patch 11/19] 295-gary-dont-force-ac-config-headers-on-subproject-ltdl.diff Queue, Gary V. Vaughan, 2005/10/10
[patch 12/19] 296-gary-ltdl-recursive-tests.diff Queue, Gary V. Vaughan, 2005/10/10
[patch 14/19] 298-gary-document-libltdl-build-modes.diff Queue,
Gary V. Vaughan <=
[patch 15/19] 299-gary-refactor-autotests.diff Queue, Gary V. Vaughan, 2005/10/10
[patch 16/19] 1-ralf-fix-ltdl-config-dist.diff Queue, Gary V. Vaughan, 2005/10/10
[patch 17/19] 287-gary-implicit-libtoolize-ltdl.diff Queue, Gary V. Vaughan, 2005/10/10
[patch 18/19] 300-gary-simplify-tests.diff Queue, Gary V. Vaughan, 2005/10/10