1997-08-21 13:16:08 +08:00
|
|
|
For next public release:
|
|
|
|
************************
|
|
|
|
|
1997-10-22 13:00:03 +08:00
|
|
|
* For every `-L' flag, hardcode a corresponding directory. For
|
|
|
|
aesthetics and least redundancy, this should only be done once for
|
|
|
|
each dir (i.e. no duplicates). So, if the expansion is the same as
|
|
|
|
`-Llibdir', then don't add anything. Also, check that directories
|
|
|
|
added by this feature do not duplicate flags added with `-rpath'.
|
|
|
|
|
|
|
|
The question is: should this only be done for programs? The answer
|
|
|
|
is, I think, YES! Libtool libraries and inter-library dependencies
|
|
|
|
are tricky enough without trying to factor in this complexity.
|
|
|
|
|
1997-08-27 02:44:05 +08:00
|
|
|
* Document `execute' mode, and the experimental nature of -dlopen and
|
|
|
|
-dlpreopen.
|
1997-08-12 23:19:11 +08:00
|
|
|
|
1997-10-15 02:33:24 +08:00
|
|
|
Franc,ois Pinard about debugging:
|
|
|
|
|
|
|
|
``Another thing I'm curious to experiment is how will `gdb' perform
|
|
|
|
with shared libraries. There are a few notes in the manual about
|
|
|
|
generating a "more easy to debug" version of the program. I tried the
|
|
|
|
recipe, but it broke somewhere in Automake generated dependency code,
|
|
|
|
so I got to remove it for now. However, the manual does not explain
|
|
|
|
what the debugging difficulty is, and so, I wonder what problems I
|
|
|
|
will meet.''
|
|
|
|
|
1997-11-28 00:57:00 +08:00
|
|
|
* Document the change from `-allow-undefined' to `-no-undefined'.
|
|
|
|
|
1997-08-27 02:44:05 +08:00
|
|
|
* Some packages, such as GIMP, choose to put a note about
|
|
|
|
`--disable-shared' in their README:
|
1997-08-12 23:19:11 +08:00
|
|
|
|
1997-08-27 02:44:05 +08:00
|
|
|
----------------------------------------------------------------------
|
|
|
|
The GIMP uses GNU libtool in order to build shared libraries on a
|
|
|
|
variety of systems. While this is very nice for making usable
|
|
|
|
binaries, it can be a pain when trying to debug a program. For that
|
|
|
|
reason, compilation of shared libraries can be turned off by
|
|
|
|
specifying the "--disable-shared" option to "configure".
|
|
|
|
----------------------------------------------------------------------
|
|
|
|
Simply invoke configure in the top-level directory. Besides the usual
|
|
|
|
GNU configure options, there are the following SANE specific options:
|
1997-08-12 23:19:11 +08:00
|
|
|
|
1997-08-27 02:44:05 +08:00
|
|
|
--disable-shared
|
|
|
|
Don't use shared libraries. Useful for debugging or when there
|
|
|
|
is a problem building shared libraries.
|
|
|
|
----------------------------------------------------------------------
|
1997-08-12 23:19:11 +08:00
|
|
|
|
1997-08-27 02:44:05 +08:00
|
|
|
Perhaps a similar note could be added to ABOUT-NLS.
|
1997-08-12 23:19:11 +08:00
|
|
|
|
1997-08-27 02:44:05 +08:00
|
|
|
I'll add a suggestion to the libtool documentation, so that other
|
1997-10-15 02:33:24 +08:00
|
|
|
maintainers add this kind of note to their package documentation. The
|
|
|
|
biggest motivation, mentioned by Franc,ois Pinard, is to turn off
|
|
|
|
double-compilation.
|
1997-08-21 13:16:08 +08:00
|
|
|
|
1997-09-15 20:31:09 +08:00
|
|
|
* Bengt Martensson says:
|
|
|
|
|
|
|
|
"Some compilers may allow identifiers which are not legal in ANSI C,
|
|
|
|
for example dollar signs. Such symbols will not be exported. Only
|
|
|
|
symbols which are legal in ANSI C (ASCII letters, digits, and
|
|
|
|
underscore; not starting with a digit) are exported."
|
|
|
|
|
1997-08-21 13:16:08 +08:00
|
|
|
In the future:
|
|
|
|
**************
|
|
|
|
|
1997-11-28 00:57:00 +08:00
|
|
|
* Inter-library dependencies should be automatically tracked by
|
|
|
|
libtool. Reminded by Alexandre Oliva. This also would require
|
|
|
|
looking up installed libtool libraries for transparent support.
|
|
|
|
|
1997-08-12 23:19:11 +08:00
|
|
|
* Implement full multi-language support. Currently, this is only for
|
|
|
|
C++, but there are beginnings of this in the manual (Other Languages).
|
|
|
|
This includes writing libtool not to be so dependent on the compiler
|
|
|
|
used to configure it.
|
|
|
|
|
|
|
|
We especially need this for C++ linking, for which libtool currently
|
|
|
|
does not handle static constructors properly, even on operating
|
|
|
|
systems that support them. ``Don't use static constructors'' is no
|
|
|
|
longer a satisfactory answer.
|
|
|
|
|
1997-09-15 20:31:09 +08:00
|
|
|
People who need it:
|
|
|
|
Jean Daniel Fekete <Jean-Daniel.Fekete@emn.fr>
|
|
|
|
Thomas Hiller <hiller@tu-harburg.d400.de>
|
|
|
|
|
1997-08-28 02:21:56 +08:00
|
|
|
* Writing libtool as a shell script means that proper variable quoting
|
|
|
|
is a real problem. Be careful when `eval'ing a string that the
|
|
|
|
arguments are properly quoted. Note that arguments with embedded
|
|
|
|
whitespace probably will cause problems (because of IFS).
|
|
|
|
|
|
|
|
I don't have good ideas on to fix the problems with whitespace, other
|
|
|
|
than subverting IFS entirely, perhaps always using an `eval "set
|
|
|
|
$quoted_args"' sequence.
|
|
|
|
|
1997-06-30 20:20:49 +08:00
|
|
|
* Another form of convenience library, suggested by Alexandre Oliva,
|
|
|
|
is to have undocumented utility libraries, where only the shared
|
|
|
|
version is installed.
|
|
|
|
|
1997-07-22 01:31:05 +08:00
|
|
|
* We could use libtool object convenience libraries that resolve
|
|
|
|
symbols to be included in a libtool archive.
|
|
|
|
|
1997-07-01 12:38:32 +08:00
|
|
|
* Somehow we need to make sure that static libraries never appear in
|
1997-10-22 13:00:03 +08:00
|
|
|
$deplibs. This, will probably require that libtool discover exactly
|
|
|
|
which files would be linked from which directories when somebody says
|
|
|
|
`-lsomething'. This adds a lot of complexity, but I see no other way
|
|
|
|
around it.
|
1997-07-01 12:38:32 +08:00
|
|
|
|
1997-07-09 01:08:33 +08:00
|
|
|
* Need to finalize the documentation, and give a specification of
|
|
|
|
`.la' files so that people can depend on their format. This also
|
|
|
|
needs to be done so that DLD uses a public interface to libtool
|
|
|
|
archives. This would be a good thing to put before the maintainance
|
|
|
|
notes.
|
|
|
|
|
1997-05-25 06:50:52 +08:00
|
|
|
Things to think about:
|
|
|
|
**********************
|
1997-04-02 03:04:40 +08:00
|
|
|
|
1997-05-25 06:50:52 +08:00
|
|
|
* Implement full support for other orthogonal library types
|
|
|
|
(libhello_g, libhello_p). Make these types configurable. Some
|
|
|
|
thinking will have to be done about the defaults, and what libhello
|
|
|
|
(standard type) should be.
|
1997-04-02 03:00:38 +08:00
|
|
|
|
1997-04-02 03:04:40 +08:00
|
|
|
Maybe we should just add an autoconf macro and get creative with
|
1997-05-25 06:50:52 +08:00
|
|
|
library_transform_name, or something. These changes should be
|
1997-04-02 03:04:40 +08:00
|
|
|
partially driven by the needs of packaging tools, such as RPM and
|
|
|
|
dpkg.
|
1997-04-02 03:00:38 +08:00
|
|
|
|
1997-05-25 06:50:52 +08:00
|
|
|
* Talk with RMS about his so-called `automatic package generation
|
|
|
|
tool.' This is probably what Thomas has been murmuring about for the
|
|
|
|
Hurd. We'll need to integrate package-supplied programs such as
|
|
|
|
libtool into that scheme, since it manages some of the preinstall and
|
|
|
|
postinstall commands, but isn't installed itself. Probably, things
|
|
|
|
like libtool should be distributed as part of such a binary package.
|
|
|
|
|
|
|
|
* Add support for windoze DLL's, and maybe other jumptable libs.
|
|
|
|
Check out Lesstif and Tcl configuration again (maybe they would be
|
|
|
|
interested in libtool by now?). The Cygnus win32 project may also be
|
|
|
|
of value, though it still seems pretty rudimentary right now.
|