]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
* NEWS: updated
authorThomas Tanner <tanner@ffii.org>
Tue, 2 Nov 1999 12:36:23 +0000 (12:36 +0000)
committerThomas Tanner <tanner@gmx.de>
Tue, 2 Nov 1999 12:36:23 +0000 (12:36 +0000)
* ltmain.in: preserve $CC (reported by Tom Tromey)
* ltconfig.in: remove second occurence of sysv5
* libltdl/Makefile.am: increment version number, fix typo
* libltdl/ltdl.c (lt_dlsym): don't report an error if the
  libltdl-style symbol name wasn't found

* ltconfig.in: add support for Unixware (sysv4.2uw2*)

* ltmain.in (-DPIC):  changed the order of pic flags a little to
prevent upsetting the sgi c++ compiler.

* libltdl/Makefile.am: don't preserve file attributes when
  installing the libltdl sources

* ltconfig.in (whole-archive-flag-spec):  I had been
wondering why my file system was filling up with empty
files named `71'... seems I forgot to hold in the
shift key when redirecting stderr, 2>&1.  Doh!

* ltconfig.in (sysv):  More UW7 support.

* ltconfig.in (sysv5): Added support required for shared
library linking on SCO UW7.

* ltconfig.in (CDPATH): Set to `:' instead of empty.
* ltmain.in (CDPATH): Likewise.
Reported by Greg McGary <gkm@eng.ascend.com>

* ltconfig.in: use CC -E when checking for ELF support
  on NetBSD (reported by Todd Vierling <tv@pobox.com>)

* ltconfig.in: add support for UnixWare 7.X.X

* doc/libtool.texi: document use of noinst_LTLIBRARIES for
  convenience libraries

* ltconfig.in: check for freebsdelf3, not just freebsd3

* ltmain.in: enable workaround for freebsdelf3.0

* ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS

* libltdl/COPYING.LIB: Update to version 2.1.
* libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.

* doc/libtool.texi (Compile mode): typo correction.
(Link mode): and another.
(Release numbers):  and another.
(Distributing libltdl): and another.
(Test descriptions): and another.
(libtool script contents): and one more.

* ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
initialised structures are sometimes emitted in the code section.

* ltmain.in: Fix creation of relative links to object files in
sub-dirs.

* ltconfig.in:  Updated bsdi4 soname specs to be more like
linux as discussed on the bsdi mailing list.

* doc/libtool.texi (Porting inter-library dependencies): Typos
Reported by Petter Reinholdtsen <pere@hungry.com>

* libltdl/README: document the supported dlopen interfaces

* doc/libtool.texi (C++ Libraries):  fixed a typo.

* README-alpha:  improved the release instructions to mention
actual list addresses for announcements, and urls for upload
locations.

* ltconfig.in: finish_cmds for FreeBSD removed

14 files changed:
AUTHORS
ChangeLog
NEWS
README-alpha
configure.in
doc/libtool.texi
libltdl/COPYING.LIB
libltdl/Makefile.am
libltdl/README
libltdl/ltdl.c
libltdl/ltdl.h
ltconfig.in
ltmain.in
tests/noinst-link.test

diff --git a/AUTHORS b/AUTHORS
index 07a41d41d6f1660f781c6f23a20d56c75ed3d5d7..4efc2aa2ace824fb8a271a20a0450ef4cf7d367e 100644 (file)
--- a/AUTHORS
+++ b/AUTHORS
@@ -5,4 +5,4 @@ Foundation.
 Gordon Matzigkeit.  Designed and implemented libtool.
 Alexandre Oliva <oliva@dcc.unicamp.br>.  Co-maintainer.
 Thomas Tanner <tanner@ffii.org>.  Co-maintainer.
-Gary V. Vaughan <gary@oranda.demon.co.uk>.  Co-maintainer.
+Gary V. Vaughan <garyv@oranda.demon.co.uk>.  Co-maintainer.
index 82ff70d87703221df283b54f40d0b71408188d84..3a4567b70bad462c7d5ef415cdba756bd48ca74c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,122 @@
+1999-11-02  Thomas Tanner  <tanner@ffii.org>
+
+       * NEWS: updated
+       * ltmain.in: preserve $CC (reported by Tom Tromey)
+       * ltconfig.in: remove second occurence of sysv5
+       * libltdl/Makefile.am: increment version number, fix typo
+       * libltdl/ltdl.c (lt_dlsym): don't report an error if the
+         libltdl-style symbol name wasn't found
+
+1999-11-02  Wolfgang Rapp <ulris@bn-ulm.de>
+
+       * ltconfig.in: add support for Unixware (sysv4.2uw2*)
+
+1999-10-28  Stephane Conversy  <Stephane.Conversy@lri.fr>
+
+       * ltmain.in (-DPIC):  changed the order of pic flags a little to
+       prevent upsetting the sgi c++ compiler.
+
+1999-10-03  Pavel Roskin  <pavel_roskin@geocities.com>
+
+       * libltdl/Makefile.am: don't preserve file attributes when
+         installing the libltdl sources
+
+1999-09-29  Gary V. Vaughan  <gary@oranda.demon.co.uk>
+
+       * ltconfig.in (whole-archive-flag-spec):  I had been
+       wondering why my file system was filling up with empty
+       files named `71'... seems I forgot to hold in the
+       shift key when redirecting stderr, 2>&1.  Doh!
+
+1999-09-29  Vadim  <vadim@olly.ru>
+
+       * ltconfig.in (sysv):  More UW7 support.
+
+1999-09-27  Manfred Weichel  <weichel@global.nacamar.de>
+
+       * ltconfig.in (sysv5): Added support required for shared
+       library linking on SCO UW7.
+
+1999-09-14  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
+
+       * ltconfig.in (CDPATH): Set to `:' instead of empty.
+       * ltmain.in (CDPATH): Likewise.
+       Reported by Greg McGary <gkm@eng.ascend.com>
+
+1999-08-24  Thomas Tanner  <tanner@ffii.org>
+
+       * ltconfig.in: use CC -E when checking for ELF support
+         on NetBSD (reported by Todd Vierling <tv@pobox.com>)
+
+1999-08-24  Boyd Gerber  <gerberb@zenez.com>
+
+       * ltconfig.in: add support for UnixWare 7.X.X
+
+1999-08-24  Pavel Roskin  <pavel_roskin@geocities.com>
+
+       * doc/libtool.texi: document use of noinst_LTLIBRARIES for
+         convenience libraries
+       
+       * ltconfig.in: check for freebsdelf3, not just freebsd3
+
+       * ltmain.in: enable workaround for freebsdelf3.0
+
+1999-08-24  Bert Driehuis  <bert_driehuis@nl.compuware.com>
+
+       * ltconfig.in: export_dynamic_flag_spec is -rdynamic on BSD/OS
+
+1999-08-07  Alexandre Oliva  <oliva@dcc.unicamp.br>
+
+       * libltdl/COPYING.LIB: Update to version 2.1.
+       * libltdl/ltdl.h, libltdl/ltdl.c: Update FSF address.
+
+1999-08-02  Olly Betts  <olly@muscat.co.uk>
+
+       * doc/libtool.texi (Compile mode): typo correction.
+       (Link mode): and another.
+       (Release numbers):  and another.
+       (Distributing libltdl): and another.
+       (Test descriptions): and another.
+       (libtool script contents): and one more.
+
+1999-07-30  Pavel Roskin  <pavel_roskin@geocities.com>
+
+       * ltmain.in: Ensure that gcc on HPsUX uses -fPIC, or else
+       initialised structures are sometimes emitted in the code section.
+
+1999-07-29  Alexandre Oliva  <oliva@dcc.unicamp.br>
+
+       * ltmain.in: Fix creation of relative links to object files in
+       sub-dirs.
+
+1999-07-24  Bert Driehuis <bert_driehuis@compuware.com>
+
+       * ltconfig.in:  Updated bsdi4 soname specs to be more like
+       linux as discussed on the bsdi mailing list.
+
+1999-07-19  Alexandre Oliva  <oliva@dcc.unicamp.br>
+
+       * doc/libtool.texi (Porting inter-library dependencies): Typos
+       Reported by Petter Reinholdtsen <pere@hungry.com>
+
+1999-07-17  Thomas Tanner  <tanner@ffii.org>
+
+       * libltdl/README: document the supported dlopen interfaces
+
+1999-07-09  Olly Betts  <olly@muscat.co.uk>
+
+       * doc/libtool.texi (C++ Libraries):  fixed a typo.
+
+1999-07-06  Gary V. Vaughan  <gary@oranda.demon.co.uk>
+
+       * README-alpha:  improved the release instructions to mention
+       actual list addresses for announcements, and urls for upload
+       locations.
+
+1999-07-03  Pavel Roskin <pavel_roskin@geocities.com>
+
+       * ltconfig.in: finish_cmds for FreeBSD removed
+
 1999-10-16  Alexandre Oliva  <oliva@lsd.ic.unicamp.br>
 
        * libltdl/ltdl.c (lt_dlopen): Do not search paths when the
diff --git a/NEWS b/NEWS
index c32e82a37757b90fce6b7f407d57876c4b23803a..b2e6a88c8015918d5d17d21c953bf27904c30eee 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -1,7 +1,8 @@
 NEWS - list of user-visible changes between releases of GNU Libtool
 
-New in 1.3.4: ????-??-??, CVS version 1.3.3a, Libtool team:
+New in 1.3.4: 1999-??-??, CVS version 1.3.3a, Libtool team:
 * Support for Compaq Tru64 V5.0.
+* Improved support for NetBSD, FreeBSD and Unixware.
 * Many fine bugfixes.
 \f
 New in 1.3.3: 1999-07-02, CVS version 1.3.2a, Libtool team:
index 7d024c5a9e9d092de04356539ab48d59e0f014b9..882e491eef204e25e33ac28bfbc2fee73912a9ee 100644 (file)
@@ -67,10 +67,25 @@ using (by typing `ltconfig --version').
 
 * Commit
 
-* Run `make cvs-dist'
+* Run `make cvs-dist' which will tag the tree with release-maj-min<alpha>.
 
-* Put new release on ftp site and send announcement.
-  (If not an alpha, announcement must also go to FSF.)
+* Run `make cvs-diff' which will create a diff file against the previous
+  release tag (set OLDVERSION=min.maj<alpha> in the environment beforehand
+  if necessary).
+
+* Get a copy of the previous release tarball (by reverse applying the diff,
+  or downloading from gnu.org), and generate an xdelta with: 
+
+    xdelta delta libtool-<prev>.tar.gz libtool-<version>.tar.gz > \
+    libtool-<prev>-<version>.tar.xdp.gz'
+
+* Upload release tarball, diff file and xdelta file 
+  ftp://melange/~ftp/gnu/libtool and send announcement to libtool@gnu.org.
+
+* If not an alpha, announcement must also go to info-gnu@gnu.org, and an
+  upload request be sent to ftp-upload@gnu.org requesting files be transferred
+  from ftp://alpha.gnu,org/gnu/libtool to ftp://ftp.gnu.org/gnu/libtool.
 
 * Update version number in configure.in to next alpha number.
-  Commit.
+
+* Commit.
index c21aac014bb6f3988985ee212057470a36e749a9..51086408e1f0e3bc7a8e259d4347d6c4faf287aa 100644 (file)
@@ -2,7 +2,7 @@ dnl Process this file with autoconf to create configure.
 
 AC_INIT(ltmain.in)
 
-AM_INIT_AUTOMAKE(libtool, 1.3.3)
+AM_INIT_AUTOMAKE(libtool, 1.3.3a)
 
 # This is a sanity check so we can see which version is used in bug reports.
 # It is assumed that we only want to see the date extension for cvs libtool
index ae78686b508fe6a18868a9e0a6aca1d80560653d..c5105037e4d67543c0fc2b6114f9366b7e2cd74f 100644 (file)
@@ -670,7 +670,7 @@ burger$ @kbd{gcc -g -O -o hell.old main.o libhello.a -lm}
 burger$
 @end example
 
-Libtool's way is almost the same@footnote{However, you should never use
+Libtool's way is almost the same@footnote{However, you should avoid using
 @samp{-L} or @samp{-l} flags to link against an uninstalled libtool
 library.  Just specify the relative path to the @samp{.la} file, such as
 @file{../intl/libintl.la}.  This is a design decision to eliminate any
@@ -1024,6 +1024,10 @@ libraries.  But be careful not to link a single convenience library,
 directly or indirectly, into a single program or library, otherwise you
 may get errors about symbol redefinitions.
 
+When GNU automake is used, you should use @code{noinst_LTLIBRARIES}\r
+instead of @code{lib_LTLIBRARIES} for convenience libraries, so that\r
+the @samp{-rpath} option is not passed when they are linked.\r
+\r
 As a rule of thumb, link a libtool convenience library into at most one
 libtool library, and never into a program, and link libtool static
 convenience libraries only into programs, and only if you need to carry
@@ -1133,7 +1137,7 @@ that only an object file is created.
 
 Libtool determines the name of the output file by removing the directory
 component from the source file name, then substituting the source code
-suffix (e.g. @samp{.c} for C soure code) with the library object suffix,
+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
@@ -1233,7 +1237,7 @@ This option is required even when @var{output-file} is not an
 executable.
 
 @item -module
-Creates a library that can be dlopenend (@pxref{Dlopened modules}). 
+Creates a library that can be dlopened (@pxref{Dlopened modules}). 
 This option doesn't work for programs.
 Module names don't need to be prefixed with 'lib'.
 In order to prevent name clashes, however, 'libname' and 'name' 
@@ -2223,7 +2227,7 @@ library interface versions, because the library interface rarely changes
 at the same time that the release number does, and the library suffix is
 never the same across all platforms.
 
-So, in order to accomodate both views, you can use the @samp{-release}
+So, in order to accommodate both views, you can use the @samp{-release}
 flag in order to set release information for libraries which you do not
 want to use @samp{-version-info}.  For the @file{libbfd} example, the
 next release which uses libtool should be built with @samp{-release
@@ -3086,7 +3090,7 @@ libtool will assume no dlopening mechanism is supported, and revert to
 dlpreopening, which is probably not what you want.
 
 Avoid using the @code{-static} or @code{-all-static} switches when
-linking programs with libltdl.  This will not work on all plaforms,
+linking programs with libltdl.  This will not work on all platforms,
 because the dlopening functions may not be available for static linking.
 
 The following example shows you how to embed the convenience libltdl in
@@ -3152,7 +3156,7 @@ and what special considerations you need to make if you do not use C.
 @cindex C++, pitfalls
 
 Creating libraries of C++ code should be a fairly straightforward
-process, because its object files differ from C ones in only two ways:
+process, because its object files differ from C ones in only three ways:
 
 @enumerate 1
 @item
@@ -3378,7 +3382,7 @@ This program checks libtool's metacharacter quoting.
 
 @item sh.test
 @pindex sh.test
-Checks whether a `test' command was forgotton in libtool.
+Checks whether a `test' command was forgotten in libtool.
 
 @item suffix.test
 @pindex suffix.test
@@ -3579,7 +3583,7 @@ It causes deplibs to be reassigned deplibs="".  That way
 @samp{archive_cmds} can contain deplibs on all platforms, but not have
 deplibs used unless needed.
 
-@item unkwnon
+@item unknown
 @vindex unknown
 is the default for all systems unless overridden in @file{ltconfig.in}.
 It is the same as @samp{none}, but it documents that we really don't
@@ -3587,7 +3591,7 @@ know what the correct value should be, and we welcome patches that
 improve it.
 @end table
 
-Then in @file{ltmain.in} we have the real workhorse: a litle
+Then in @file{ltmain.in} we have the real workhorse: a little
 initialization and postprocessing (to setup/release variables for use
 with eval echo libname_spec etc.) and a case statement that decides
 which method is being used.  This is the real code... I wish I could
@@ -4001,7 +4005,7 @@ Set to @samp{yes} or @samp{no}.  By default, it is @samp{unknown}, which
 means the same as @samp{yes}, but documents that we are not really sure
 about it.
 @samp{yes} means that it is possible both to @code{dlopen} and to
-link against a library wihthout 'lib' prefix,
+link against a library without 'lib' prefix,
 i.e. it requires @var{hardcode_direct} to be @samp{yes}.
 @end defvar
 
index eb685a5ec981b949faa391ad3fc395cd42932510..c4792dd27a32d2ce510ec3e6ea008d87a7bdbe9a 100644 (file)
-                 GNU LIBRARY GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
 
- Copyright (C) 1991 Free Software Foundation, Inc.
-                    675 Mass Ave, Cambridge, MA 02139, USA
+                  GNU LESSER GENERAL PUBLIC LICENSE
+                       Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+     59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  Everyone is permitted to copy and distribute verbatim copies
  of this license document, but changing it is not allowed.
 
-[This is the first released version of the library GPL.  It is
- numbered 2 because it goes with version 2 of the ordinary GPL.]
+[This is the first released version of the Lesser GPL.  It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
 
-                           Preamble
+                            Preamble
 
   The licenses for most software are designed to take away your
 freedom to share and change it.  By contrast, the GNU General Public
 Licenses are intended to guarantee your freedom to share and change
 free software--to make sure the software is free for all its users.
 
-  This license, the Library General Public License, applies to some
-specially designated Free Software Foundation software, and to any
-other libraries whose authors decide to use it.  You can use it for
-your libraries, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
+  This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it.  You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations
+below.
+
+  When we speak of free software, we are referring to freedom of use,
+not price.  Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
 
   To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if
-you distribute copies of the library, or if you modify it.
+distributors to deny you these rights or to ask you to surrender these
+rights.  These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
 
   For example, if you distribute copies of the library, whether gratis
 or for a fee, you must give the recipients all the rights that we gave
 you.  You must make sure that they, too, receive or can get the source
-code.  If you link a program with the library, you must provide
-complete object files to the recipients so that they can relink them
-with the library, after making changes to the library and recompiling
+code.  If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
 it.  And you must show them these terms so they know their rights.
 
-  Our method of protecting your rights has two steps: (1) copyright
-the library, and (2) offer you this license which gives you legal
+  We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
 permission to copy, distribute and/or modify the library.
 
-  Also, for each distributor's protection, we want to make certain
-that everyone understands that there is no warranty for this free
-library.  If the library is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original
-version, so that any problems introduced by others will not reflect on
-the original authors' reputations.
-\f
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that companies distributing free
-software will individually obtain patent licenses, thus in effect
-transforming the program into proprietary software.  To prevent this,
-we have made it clear that any patent must be licensed for everyone's
-free use or not licensed at all.
-
-  Most GNU software, including some libraries, is covered by the ordinary
-GNU General Public License, which was designed for utility programs.  This
-license, the GNU Library General Public License, applies to certain
-designated libraries.  This license is quite different from the ordinary
-one; be sure to read it in full, and don't assume that anything in it is
-the same as in the ordinary license.
-
-  The reason we have a separate public license for some libraries is that
-they blur the distinction we usually make between modifying or adding to a
-program and simply using it.  Linking a program with a library, without
-changing the library, is in some sense simply using the library, and is
-analogous to running a utility program or application program.  However, in
-a textual and legal sense, the linked executable is a combined work, a
-derivative of the original library, and the ordinary General Public License
-treats it as such.
-
-  Because of this blurred distinction, using the ordinary General
-Public License for libraries did not effectively promote software
-sharing, because most developers did not use the libraries.  We
-concluded that weaker conditions might promote sharing better.
-
-  However, unrestricted linking of non-free programs would deprive the
-users of those programs of all benefit from the free status of the
-libraries themselves.  This Library General Public License is intended to
-permit developers of non-free programs to use free libraries, while
-preserving your freedom as a user of such programs to change the free
-libraries that are incorporated in them.  (We have not seen how to achieve
-this as regards changes in header files, but we have achieved it as regards
-changes in the actual functions of the Library.)  The hope is that this
-will lead to faster development of free libraries.
+  To protect each distributor, we want to make it very clear that
+there is no warranty for the free library.  Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+^L
+  Finally, software patents pose a constant threat to the existence of
+any free program.  We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder.  Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+  Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License.  This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License.  We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+  When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library.  The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom.  The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+  We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License.  It also provides other free software developers Less
+of an advantage over competing non-free programs.  These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries.  However, the Lesser license provides advantages in certain
+special circumstances.
+
+  For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it
+becomes
+a de-facto standard.  To achieve this, non-free programs must be
+allowed to use the library.  A more frequent case is that a free
+library does the same job as widely used non-free libraries.  In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+  In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software.  For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+  Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
 
   The precise terms and conditions for copying, distribution and
 modification follow.  Pay close attention to the difference between a
 "work based on the library" and a "work that uses the library".  The
-former contains code derived from the library, while the latter only
-works together with the library.
-
-  Note that it is possible for a library to be covered by the ordinary
-General Public License rather than by this special one.
-\f
-                 GNU LIBRARY GENERAL PUBLIC LICENSE
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+^L
+                  GNU LESSER GENERAL PUBLIC LICENSE
    TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
 
-  0. This License Agreement applies to any software library which
-contains a notice placed by the copyright holder or other authorized
-party saying it may be distributed under the terms of this Library
-General Public License (also called "this License").  Each licensee is
-addressed as "you".
+  0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
 
   A "library" means a collection of software functions and/or data
 prepared so as to be conveniently linked with application programs
@@ -123,7 +139,8 @@ included without limitation in the term "modification".)
   "Source code" for a work means the preferred form of the work for
 making modifications to it.  For a library, complete source code means
 all the source code for all modules it contains, plus any associated
-interface definition files, plus the scripts used to control compilation
+interface definition files, plus the scripts used to control
+compilation
 and installation of the library.
 
   Activities other than copying, distribution and modification are not
@@ -133,7 +150,7 @@ such a program is covered only if its contents constitute a work based
 on the Library (independent of the use of the Library in a tool for
 writing it).  Whether that is true depends on what the Library does
 and what the program that uses the Library does.
-  
+
   1. You may copy and distribute verbatim copies of the Library's
 complete source code as you receive it, in any medium, provided that
 you conspicuously and appropriately publish on each copy an
@@ -203,7 +220,7 @@ instead of to this License.  (If a newer version than version 2 of the
 ordinary GNU General Public License has appeared, then you can specify
 that version instead if you wish.)  Do not make any other change in
 these notices.
-\f
+^L
   Once this change is made in a given copy, it is irreversible for
 that copy, so the ordinary GNU General Public License applies to all
 subsequent copies and derivative works made from that copy.
@@ -254,8 +271,8 @@ Library will still fall under Section 6.)
 distribute the object code for the work under the terms of Section 6.
 Any executables containing that work also fall under Section 6,
 whether or not they are linked directly with the Library itself.
-\f
-  6. As an exception to the Sections above, you may also compile or
+^L
+  6. As an exception to the Sections above, you may also combine or
 link a "work that uses the Library" with the Library to produce a
 work containing portions of the Library, and distribute that work
 under terms of your choice, provided that the terms permit
@@ -282,23 +299,31 @@ of these things:
     Library will not necessarily be able to recompile the application
     to use the modified definitions.)
 
-    b) Accompany the work with a written offer, valid for at
+    b) Use a suitable shared library mechanism for linking with the
+    Library.  A suitable mechanism is one that (1) uses at run time a
+    copy of the library already present on the user's computer system,
+    rather than copying library functions into the executable, and (2)
+    will operate properly with a modified version of the library, if
+    the user installs one, as long as the modified version is
+    interface-compatible with the version that the work was made with.
+
+    c) Accompany the work with a written offer, valid for at
     least three years, to give the same user the materials
     specified in Subsection 6a, above, for a charge no more
     than the cost of performing this distribution.
 
-    c) If distribution of the work is made by offering access to copy
+    d) If distribution of the work is made by offering access to copy
     from a designated place, offer equivalent access to copy the above
     specified materials from the same place.
 
-    d) Verify that the user has already received a copy of these
+    e) Verify that the user has already received a copy of these
     materials or that you have already sent this user a copy.
 
   For an executable, the required form of the "work that uses the
 Library" must include any data and utility programs needed for
 reproducing the executable from it.  However, as a special exception,
-the source code distributed need not include anything that is normally
-distributed (in either source or binary form) with the major
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
 components (compiler, kernel, and so on) of the operating system on
 which the executable runs, unless that component itself accompanies
 the executable.
@@ -308,7 +333,7 @@ restrictions of other proprietary libraries that do not normally
 accompany the operating system.  Such a contradiction means you cannot
 use both them and the Library together in an executable that you
 distribute.
-\f
+^L
   7. You may place library facilities that are a work based on the
 Library side-by-side in a single library together with other library
 facilities not covered by this License, and distribute such a combined
@@ -347,9 +372,9 @@ Library), the recipient automatically receives a license from the
 original licensor to copy, distribute, link with or modify the Library
 subject to these terms and conditions.  You may not impose any further
 restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
+You are not responsible for enforcing compliance by third parties with
 this License.
-\f
+^L
   11. If, as a consequence of a court judgment or allegation of patent
 infringement or for any other reason (not limited to patent issues),
 conditions are imposed on you (whether by court order, agreement or
@@ -363,9 +388,10 @@ all those who receive copies directly or indirectly through you, then
 the only way you could satisfy both it and this License would be to
 refrain entirely from distribution of the Library.
 
-If any portion of this section is held invalid or unenforceable under any
-particular circumstance, the balance of the section is intended to apply,
-and the section as a whole is intended to apply in other circumstances.
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply, and the section as a whole is intended to apply in other
+circumstances.
 
 It is not the purpose of this section to induce you to infringe any
 patents or other property right claims or to contest validity of any
@@ -383,14 +409,14 @@ be a consequence of the rest of this License.
 
   12. If the distribution and/or use of the Library is restricted in
 certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Library under this License may add
-an explicit geographical distribution limitation excluding those countries,
-so that distribution is permitted only in or among countries not thus
-excluded.  In such case, this License incorporates the limitation as if
-written in the body of this License.
+original copyright holder who places the Library under this License
+may add an explicit geographical distribution limitation excluding those
+countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
 
   13. The Free Software Foundation may publish revised and/or new
-versions of the Library General Public License from time to time.
+versions of the Lesser General Public License from time to time.
 Such new versions will be similar in spirit to the present version,
 but may differ in detail to address new problems or concerns.
 
@@ -401,7 +427,7 @@ conditions either of that version or of any later version published by
 the Free Software Foundation.  If the Library does not specify a
 license version number, you may choose any version ever published by
 the Free Software Foundation.
-\f
+^L
   14. If you wish to incorporate parts of the Library into other free
 programs whose distribution conditions are incompatible with these,
 write to the author to ask for permission.  For software which is
@@ -411,7 +437,7 @@ decision will be guided by the two goals of preserving the free status
 of all derivatives of our free software and of promoting the sharing
 and reuse of software generally.
 
-                           NO WARRANTY
+                            NO WARRANTY
 
   15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
 WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
@@ -434,48 +460,56 @@ FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
 SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
 DAMAGES.
 
-                    END OF TERMS AND CONDITIONS
-\f
-     Appendix: How to Apply These Terms to Your New Libraries
+                     END OF TERMS AND CONDITIONS
+^L
+           How to Apply These Terms to Your New Libraries
 
   If you develop a new library, and you want it to be of the greatest
 possible use to the public, we recommend making it free software that
 everyone can redistribute and change.  You can do so by permitting
-redistribution under these terms (or, alternatively, under the terms of the
-ordinary General Public License).
+redistribution under these terms (or, alternatively, under the terms
+of the ordinary General Public License).
+
+  To apply these terms, attach the following notices to the library.
+It is safest to attach them to the start of each source file to most
+effectively convey the exclusion of warranty; and each file should
+have at least the "copyright" line and a pointer to where the full
+notice is found.
 
-  To apply these terms, attach the following notices to the library.  It is
-safest to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.
 
-    <one line to give the library's name and a brief idea of what it does.>
+    <one line to give the library's name and a brief idea of what it
+does.>
     Copyright (C) <year>  <name of author>
 
     This library is free software; you can redistribute it and/or
-    modify it under the terms of the GNU Library General Public
+    modify it under the terms of the GNU Lesser General Public
     License as published by the Free Software Foundation; either
     version 2 of the License, or (at your option) any later version.
 
     This library is distributed in the hope that it will be useful,
     but WITHOUT ANY WARRANTY; without even the implied warranty of
     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-    Library General Public License for more details.
+    Lesser General Public License for more details.
 
-    You should have received a copy of the GNU Library General Public
-    License along with this library; if not, write to the Free
-    Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+    You should have received a copy of the GNU Lesser General Public
+    License along with this library; if not, write to the Free Software
+    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307  USA
 
-Also add information on how to contact you by electronic and paper mail.
+Also add information on how to contact you by electronic and paper
+mail.
 
-You should also get your employer (if you work as a programmer) or your
+You should also get your employer (if you work as a programmer) or
+your
 school, if any, to sign a "copyright disclaimer" for the library, if
 necessary.  Here is a sample; alter the names:
 
   Yoyodyne, Inc., hereby disclaims all copyright interest in the
-  library `Frob' (a library for tweaking knobs) written by James Random Hacker.
+  library `Frob' (a library for tweaking knobs) written by James
+Random Hacker.
 
   <signature of Ty Coon>, 1 April 1990
   Ty Coon, President of Vice
 
 That's all there is to it!
+
+
index 12bdcbbf1be9ddef057b855f03f669461eb7c58d..a1df9fc37b7c0e6eaee362c034cd0382e82ed3f1 100644 (file)
@@ -14,7 +14,7 @@ noinst_LTLIBRARIES = libltdlc.la
 endif
 
 libltdl_la_SOURCES = ltdl.c
-libltdl_la_LDFLAGS = -version-info 1:1:1
+libltdl_la_LDFLAGS = -version-info 1:2:1
 libltdl_la_LIBADD = $(LIBADD_DL)
 
 libltdlc_la_SOURCES = ltdl.c
@@ -29,16 +29,16 @@ libtool: $(LIBTOOL_DEPS)
 
 ## This allows us to install libltdl without using ln and without creating
 ## a world writeable directory.
-## FIXME:  Removed this rule once automake can do this properly by itself.
+## FIXME:  Remove this rule once automake can do this properly by itself.
 local-install-files: $(DISTFILES)
        -rm -rf $(DESTDIR)$(datadir)/libtool/libltdl
        $(mkinstalldirs) $(DESTDIR)$(datadir)/libtool/libltdl
        @for file in $(DISTFILES); do \
          d=$(srcdir); \
          if test -d $$d/$$file; then \
-           cp -pr $$d/$$file $(DESTDIR)$(datadir)/libtool/libltdl/$$file; \
+           cp -r $$d/$$file $(DESTDIR)$(datadir)/libtool/libltdl/$$file; \
          else \
            test -f $(DESTDIR)$(datadir)/libtool/libltdl/$$file \
-           || cp -p $$d/$$file $(DESTDIR)$(datadir)/libtool/libltdl/$$file || :; \
+           || cp $$d/$$file $(DESTDIR)$(datadir)/libtool/libltdl/$$file || :; \
          fi; \
        done
index 0b08ae2815039fb5eb46fd5566960c578e7398bd..e57b99f21a5c58b3480517e23f125a5f12f1a8b3 100644 (file)
@@ -1 +1,9 @@
 This is GNU libltdl, a system independent dlopen wrapper for GNU libtool.
+
+It supports the following dlopen interfaces:
+* dlopen (Solaris, Linux and various BSD flavors)
+* shl_load (HP-UX)
+* LoadLibrary (Win16 and Win32)
+* load_add_on (BeOS)
+* GNU DLD (emulates dynamic linking for static libraries)
+* libtool's dlpreopen
index c453be60773309113c2ba544c55c481a1ebd8ca7..4d75e02e51fd902958bb1bab884484a44bfb40f2 100644 (file)
@@ -19,8 +19,9 @@ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 Library General Public License for more details.
 
 You should have received a copy of the GNU Library General Public
-License along with this library; if not, write to the Free
-Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+License along with this library; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307  USA
 */
 
 #define _LTDL_COMPILE_
@@ -1529,6 +1530,8 @@ lt_dlsym (handle, symbol)
                return 0;
        }
        if (handle->name) {
+               const char *saved_error = last_error;
+               
                /* this is a libtool module */
                if (handle->type->sym_prefix) {
                        strcpy(sym, handle->type->sym_prefix);
@@ -1544,6 +1547,7 @@ lt_dlsym (handle, symbol)
                                lt_dlfree(sym);
                        return address;
                }
+               last_error = saved_error;
        }
        /* otherwise try "symbol" */
        if (handle->type->sym_prefix) {
index 48b1addeadec8ea4751f8e21f96b0d3b7b3410b0..c0e446b87efa5688ed847e685a7a109a97fba026 100644 (file)
@@ -20,7 +20,8 @@ Library General Public License for more details.
 
 You should have received a copy of the GNU Library General Public
 License along with this library; if not, write to the Free
-Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307  USA
 */
 
 /* Only include this header file once. */
index bf6756ee9be06f651ebcfb0caac8120212e59b26..c816fb72802b346f883dbbcd5ce862b9059165a6 100755 (executable)
@@ -53,7 +53,7 @@ fi
 
 # Find the correct PATH separator.  Usually this is `:', but
 # DJGPP uses `;' like DOS.
-if test "X${PATH_SEPARATOR+set}" != "Xset"; then
+if test "X${PATH_SEPARATOR+set}" != Xset; then
   UNAME=${UNAME-`uname 2>/dev/null`}
   case X$UNAME in
     *-DOS) PATH_SEPARATOR=';' ;;
@@ -63,9 +63,9 @@ fi
 
 # The HP-UX ksh and POSIX shell print the target directory to stdout
 # if CDPATH is set.
-if test "${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
+if test "X${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
 
-if test "X${echo_test_string+set}" != "Xset"; then
+if test "X${echo_test_string+set}" != Xset; then
   # find a string as large as possible, as long as the shell can cope with it
   for cmd in 'sed 50q "$0"' 'sed 20q "$0"' 'sed 10q "$0"' 'sed 2q "$0"' 'echo test'; do
     # expected sizes: less than 2Kb, 1Kb, 512 bytes, 16 bytes, ...
@@ -369,8 +369,8 @@ exec 5>>./config.log
 # Only set LANG and LC_ALL to C if already set.
 # These must not be set unconditionally because not all systems understand
 # e.g. LANG=C (notably SCO).
-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
-if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
+if test "X${LC_ALL+set}" = Xset; then LC_ALL=C; export LC_ALL; fi
+if test "X${LANG+set}"   = Xset; then LANG=C;   export LANG;   fi
 
 if test -n "$cache_file" && test -r "$cache_file"; then
   echo "loading cache $cache_file within ltconfig"
@@ -462,7 +462,7 @@ aix3*)
   # AIX sometimes has problems with the GCC collect2 program.  For some
   # reason, if we set the COLLECT_NAMES environment variable, the problems
   # vanish in a puff of smoke.
-  if test "${COLLECT_NAMES+set}" != set; then
+  if test "X${COLLECT_NAMES+set}" != Xset; then
     COLLECT_NAMES=
     export COLLECT_NAMES
   fi
@@ -1187,7 +1187,7 @@ EOF
     ;;
 
   netbsd*)
-    if $LD --help 2>&1 | egrep ': supported targets:.* elf' > /dev/null; then
+    if echo __ELF__ | $CC -E - | grep __ELF__ >/dev/null; then
       archive_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname -o $lib'
       archive_expsym_cmds='$CC -shared $libobjs $deplibs $linkopts ${wl}-soname $wl$soname ${wl}-retain-symbols-file $wl$export_symbols -o $lib'
     else
@@ -1196,7 +1196,7 @@ EOF
     fi
     ;;
 
-  solaris*)
+  solaris* | sysv5*)
     if $LD -v 2>&1 | egrep 'BFD 2\.8' > /dev/null; then
       ld_shlibs=no
       cat <<EOF 1>&2
@@ -1245,7 +1245,7 @@ EOF
       ;;
     *)
       # ancient GNU ld didn't support --whole-archive et. al.
-      if $LD --help 2>71 | egrep 'no-whole-archive' > /dev/null; then
+      if $LD --help 2>&1 | egrep 'no-whole-archive' > /dev/null; then
         whole_archive_flag_spec="$wlarc"'--whole-archive$convenience '"$wlarc"'--no-whole-archive'
       else
         whole_archive_flag_spec=
@@ -1466,6 +1466,18 @@ else
     export_dynamic_flag_spec='-Bexport'
     ;;
 
+  sysv5*)
+    no_undefined_flag=' -z text'
+    # $CC -shared without GNU ld will not create a library from C++
+    # object files and a static libstdc++, better avoid it by now
+    archive_cmds='$LD -G${allow_undefined_flag} -h $soname -o $lib $libobjs $deplibs $linkopts'
+    archive_expsym_cmds='$echo "{ global:" > $lib.exp~cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $lib.exp~$echo "local: *; };" >> $lib.exp~
+               $LD -G${allow_undefined_flag} -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linkopts~$rm $lib.exp'
+    hardcode_libdir_flag_spec=
+    hardcode_shlibpath_var=no
+    runpath_var='LD_RUN_PATH'
+    ;;
+
   uts4*)
     archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
     hardcode_libdir_flag_spec='-L$libdir'
@@ -1479,14 +1491,28 @@ else
     ;;
 
   sysv4*MP*)
-    if test -d /usr/nec ;then
-    # archive_cmds='$LD -G -z text -h $soname -o $lib$libobjs$deplibs'
-    archive_cmds='$LD -G -h $soname -o $lib$libobjs$deplibs'
+    if test -d /usr/nec; then
+      archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
+      hardcode_shlibpath_var=no
+      runpath_var=LD_RUN_PATH
+      hardcode_runpath_var=yes
+      ld_shlibs=yes
+    fi
+    ;;
+
+  sysv4.2uw2*)
+    archive_cmds='$LD -G -o $lib $libobjs $deplibs $linkopts'
+    hardcode_direct=yes
+    hardcode_minus_L=no
     hardcode_shlibpath_var=no
-    runpath_var=LD_RUN_PATH
     hardcode_runpath_var=yes
-    ld_shlibs=yes
-    fi
+    runpath_var=LD_RUN_PATH
+    ;;
+
+  unixware7*)
+    archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linkopts'
+    runpath_var='LD_RUN_PATH'
+    hardcode_shlibpath_var=no
     ;;
 
   *)
@@ -1792,8 +1818,9 @@ beos*)
 
 bsdi4*)
   version_type=linux
-  library_names_spec='${libname}.so$major ${libname}.so'
-  soname_spec='${libname}.so'
+  need_version=no
+  library_names_spec='${libname}${release}.so$versuffix ${libname}${release}.so$major $libname.so'
+  soname_spec='${libname}${release}.so$major'
   finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)'
@@ -1801,6 +1828,7 @@ bsdi4*)
   file_magic_test_file=/shlib/libc.so
   sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib"
   sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib"
+  export_dynamic_flag_spec=-rdynamic
   # the default ld.so.conf also contains /usr/contrib/lib and
   # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow
   # libtool to hard-code these into programs
@@ -1846,10 +1874,9 @@ freebsd*)
       need_version=yes
       ;;
   esac
-  finish_cmds='PATH="\$PATH:/sbin" OBJFORMAT="'"$objformat"'" ldconfig -m $libdir'
   shlibpath_var=LD_LIBRARY_PATH
   case "$host_os" in
-  freebsd2* | freebsd3.[01]*)
+  freebsd2* | freebsd3.[01]* | freebsdelf3.[01]*)
     shlibpath_overrides_runpath=yes
     ;;
   *) # from 3.2 on
@@ -2654,7 +2681,7 @@ case "$ltmain" in
 # NOTE: Changes made to this file will be lost: look at ltconfig or ltmain.sh.
 #
 # Copyright (C) 1996-1999 Free Software Foundation, Inc.
-# Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
+# Originally by Gordon Matzigkeit <gord@gnu.ai.mit.edu>, 1996
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -2680,7 +2707,7 @@ Xsed="sed -e s/^X//"
 
 # The HP-UX ksh and POSIX shell print the target directory to stdout
 # if CDPATH is set.
-if test "\${CDPATH+set}" = set; then CDPATH=; export CDPATH; fi
+if test "X\${CDPATH+set}" = Xset; then CDPATH=:; export CDPATH; fi
 
 ### BEGIN LIBTOOL CONFIG
 EOF
@@ -2943,7 +2970,7 @@ case "$ltmain" in
 # AIX sometimes has problems with the GCC collect2 program.  For some
 # reason, if we set the COLLECT_NAMES environment variable, the problems
 # vanish in a puff of smoke.
-if test "${COLLECT_NAMES+set}" != set; then
+if test "X${COLLECT_NAMES+set}" != Xset; then
   COLLECT_NAMES=
   export COLLECT_NAMES
 fi
@@ -2953,6 +2980,10 @@ EOF
 
   # Append the ltmain.sh script.
   sed '$q' "$ltmain" >> "$ofile" || (rm -f "$ofile"; exit 1)
+  # We use sed instead of cat because bash on DJGPP gets confused if
+  # if finds mixed CR/LF and LF-only lines.  Since sed operates in
+  # text mode, it properly converts lines to CR/LF.  This bash problem
+  # is reportedly fixed, but why not run on old versions too?
 
   chmod +x "$ofile"
   ;;
index d3a61b2a29e44f9c480d7d7854b907a14899240b..085457140e762ad5e12e9a7231e00e4798f17161 100644 (file)
--- a/ltmain.in
+++ b/ltmain.in
@@ -435,7 +435,7 @@ compiler."
       fbsd_hideous_sh_bug=$base_compile
 
       # All platforms use -DPIC, to notify preprocessed assembler code.
-      command="$base_compile $pic_flag -DPIC $srcfile"
+      command="$base_compile $srcfile $pic_flag -DPIC"
       if test "$build_old_libs" = yes; then
        lo_libobj="$libobj"
        dir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
@@ -521,9 +521,17 @@ compiler."
          exit $error
        fi
 
+       xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
+       if test "X$xdir" = "X$obj"; then
+         xdir="."
+       else
+         xdir="$xdir"
+       fi
+       baseobj=`$echo "X$obj" | $Xsed -e "s%.*/%%"`
+       libobj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
        # Now arrange that obj and lo_libobj become the same file
-       $show "$LN_S $obj $lo_libobj"
-       if $run $LN_S $obj $lo_libobj; then
+       $show "(cd $xdir && $LN_S $baseobj $libobj)"
+       if $run eval '(cd $xdir && $LN_S $baseobj $libobj)'; then
          exit 0
        else
          error=$?
@@ -613,8 +621,6 @@ compiler."
   # libtool link mode
   link)
     modename="$modename: link"
-    C_compiler="$CC" # save it, to compile generated C sources
-    CC="$nonopt"
     case "$host" in
     *-*-cygwin* | *-*-mingw* | *-*-os2*)
       # It is impossible to link a dll without this setting, and
@@ -802,8 +808,8 @@ compiler."
       allow_undefined=yes
       ;;
     esac
-    compile_command="$CC"
-    finalize_command="$CC"
+    compile_command="$nonopt"
+    finalize_command="$nonopt"
 
     compile_rpath=
     finalize_rpath=
@@ -1851,7 +1857,7 @@ compiler."
          int main() { return 0; }
 EOF
          $rm conftest
-         $C_compiler -o conftest conftest.c $deplibs
+         $CC -o conftest conftest.c $deplibs
          if test $? -eq 0 ; then
            ldd_output=`ldd conftest`
            for i in $deplibs; do
@@ -1884,7 +1890,7 @@ EOF
             # If $name is empty we are operating on a -L argument.
              if test "$name" != "" ; then
                $rm conftest
-               $C_compiler -o conftest conftest.c $i
+               $CC -o conftest conftest.c $i
                # Did it work?
                if test $? -eq 0 ; then
                  ldd_output=`ldd conftest`
@@ -2047,12 +2053,19 @@ EOF
        done
 
        # Ensure that we have .o objects for linkers which dislike .lo
-       # (e.g. aix) incase we are running --disable-static
+       # (e.g. aix) in case we are running --disable-static
        for obj in $libobjs; do
-         oldobj=`$echo "X$obj" | $Xsed -e "$lo2o"`
-         if test ! -f $oldobj; then
-           $show "${LN_S} $obj $oldobj"
-           $run ${LN_S} $obj $oldobj || exit $?
+         xdir=`$echo "X$obj" | $Xsed -e 's%/[^/]*$%%'`
+         if test "X$xdir" = "X$obj"; then
+           xdir="."
+         else
+           xdir="$xdir"
+         fi
+         baseobj=`$echo "X$obj" | $Xsed -e 's%^.*/%%'`
+         oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
+         if test ! -f $xdir/$oldobj; then
+           $show "(cd $xdir && ${LN_S} $baseobj $oldobj)"
+           $run eval '(cd $xdir && ${LN_S} $baseobj $oldobj)' || exit $?
          fi
        done
 
@@ -2311,8 +2324,16 @@ EOF
        # Just create a symlink.
        $show $rm $libobj
        $run $rm $libobj
-       $show "$LN_S $obj $libobj"
-       $run $LN_S $obj $libobj || exit $?
+       xdir=`$echo "X$libobj" | $Xsed -e 's%/[^/]*$%%'`
+       if test "X$xdir" = "X$libobj"; then
+         xdir="."
+       else
+         xdir="$xdir"
+       fi
+       baseobj=`$echo "X$libobj" | $Xsed -e 's%^.*/%%'`
+       oldobj=`$echo "X$baseobj" | $Xsed -e "$lo2o"`
+       $show "(cd $xdir && $LN_S $oldobj $baseobj)"
+       $run eval '(cd $xdir && $LN_S $oldobj $baseobj)' || exit $?
       fi
 
       if test -n "$gentop"; then
@@ -2598,7 +2619,7 @@ static const void *lt_preloaded_setup() {
          # linked before any other PIC object.  But we must not use
          # pic_flag when linking with -static.  The problem exists in
          # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1.
-         *-*-freebsd2*|*-*-freebsd3.0*)
+         *-*-freebsd2*|*-*-freebsd3.0*|*-*-freebsdelf3.0*)\r
            case "$compile_command " in
            *" -static "*) ;;
            *) pic_flag_for_symtable=" $pic_flag -DPIC -DFREEBSD_WORKAROUND";;
@@ -2611,8 +2632,8 @@ static const void *lt_preloaded_setup() {
          esac
 
          # Now compile the dynamic symbol file.
-         $show "(cd $output_objdir && $C_compiler -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
-         $run eval '(cd $output_objdir && $C_compiler -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
+         $show "(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable \"$dlsyms\")"
+         $run eval '(cd $output_objdir && $CC -c$no_builtin_flag$pic_flag_for_symtable "$dlsyms")' || exit $?
 
          # Clean up the generated files.
          $show "$rm $output_objdir/$dlsyms $nlist ${nlist}S ${nlist}T"
@@ -2781,7 +2802,7 @@ sed_quote_subst='$sed_quote_subst'
 
 # The HP-UX ksh and POSIX shell print the target directory to stdout
 # if CDPATH is set.
-if test \"\${CDPATH+set}\" = set; then CDPATH=; export CDPATH; fi
+if test \"\${CDPATH+set}\" = set; then CDPATH=:; export CDPATH; fi
 
 relink_command=\"$relink_command\"
 
@@ -3000,14 +3021,21 @@ fi\
       if test -n "$old_archive_from_new_cmds" && test "$build_libtool_libs" = yes; then
        eval cmds=\"$old_archive_from_new_cmds\"
       else
-       # Ensure that we have .o objects in place incase we decided
+       # Ensure that we have .o objects in place in case we decided
        # not to build a shared library, and have fallen back to building
        # static libs even though --disable-static was passed!
        for oldobj in $oldobjs; do
          if test ! -f $oldobj; then
-           obj=`$echo "X$oldobj" | $Xsed -e "$o2lo"`
-           $show "${LN_S} $obj $oldobj"
-           $run ${LN_S} $obj $oldobj || exit $?
+           xdir=`$echo "X$oldobj" | $Xsed -e 's%/[^/]*$%%'`
+           if test "X$xdir" = "X$oldobj"; then
+             xdir="."
+           else
+             xdir="$xdir"
+           fi
+           baseobj=`$echo "X$oldobj" | $Xsed -e 's%^.*/%%'`
+           obj=`$echo "X$baseobj" | $Xsed -e "$o2lo"`
+           $show "(cd $xdir && ${LN_S} $obj $baseobj)"
+           $run eval '(cd $xdir && ${LN_S} $obj $baseobj)' || exit $?
          fi
        done
 
@@ -3696,8 +3724,8 @@ libdir='$install_libdir'\
       $echo "$modename: cannot exec \$cmd$args"
       exit 1
     else
+      # Display what would be done.
       if test -n "$shlibpath_var"; then
-        # Display what would be done.
         eval "\$echo \"\$shlibpath_var=\$$shlibpath_var\""
         $echo "export $shlibpath_var"
       fi
index b730489d56a573a2d3f24e7904f7dedc1c34fea7..bf20848f30fdfb207f67d1de471c4114bde81af6 100755 (executable)
@@ -12,12 +12,15 @@ fi
 . $srcdir/defs || exit 1
 
 # Check that things are built.
-if test -f $prefix/lib/libhello.la && cd ../demo; then :
+if test -f $prefix/lib/libhello.la; then :
 else
   echo "You must run demo-inst.test before $0" 1>&2
   exit 77
 fi
 
+# Change to our build directory.
+cd ../demo || exit 77
+
 echo "removing libhello.la and hell from ../demo"
 rm -f libhello.la hell