2004-08-30 00:08:13 +08:00
|
|
|
GNU Libtool
|
|
|
|
***********
|
1999-03-07 23:27:23 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
1. In the near future
|
|
|
|
=====================
|
2000-09-08 05:25:03 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
1.1. libtool
|
|
|
|
------------
|
1999-02-25 14:46:55 +08:00
|
|
|
|
2004-10-01 04:53:17 +08:00
|
|
|
* Rather than looking up the linker's hardcode characteristics in a
|
|
|
|
table of shell code, use objdump or equivalent to probe a test program
|
|
|
|
at configure time.
|
2004-09-01 17:48:25 +08:00
|
|
|
|
2004-09-03 09:54:37 +08:00
|
|
|
* Eliminate the warnings from autoconf -Wobsolete.
|
|
|
|
|
|
|
|
* Hook the various language dependencies into the autoconf _AC_LANG
|
|
|
|
framework.
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Work out what to do when the dynamic linker loads needed dependencies.
|
|
|
|
|
1999-03-30 20:40:22 +08:00
|
|
|
* We could have an option to hardcode paths into libraries, as well as
|
2004-08-30 00:08:13 +08:00
|
|
|
binaries: `... -Wl,-soname -Wl,/tmp/libtest.so.0 ...'. This is not
|
|
|
|
possible on all platforms, and is in part obviated by the ability of
|
|
|
|
linking libtool libraries specified with -lname, but it might still
|
|
|
|
be desirable.
|
1998-01-26 03:35:11 +08:00
|
|
|
|
1999-02-25 14:46:55 +08:00
|
|
|
* Lists of exported symbols should be stored in the pseudo library
|
2004-08-30 00:08:13 +08:00
|
|
|
so that the size of lt_preloaded_symbols can be reduced.
|
1999-02-25 14:46:55 +08:00
|
|
|
|
2001-04-18 15:24:13 +08:00
|
|
|
* Have some option to tell libtool not to include -L flags that point
|
2004-08-30 00:08:13 +08:00
|
|
|
into a certain tree in the dependence list of an installed library.
|
|
|
|
For example: -L-$top_builddir would let one link with libtool
|
|
|
|
libraries in sibling subdirectories within a project, using the -L
|
|
|
|
notation, without getting builddir pathnames ever mentioned in .la
|
|
|
|
files that get installed.
|
2001-04-18 15:24:13 +08:00
|
|
|
|
2001-04-22 01:36:45 +08:00
|
|
|
* Eric Lemings <elemings@cyberia.lemings.com> writes:
|
|
|
|
Because of a growing number of config scripts for packages in GNOME 1.2
|
|
|
|
(e.g. glib-config, xml-config, orbit-config. etc), development of GNOME
|
|
|
|
2.0 spawned a separate tool called pkg-config that allows all packages
|
|
|
|
to use one tool rather than several different scripts to query compile
|
|
|
|
flags, link flags, and other configuration data.
|
|
|
|
|
|
|
|
The functionality of pkg-config seems to me to have a lot of overlap
|
|
|
|
with the goals of libtool. I was wondering if anyone had considered
|
|
|
|
adding an eighth mode to libtool that just queries the installed
|
|
|
|
library for the same information that pkg-config provides. Since
|
|
|
|
most packages that use pkg-config also use libtool, I think this
|
|
|
|
would be a good way to reduce maintainer and developer dependencies.
|
|
|
|
|
2005-01-14 01:28:08 +08:00
|
|
|
* Have libtoolize install `install-sh' if a newer version is available,
|
|
|
|
and/or Automake is not used.
|
|
|
|
|
2005-03-08 17:36:39 +08:00
|
|
|
* Allow to specify linking some dependent libraries statically and some
|
|
|
|
dynamically, where possible.
|
|
|
|
|
|
|
|
* Improve support for C++ with templates.
|
|
|
|
|
2005-04-23 22:19:17 +08:00
|
|
|
* Audit file listing in libtool.m4.
|
2005-03-21 16:02:55 +08:00
|
|
|
|
|
|
|
* Fix deplibs_check_method=pass_all (which is wrong!) on linux.
|
|
|
|
|
2005-04-27 11:26:59 +08:00
|
|
|
* Fix -dlopen "self" on AIX. Reported by Gary Kumfert <kumfert@llnl.gov>.
|
|
|
|
|
|
|
|
* Fix denial of service if using installed `libtool' on a different mount point
|
|
|
|
together with a compiler which does not understand `-c -o'.
|
|
|
|
Reported by Marcin Siennicki.
|
|
|
|
|
2005-08-18 17:51:57 +08:00
|
|
|
* Look at better -no-undefined support, maybe along the idea of
|
|
|
|
[support #103719] for CC.
|
2005-04-27 11:26:59 +08:00
|
|
|
|
|
|
|
|
2007-01-21 22:34:01 +08:00
|
|
|
1.2. libltdl
|
2004-08-30 00:08:13 +08:00
|
|
|
------------
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Change libltdl interface: add separate functions for function
|
|
|
|
pointers. This will allow porting to systems where function pointers
|
|
|
|
are incompatible with data pointer C-wise.
|
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
* Fix the following bugs in libltdl:
|
|
|
|
- error reporting of tryall_dlopen():
|
|
|
|
if the file actually doesn't exist (stat() fails or it wasn't dlpreopened)
|
|
|
|
-> report `file not found'
|
|
|
|
if it cannot be loaded (e.g. due to missing dependencies)
|
|
|
|
-> report dlerror
|
|
|
|
open question: which error should be reported if all dlloaders fail
|
|
|
|
or if a specific module type can only be loaded by one of them, how report its dlerror?
|
|
|
|
Also report dlerror() for dlclose and dlsym if available
|
|
|
|
- Make sure that the dependency_libs of a dlpreopened module won't be loaded.
|
|
|
|
|
2005-04-27 11:26:59 +08:00
|
|
|
- Fix mdemo failures on mingw.
|
|
|
|
|
|
|
|
- Fix the last memleak. Reported by Jeff Squyres <jsquyres@lam-mpi.org>.
|
|
|
|
|
|
|
|
- Fix LTDL_CONVENIENCE. Reported by Bob Friesenhahn
|
|
|
|
and Patrick Welche <prlw1@newn.cam.ac.uk>.
|
|
|
|
|
|
|
|
|
2005-02-22 23:27:07 +08:00
|
|
|
1.3. libtoolize
|
|
|
|
---------------
|
|
|
|
|
|
|
|
* Rewrite the func_copy_* functions so that instead of forking 2 tar
|
|
|
|
processes per copied file, a list of files to copy is built and all
|
|
|
|
files copied with a single pair of tar processes.
|
|
|
|
|
2008-01-17 13:36:21 +08:00
|
|
|
* Write test case that adds libtool macros to aclocal.m4.
|
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
|
|
|
|
2. In the future
|
|
|
|
================
|
|
|
|
|
|
|
|
2.1. Documentation
|
|
|
|
------------------
|
2001-04-22 01:36:45 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
* Need to finalize the documentation, and give a specification of
|
|
|
|
`.la' files so that people can depend on their format. This would be
|
|
|
|
a good thing to put before the maintainance notes.
|
|
|
|
|
2005-03-21 16:02:55 +08:00
|
|
|
* Document the installed `libtool' and its limitations clearly (maybe implement
|
|
|
|
--disable-script-install as well). Or, even better, remove its limitations.
|
|
|
|
|
|
|
|
* Platform notes redo.
|
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
2.2. test suite
|
|
|
|
---------------
|
|
|
|
|
|
|
|
* Rewrite the whole thing in Autotest. This will enable us to remove
|
|
|
|
all the tests/*demo noise, and duplication; and thus speed up bootstrap
|
|
|
|
and make writing new tests a whole lot more pleasant.
|
|
|
|
|
2005-12-04 01:36:15 +08:00
|
|
|
* We should include tests with reloadable objects in the testsuite.
|
2004-08-30 00:08:13 +08:00
|
|
|
|
|
|
|
* Write a test case for linkage with gnu ld scripts (per 2004-08-25 patch
|
|
|
|
from Paolo Bonzini).
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Test everything:
|
|
|
|
- cross compile
|
|
|
|
- dirs with ~
|
2005-03-08 17:36:39 +08:00
|
|
|
- multiple input files
|
2004-12-03 19:28:45 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
2.3. libtool
|
|
|
|
------------
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Fix cross-compiling.
|
|
|
|
|
|
|
|
* Fix threads.
|
|
|
|
|
|
|
|
* Support multilibbing.
|
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
* If not cross-compiling, have the static flag test run the resulting
|
|
|
|
binary to make sure everything works.
|
|
|
|
|
|
|
|
* Another form of convenience library is to have undocumented utility
|
|
|
|
libraries, where only the shared version is installed.
|
|
|
|
|
|
|
|
* We could use libtool object convenience libraries that resolve
|
|
|
|
symbols to be included in a libtool archive. This would require some
|
|
|
|
sort of -whole-archive option, as well.
|
|
|
|
|
|
|
|
* Currently, convenience libraries (.al) are built from .lo objects,
|
|
|
|
except when --disable-shared. When we can build both shared and
|
|
|
|
static libraries, we should probably create a .al out of .lo objects
|
|
|
|
and also a .a out of .o objects. The .al would only be used to create
|
|
|
|
shared libraries, whereas the .a would be used for creating static
|
|
|
|
libraries and programs. We could also explicitly support `empty'
|
|
|
|
convenience libraries, that behave as macros that expand to a set of
|
|
|
|
-Rs, -Ls and -ls switches.
|
|
|
|
|
2005-04-27 11:26:59 +08:00
|
|
|
* Audit use of object names so we can allow `$' not only within
|
|
|
|
source file names. Necessary especially for java.
|
2004-08-30 00:08:13 +08:00
|
|
|
|
|
|
|
* We could introduce a mechanism to allow for soname rewriting, to
|
|
|
|
ease multi-libc support. Installers could specify a prefix, suffix or
|
|
|
|
sed command to modify the soname, and libtool would create the
|
|
|
|
corresponding link. This would allow for rebuilding a library with
|
|
|
|
the same version number, but depending on different versions of libc,
|
|
|
|
for example. In the future, we might even have an option to encode
|
|
|
|
the sonames of all dependencies of a library into its soname.
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Look again at a binary C libtool, or byte-compiled libtool to improve
|
|
|
|
speed.
|
|
|
|
|
|
|
|
* Generate some "platform specific" shell functions with config.status,
|
|
|
|
for example, there is no need to have the C source code for the
|
|
|
|
wrapper script on non-windows platforms, this will make the generated
|
|
|
|
libtool script smaller and easier to follow, maybe a little faster
|
|
|
|
too?
|
|
|
|
|
2005-04-27 11:26:59 +08:00
|
|
|
* Audit the GCJ tag section in libtool.m4.
|
|
|
|
|
|
|
|
* Add caching mechanism. Look at `libtool-cache' from Robert Ögren.
|
|
|
|
|
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
2.4. libtool autoconf macros
|
|
|
|
----------------------------
|
1999-03-07 23:27:23 +08:00
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Sort out the macro mess in libtool.m4. We've started this already
|
|
|
|
by refactoring chunks into separate files, but I never did completely
|
|
|
|
untangle the mess of macros imported from ltconfig.
|
|
|
|
|
|
|
|
* The definitions for LT_SYS_MODULE_EXT, LT_SYS_MODULE_PATH and
|
|
|
|
LT_SYS_DLSEARCH_PATH should not rely on the _LT_SYS_DYNAMIC_LINKER
|
2004-08-30 00:08:13 +08:00
|
|
|
macro. This involves moving the code which sets the variables
|
|
|
|
library_names_spec, shlibpath_var and sys_lib_dlsearch_path_spec from
|
|
|
|
into a separate macro, and AC_REQUIRING the newly extracted macro in the
|
|
|
|
respective ltdl.m4 macros.
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
2.5. libtool automake integration
|
|
|
|
---------------------------------
|
|
|
|
|
|
|
|
* Unify locks between libtool and compile.
|
|
|
|
|
|
|
|
* Fix relinking.
|
|
|
|
|
|
|
|
2.6. libltdl
|
2004-08-30 00:08:13 +08:00
|
|
|
------------
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Finish the rewrite of the core libltdl. The loaders are fine, and
|
|
|
|
the outlying code is now good. Ralf is starting to pick away at a lot
|
|
|
|
of the remaining nasties already, but the code for finding .la/.so files
|
|
|
|
and reading/loading them could use a lot more improvement.
|
|
|
|
|
|
|
|
* I think we could factor out a little path management support module
|
|
|
|
from existing libltdl. This would be useful for M4 at least -- keeping
|
|
|
|
track of FOO_PATH environment contents, searching for files in paths
|
|
|
|
etc.
|
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
* Try to find a work-around for -[all-]static and libltdl on platforms
|
|
|
|
that will fail to find dlopening functions in this case. Maybe
|
|
|
|
creating an alternate libltdl that provides only for dlpreopening, or
|
|
|
|
creating an additional static library to provide dummy implementations
|
|
|
|
of the functions that can't be linked statically. This could hardly
|
|
|
|
be made completely transparent, though.
|
2000-09-17 04:08:07 +08:00
|
|
|
|
2005-04-27 11:26:59 +08:00
|
|
|
* In conjunction with above, fix the failures on *BSD when linked to
|
|
|
|
static libc. Reported by Guilhem Lavaux <guilhem@kaffe.org>.
|
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Add i18n strings to libltdl, ensuring that package developers can
|
|
|
|
ignore any i18n when they libtoolize.
|
|
|
|
|
|
|
|
2.7. win32 support
|
2004-08-30 00:08:13 +08:00
|
|
|
------------------
|
|
|
|
|
1999-05-26 08:00:40 +08:00
|
|
|
* Arrange that EXEEXT suffixes are stripped from wrapper script names
|
2004-08-30 00:08:13 +08:00
|
|
|
only when needed, and that a timestamp file or a wrapper program is
|
|
|
|
created with the EXEEXT suffix, so that `make' doesn't build it every
|
|
|
|
time.
|
1998-12-24 01:30:12 +08:00
|
|
|
|
|
|
|
* Figure out how to use data items in dlls with win32.
|
2004-08-30 00:08:13 +08:00
|
|
|
The difficult part is compiling each object which will be linked with an
|
|
|
|
import lib differently than if it will be linked with a static lib. This
|
|
|
|
will almost definitely require that automake pass some hints about linkage
|
|
|
|
in to each object compilation line.
|
1998-12-24 01:30:12 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
* jeffdb@goodnet.com writes:
|
|
|
|
all you need to do for mutually dependent .dll's is to create an implib from
|
|
|
|
a .def file so it appears that we might need to detect and handle mutual
|
|
|
|
dependencies specially on win32 =(O|
|
1999-03-23 18:40:00 +08:00
|
|
|
|
2010-07-19 09:07:01 +08:00
|
|
|
* QoI for file name and path conversion functions. Currently, these are
|
|
|
|
implemented as MxN different functions; this has quadratic complexity. If
|
|
|
|
possible, it would be preferred to implement then as M+N functions. However:
|
|
|
|
http://lists.gnu.org/archive/html/libtool-patches/2010-08/msg00224.html
|
|
|
|
The main issue is you don't know what the "native" (e.g. "central")
|
|
|
|
path-type is; e.g. "from-X (to what?)" and "(from what?) to-Y". Right
|
|
|
|
now there are only four "platforms" involved: *nix, mingw, msys, and
|
|
|
|
cygwin. That's actually the break-even point, given the vagaries and
|
|
|
|
optimizations involved in these particular four platforms.
|
|
|
|
|
|
|
|
We have exactly five basic file name conversion functions (not counting
|
|
|
|
the wrappers that handle paths). For a non-quadratic M+N (from-X|to-Y)
|
|
|
|
solution, we'd need, I think, the same number of conversion functions: brute
|
|
|
|
force suggests nine (four to_*, four from_*, plus the noop), but then many
|
|
|
|
of the from_* and to_* would actually BE noop.
|
|
|
|
|
|
|
|
I'm assuming here that the "central" path-type is implicitly some sort of
|
|
|
|
unixish -- maybe cyg, maybe msys, maybe unix -- path-type. The issue is
|
|
|
|
that each of the five conversion functions use a different TOOL to perform
|
|
|
|
the conversion, with different syntax. So, trying to combine, e.g.
|
|
|
|
msys_to_mingw
|
|
|
|
cygwin_to_mingw
|
|
|
|
unix_to_mingw
|
|
|
|
into an all-encompassing "central_unixish_to_mingw" would require additional
|
|
|
|
m4 magic to basically replace the guts depending on whether $build was msys,
|
|
|
|
cygwin, or unix. Worse, you can't really do a set of
|
|
|
|
{msys|cygwin|unix}_to_central_unixish that isn't simply a no-op -- because
|
|
|
|
(A) they already are all unixish, and (B) what tool would you use? How would
|
|
|
|
the later to_mingw function "know" how to covert this new representation to
|
|
|
|
mingw. So, {msys|cygwin|unix}_to_central_unixish would simply be a no-op
|
|
|
|
and central_unixish_to_mingw would still do all the work (with its guts
|
|
|
|
customized based on $build).
|
|
|
|
|
|
|
|
For more reasonable cross environments (e.g. linux->some_embedded) I think
|
|
|
|
you could probably work out a general M+N scheme, since most embedded $hosts
|
|
|
|
aren't as strange as the win32 variants -- even VxWorks and INTEGRITY have
|
|
|
|
basic, unix-like file systems (although INTEGRITY does have multiple roots).
|
|
|
|
Aggressive use of the m4 function_replace machinery WOULD be appropriate for
|
|
|
|
/these/ conversion functions. OTOH...(a) you can't run the $host apps on
|
|
|
|
$build anyway, in these embedded situations. At best you'd use $TARGETSHELL
|
|
|
|
and "run" them via a remote connection, and (b) they don't use the C
|
|
|
|
wrapper!
|
|
|
|
|
|
|
|
So...I don't think it makes much difference *right now* in the amount of
|
|
|
|
code required, or the number of functions implemented. At some point in the
|
|
|
|
future we might want to generalize to an M+N scheme. For the existing win32
|
|
|
|
$hosts, all of the funtionality would be on "one side" of the 2-step
|
|
|
|
conversion; the "other side" would be noop. But we won't worry about the
|
|
|
|
implicit quadratic complexity of the existing scheme for now.
|
1997-11-28 00:57:00 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
3. Wish List
|
|
|
|
============
|
1997-08-12 23:19:11 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
* Maybe implement full support for other orthogonal library types
|
|
|
|
(libhello_g, libhello_p, 64 vs 32-bit ABI's, etc). Make these types
|
|
|
|
configurable.
|
1997-08-12 23:19:11 +08:00
|
|
|
|
2005-12-04 01:36:15 +08:00
|
|
|
* Perhaps the use of libltdl could be made cleaner by allowing
|
2004-08-30 00:08:13 +08:00
|
|
|
registration of hook functions to call at various points. This would
|
|
|
|
hopefully free the user from having to maintain a parallel module
|
|
|
|
list with user data. This would likely involve being able to carry
|
|
|
|
additional per user module data in the lt_dlmodule structure -- perhaps
|
|
|
|
in the form of an associative array keyed by user name?
|
1997-06-30 20:20:49 +08:00
|
|
|
|
2004-12-03 19:28:45 +08:00
|
|
|
* Figure out how to make pkg-config aware of the information libtool
|
|
|
|
knows about libraries and their dependencies, and send a patch.
|
|
|
|
|
|
|
|
* Generate a libtool.m4 from a bunch of individual files, one per
|
|
|
|
platform, to make the job of a "platform maintainer" easier and make
|
|
|
|
it easier to add new platforms.
|
1997-07-22 01:31:05 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
--
|
2008-01-17 13:36:21 +08:00
|
|
|
Copyright (C) 2004, 2005, 2007, 2008 Free Software Foundation, Inc.
|
* HACKING (Licensing Rules): Explain the various license texts
used for files distributed with Libtool, and update license text
to match.
* Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
libltdl/config/mkstamp, libltdl/configure.ac,
libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/cdemo-undef.test,
tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic.test, tests/demo-pic.test,
tests/demo-relink.test, tests/demo-shared.test,
tests/demo-static.test, tests/demo-unst.test,
tests/demo/Makefile.am, tests/demo/configure.ac,
tests/demo/dlmain.c, tests/demo/foo.c,
tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
tests/demo/hello.c, tests/demo/main.c,
tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast.test, tests/depdemo-relink.test,
tests/depdemo-shared.test, tests/depdemo-static.test,
tests/depdemo-unst.test, tests/depdemo/Makefile.am,
tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
tests/depdemo/l4/l4.h, tests/depdemo/main.c,
tests/depdemo/sysdep.h, tests/deplibs-ident.at,
tests/destdir.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/export.at,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/f77demo/Makefile.am,
tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
tests/f77demo/foo.h, tests/f77demo/fooc.c,
tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
tests/inherited_flags.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order.at, tests/link-order2.at,
tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
tests/mdemo-dryrun.test, tests/mdemo-exec.test,
tests/mdemo-inst.test, tests/mdemo-make.test,
tests/mdemo-shared.test, tests/mdemo-static.test,
tests/mdemo-unst.test, tests/mdemo/Makefile.am,
tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
tests/mdemo/sub.c, tests/mdemo2-conf.test,
tests/mdemo2-exec.test, tests/mdemo2-make.test,
tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
tests/objectlist.test, tests/old-m4-iface.at,
tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test,
tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c,
tests/pdemo/longer_file_name_hell1.c,
tests/pdemo/longer_file_name_hell2.c,
tests/pdemo/longer_file_name_hello.c,
tests/pdemo/longer_file_name_main.c, tests/quote.test,
tests/recursive.at, tests/search-path.at, tests/sh.test,
tests/shlibpath.at, tests/standalone.at, tests/static.at,
tests/stresstest.at, tests/subproject.at, tests/suffix.test,
tests/tagdemo-conf.test, tests/tagdemo-exec.test,
tests/tagdemo-make.test, tests/tagdemo-shared.test,
tests/tagdemo-static.test, tests/tagdemo-undef.test,
tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
tests/tagdemo/main.cpp, tests/tagtrace.test,
tests/template.at, tests/testsuite.at: Apply correct license
text according to the new rules set out in HACKING.
2007-03-25 20:12:44 +08:00
|
|
|
Written by Gary V. Vaughan, 2004
|
1999-01-20 18:21:01 +08:00
|
|
|
|
* HACKING (Licensing Rules): Explain the various license texts
used for files distributed with Libtool, and update license text
to match.
* Makefile.am, Makefile.maint README, README.alpha, THANKS, TODO,
bootstrap, clcommit.m4sh, configure.ac, libltdl/Makefile.inc,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
libltdl/config/general.m4sh, libltdl/config/getopt.m4sh,
libltdl/config/ltmain.m4sh, libltdl/config/mailnotify.m4sh,
libltdl/config/mkstamp, libltdl/configure.ac,
libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__dirent.h,
libltdl/libltdl/lt__glibc.h, libltdl/libltdl/lt__private.h,
libltdl/libltdl/lt__strl.h, libltdl/libltdl/lt_dlloader.h,
libltdl/libltdl/lt_error.h, libltdl/libltdl/lt_system.h,
libltdl/libltdl/slist.h, libltdl/loaders/dld_link.c,
libltdl/loaders/dlopen.c, libltdl/loaders/dyld.c,
libltdl/loaders/load_add_on.c, libltdl/loaders/loadlibrary.c,
libltdl/loaders/preopen.c, libltdl/loaders/shl_load.c,
libltdl/lt__alloc.c, libltdl/lt__dirent.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/lt_error.c, libltdl/ltdl.c,
libltdl/ltdl.h, libltdl/m4/argz.m4, libltdl/m4/libtool.m4,
libltdl/m4/ltdl.m4, libltdl/m4/ltoptions.m4,
libltdl/m4/ltsugar.m4, libltdl/m4/ltversion.in,
Jlibltdl/m4/ltversion.m4, libltdl/m4/lt~obsolete.m4,
libltdl/slist.c, libtoolize.m4sh, tests/am-subdir.at,
tests/cdemo-conf.test, tests/cdemo-exec.test,
tests/cdemo-make.test, tests/cdemo-shared.test,
tests/cdemo-static.test, tests/cdemo-undef.test,
tests/cdemo/Makefile.am, tests/cdemo/configure.ac,
tests/cdemo/foo.c, tests/cdemo/foo.h, tests/cdemo/main.c,
tests/cmdline_wrap.at, tests/convenience.at, tests/defs.m4sh,
tests/demo-conf.test, tests/demo-deplibs.test,
tests/demo-exec.test, tests/demo-hardcode.test,
tests/demo-inst.test, tests/demo-make.test,
tests/demo-nofast.test, tests/demo-noinst-link.test,
tests/demo-nopic.test, tests/demo-pic.test,
tests/demo-relink.test, tests/demo-shared.test,
tests/demo-static.test, tests/demo-unst.test,
tests/demo/Makefile.am, tests/demo/configure.ac,
tests/demo/dlmain.c, tests/demo/foo.c,
tests/demo/foo.h, tests/demo/hell1.c, tests/demo/hell2.c,
tests/demo/hello.c, tests/demo/main.c,
tests/depdemo-conf.test, tests/depdemo-exec.test,
tests/depdemo-inst.test, tests/depdemo-make.test,
tests/depdemo-nofast.test, tests/depdemo-relink.test,
tests/depdemo-shared.test, tests/depdemo-static.test,
tests/depdemo-unst.test, tests/depdemo/Makefile.am,
tests/depdemo/configure.ac, tests/depdemo/l1/Makefile.am,
tests/depdemo/l1/l1.c, tests/depdemo/l1/l1.h,
tests/depdemo/l2/Makefile.am, tests/depdemo/l2/l2.c,
tests/depdemo/l2/l2.h, tests/depdemo/l3/Makefile.am,
tests/depdemo/l3/l3.c, tests/depdemo/l3/l3.h,
tests/depdemo/l4/Makefile.am, tests/depdemo/l4/l4.c,
tests/depdemo/l4/l4.h, tests/depdemo/main.c,
tests/depdemo/sysdep.h, tests/deplibs-ident.at,
tests/destdir.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/export.at,
tests/f77demo-conf.test, tests/f77demo-exec.test,
tests/f77demo-make.test, tests/f77demo-shared.test,
tests/f77demo-static.test, tests/f77demo/Makefile.am,
tests/f77demo/configure.ac, tests/f77demo/cprogram.c,
tests/f77demo/foo.h, tests/f77demo/fooc.c,
tests/fail.at, tests/fcdemo-conf.test, tests/fcdemo-exec.test,
tests/fcdemo-make.test, tests/fcdemo-shared.test,
tests/fcdemo-static.test, tests/fcdemo/Makefile.am,
tests/fcdemo/configure.ac, tests/fcdemo/cprogram.c,
tests/fcdemo/foo.h, tests/fcdemo/fooc.c,
tests/inherited_flags.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order.at, tests/link-order2.at,
tests/link.test, tests/lt_dlexit.at, tests/mdemo-conf.test,
tests/mdemo-dryrun.test, tests/mdemo-exec.test,
tests/mdemo-inst.test, tests/mdemo-make.test,
tests/mdemo-shared.test, tests/mdemo-static.test,
tests/mdemo-unst.test, tests/mdemo/Makefile.am,
tests/mdemo/configure.ac, tests/mdemo/foo.h, tests/mdemo/foo1.c,
tests/mdemo/foo2.c, tests/mdemo/main.c, tests/mdemo/mlib.c,
tests/mdemo/sub.c, tests/mdemo2-conf.test,
tests/mdemo2-exec.test, tests/mdemo2-make.test,
tests/mdemo2/Makefile.am, tests/mdemo2/configure.ac,
tests/mdemo2/main.c, tests/nomode.test, tests/nonrecursive.at,
tests/objectlist.test, tests/old-m4-iface.at,
tests/pdemo-conf.test, tests/pdemo-exec.test,
tests/pdemo-inst.test, tests/pdemo-make.test,
tests/pdemo/Makefile.am, tests/pdemo/configure.ac,
tests/pdemo/foo.h, tests/pdemo/longer_file_name_dlmain.c,
tests/pdemo/longer_file_name_foo.c,
tests/pdemo/longer_file_name_foo2.c,
tests/pdemo/longer_file_name_hell1.c,
tests/pdemo/longer_file_name_hell2.c,
tests/pdemo/longer_file_name_hello.c,
tests/pdemo/longer_file_name_main.c, tests/quote.test,
tests/recursive.at, tests/search-path.at, tests/sh.test,
tests/shlibpath.at, tests/standalone.at, tests/static.at,
tests/stresstest.at, tests/subproject.at, tests/suffix.test,
tests/tagdemo-conf.test, tests/tagdemo-exec.test,
tests/tagdemo-make.test, tests/tagdemo-shared.test,
tests/tagdemo-static.test, tests/tagdemo-undef.test,
tests/tagdemo/Makefile.am, tests/tagdemo/baz.cpp,
tests/tagdemo/baz.h, tests/tagdemo/configure.ac,
tests/tagdemo/conv.cpp, tests/tagdemo/conv.h,
tests/tagdemo/foo.cpp, tests/tagdemo/foo.h,
tests/tagdemo/main.cpp, tests/tagtrace.test,
tests/template.at, tests/testsuite.at: Apply correct license
text according to the new rules set out in HACKING.
2007-03-25 20:12:44 +08:00
|
|
|
This file is part of GNU Libtool.
|
1999-05-21 07:55:28 +08:00
|
|
|
|
Simplify license variations, and add missing license texts.
* ChangeLog, ChangeLog.1996, ChangeLog.1997, ChangeLog.1998,
ChangeLog.1999, ChangeLog.2000, ChangeLog.2001, ChangeLog.2002,
ChangeLog.2003, ChangeLog.2004, ChangeLog.2005, ChangeLog.2006,
ChangeLog.2007, ChangeLog.2008, ChangeLog.2009, NEWS: Add
all-permissive license.
* HACKING, README, README.alpha, TODO: Relax license to RMS
encouraged all-permissive terms.
* libltdl/README: Ditto. I added the original license text in
2007, and there's no need for it to be so long for such a trivial
file.
* libltdl/config/getopt.m4sh, libltdl/general.m4sh: Cvs-utils is
dead, and I am the author of these files, so consolidated license
terms to match regular Libtool licensing.
* HACKING (Licensing Rules): Update wording, and list of files for
the all permissive license.
(GPL with CVS-Utils exception clause): Removed. No files have these
license any more.
(GPL with Libtool exception clause): Ditto, only libltdl/README
used to be distributed with this variation.
* AUTHORS: Add GPL license text.
2010-06-09 20:00:19 +08:00
|
|
|
Copying and distribution of this file, with or without modification,
|
|
|
|
are permitted in any medium without royalty provided the copyright
|
|
|
|
notice and this notice are preserved. This file is offered as-is,
|
|
|
|
without warranty of any kind.
|
1997-04-02 03:04:40 +08:00
|
|
|
|
2004-08-30 00:08:13 +08:00
|
|
|
Local Variables:
|
|
|
|
mode: text
|
|
|
|
fill-column: 72
|
|
|
|
End:
|