493 Commits

Author SHA1 Message Date
Ileana Dumitrescu
1b6fc1940b
libtool.texi: Update link mode documentation
* doc/libtool.texi: Specify a directory after the '-bindir' option
  when linking.
2026-01-24 19:13:22 +02:00
Ileana Dumitrescu
e6f9ae8f18
libtool: Update copyright year 2026-01-02 20:09:41 +02:00
Patrice Dumas
f6aaa6f55d
libtool.texi: Update descriptions for command-line options
* doc/libtool.texi: Make descriptions for '--no-finish' and
  '--reorder-cache' clearer for users to understand.
2026-01-02 19:59:23 +02:00
Ileana Dumitrescu
92d62dcb09
Add test file for libtool-next-version script
* Makefile.am: Add versioning_script.at to testsuite.
* doc/libtool.texi: Update to describe new test file.
* tests/versioning_script.at: Autotest file for testing the output of
  the libtool-next-version script.
2025-09-06 14:25:42 +03:00
Ileana Dumitrescu
2a4cc31b66
Add support for ML64
The Microsoft Macro Assembler can be used to assemble and link one
or more assembly-language source files with libtool.

Reported: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=48993

* Makefile.am: Pass ML64 flags to tests.
* configure.ac: Add language support for the Microsoft Macro Assembler.
* doc/libtool.texi: Update documentation to include ML64.
* m4/libtool.m4: Enable macro support for ML64.
* tests/flags.at: Add test for ML64 flags.
* tests/infer-tag.at: Add test for ML64 tag.
* NEWS: Update.
2025-09-06 14:25:42 +03:00
Ileana Dumitrescu
d575748b83
notes.texi: Inform users about MSVC configuration
When building libltdl with the MSVC toolchain, Fortran checks can cause
issues with finding symbols, but users can avoid this by setting the
Fortran compiler environment variables to "no".

Reported: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=78682

* doc/notes.texi: Add item.
2025-08-07 20:20:04 +03:00
Ileana Dumitrescu
fee0464231
libtool: Update documentation
For many GNU/Linux systems, the shared library cache is not updated
after a "make install". Some reasoning is outlined in the
documentation now for users with instruction for how to update
the shared library cache if desired.

Reported: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=78321

* build-aux/ltmain.in: Add informational note during build.
* doc/notes.texi: Update.
2025-08-07 20:20:00 +03:00
Bruno Haible
6abc943479
doc: Explain how to specify library dependencies.
* doc/libtool.texi (Link mode): Explain how to specify dependencies to
already installed libraries.
2025-08-07 20:19:59 +03:00
Ileana Dumitrescu
9bc7536bd8
libtool: Add configuration options for CXX linking
Add configuration options to choose whether to use '-nostdlib' when
linking C++ shared libraries and modules.

* m4/libtool.m4: Replace '-nostdlib' with variable '$stdlibflag' and
  set '$output_verbose_link_cmd' to be empty when enabling standard
  library linking for C++ modules.
* m4/ltoptions.m4: Add new configuration options, --enable-cxx-stdlib
  and --disable-cxx-stdlib, and add LT_INIT options, cxx-stdlib and
  no-cxx-stdlib.
* doc/libtool.texi: Update for new configuration options.
* NEWS: Update.
2025-04-11 20:45:14 +03:00
Bruno Haible
b31819c723
New program libtool-next-version.
* libtool-next-version.in: New file, based on
gnulib/build-aux/libtool-next-version.
* doc/libtool.texi (Updating version info): Add sub-nodes
'Manual version info update', 'Guided version info update',
'Invoking libtool-next-version'. Note, line breaks use
partial semantic newlines.
* Makefile.am (BUILT_SOURCES): Add libtool-next-version.
(libtoolnextv_in): New variable.
(EXTRA_DIST): Add it.
(bin_SCRIPTS): Add libtool-next-version.
(libtool-next-version): New target.
(libtoolnextv_1): New variable. New target.
(dist_man1_MANS): Add it.
* NEWS: Update.
2025-04-11 20:41:51 +03:00
Ileana Dumitrescu
64ecee50f5
ltoptions.m4: Make aix-soname assignment more clear
The option --with-aix-soname=svr4 does not work the same as using
LT_INIT([aix-soname=svr4]), since the configure script is reordered
depending on which is used. The reordering causes 'enable_shared'
to not be set before processing for 'aix-soname' when using LT_INIT.

For LT_INIT([aix-soname=svr4]) to be set as intended, 'shared' must
be set before 'aix-soname=svr4', like LT_INIT([shared aix-soname=svr4]).

* m4/ltoptions.m4: Warn user if 'enable_shared' has not been set when
  setting 'aix-soname' and add configuration messages to show which
  variant of shared library versioning has been set for 'aix-soname'.
* doc/libtool.texi: Update to specify need for 'shared' to be used
  before 'aix-soname' for LT_INIT.
2025-02-13 17:02:15 +02:00
Karl Berry
7dc108c324
libtool.texi: Update tagging documentation
* doc/libtool.texi: Failure to infer a tag results in a fatal error,
  not in defaulting to tag CC.
2025-02-13 17:02:15 +02:00
Ileana Dumitrescu
1d871cc45b
libtool: Add tagging support for OBJC and OBJCXX
Reported: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=67754

* Makefile.am: Set environment variables for tests.
* configure.ac: Add language support for Objective-C and Objective-C++.
* build-aux/ltmain.in: Update help message for tags available.
* m4/libtool.m4: Add tagging support for OBJC and OBJCXX.
* tests/flags.at: Add tests for passing OBJC and OBJCXX flags.
* tests/infer-tag.at: Add tests for inferring OBJC and OBJCXX tags.
* doc/libtool.texi: Update documentation.
* NEWS: Update.
2025-02-13 16:57:05 +02:00
Ileana Dumitrescu
e24d6ec92b
ltmain.in: Replace old warnings with documentation
Without the ability to disable these old warnings individually, they
are migrating to the relevant section of the documentation to inform
new users that may not know. These warnings have been present for
two decades, so existing users should be aware of this functionality.

* build-aux/ltmain.in: Remove old warnings.
* doc/libtool.texi: Document contents of warning messages.
2025-02-13 16:56:40 +02:00
Ileana Dumitrescu
e66abb28cf
libtool.texi: Document '--no-warnings' in manual 2025-02-13 16:56:39 +02:00
Ileana Dumitrescu
b341c9f8d0
libtool: Update copyright year 2025-01-02 16:30:23 +02:00
Ileana Dumitrescu
5335d4cfbf
libtool.texi: Remove section 'References'
The section 'References' only contained old broken links.

* doc/libtool.texi: Remove broken links from documentation.
2024-11-20 17:36:29 +02:00
Ileana Dumitrescu
4ba29e983c
libtool: Add option to reorder the shared library cache
Add option to reorder the shared library cache in OpenBSD so that user
preferred directories for shared libraries can be used when linking
before directories previously listed in the shared library cache.

This allows for users in OpenBSD to easily switch between versions of
libraries with the same name during testing.

* NEWS: Update for new (OpenBSD) option.
* build-aux/ltmain.in: Add option --reorder-cache=DIRS.
* doc/libtool.texi: Update documentation for new option.
* test/bug_71489.at: Alter test for OpenBSD to utilize new option.
2024-11-20 17:36:21 +02:00
Ileana Dumitrescu
1bda2465d7
libtool: Fix local testing of shared libraries on OpenBSD
On OpenBSD 7.5, the shared library cache is updated with finish_cmds,
which causes the test for 'Use local version' to fail. Simply, installed
versions of shared libraries take precedence over those locally built.

To ensure local versions of shared libraries can be tested properly and
more easily, additional options have been added to libtool to skip
executing finish_cmds, like 'ldconfig -m $libdir' in OpenBSD.

* build-aux/ltmain.in: Add libtool option, '--no-finish.
* doc/libtool.texi: Document new option in libtool.
* NEWS: Update.
2024-11-20 17:03:12 +02:00
Jonathan Nieder
3217b3840c
libtool.texi: Wrong names for structure members
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=304400
2024-10-22 20:02:15 +03:00
Jonathan Nieder
c7e99b6b74
libtool.texi: Documentation inconsitent with libltdl3
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=253904
2024-10-22 20:02:15 +03:00
Ileana Dumitrescu
3226abb870
Update documentation and version output
* libtoolize.in: Overwrite function in bootstrap for printing version
  information for libtoolize.
* build-aux/ltmain.in: Overwrite function in bootstrap for printing
  version information for libtool.
* doc/libtool.texi: Fix typo and correct references for tests/demo
  subdirectory to the tests/demo.at Autotest file.
* gl/top/README-release.diff: Add documentation for maintainers so
  the CVS repository is properly updated following a stable release.
2024-10-22 20:00:47 +03:00
Ileana Dumitrescu
a36e1d8d1e
libtool: Update documentation
* Makefile.am: Fix typo.
* doc/libtool.texi: Add missing test case descriptions and specify
  option and command where missing in test case descriptions.
2024-09-18 17:15:57 +03:00
Bruno Haible
6c8203d2ae
Rename option --with-aix-soname to --enable-aix-soname.
Reported at <https://savannah.gnu.org/support/index.php?110674>.

* doc/libtool.texi (LT_INIT): Talk about --enable-aix-soname instead of --with-aix-soname.
* m4/ltoptions.m4 (_LT_WITH_AIX_SONAME): Use AC_ARG_ENABLE instead of
AC_ARG_WITH. In the default case, use _AC_ENABLE_IF, in order to still
recognize the old option --with-aix-soname.
* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Update comment.
* configure.ac: Update comment.
* NEWS: Mention the change.
2024-09-13 20:19:33 +03:00
Bruno Haible
9a8535f4e9
Rename option --with-pic to --enable-pic.
Reported at <https://savannah.gnu.org/support/index.php?110674>.

* doc/libtool.texi (LT_INIT): Talk about --enable-pic instead of
--with-pic, and about --disable-pic instead of --without-pic.
(Test descriptions): Likewise.
* m4/ltoptions.m4 (_LT_WITH_PIC): Use AC_ARG_ENABLE instead of
AC_ARG_WITH. In the default case, use _AC_ENABLE_IF, in order to still
recognize the old options --with-pic and --without-pic.
* tests/demo.at: Add a test for --enable-pic, keeping the test for
--with-pic. Test '--disable-pic' instead of '--with-pic=no'.
* tests/with-pic.at: Test --enable-pic instead of --with-pic.
* NEWS: Mention the change.
2024-09-13 20:19:33 +03:00
Bruno Haible
001ca1d070
Document situations where -export-symbols does not work.
* doc/libtool.texi (Link mode): Document that -export-symbols does not work on
static libraries. Document the most important platforms where it does not work
on shared libraries.
2024-09-13 20:19:32 +03:00
Tobias Stoeckmann
d6d4397dff
libtool: Fix typos
Typos found with codespell.

* doc/libtool.texi: Change 'incompatabile' to 'incompatible'.
* doc/notes.texi: Change 'neccesary' to 'necessary'.
2024-08-27 18:17:46 +03:00
Ileana Dumitrescu
e22141c0c5
libtool: Update pxref to remove texinfo warning
Building the documentation contains this warning:
  libtool.texi:1333: warning: @pxref node name should not contain `.'

Now, users will be linked to the top of the autoconf manual and need
to manually scroll to the section specified.

* doc/libtool.texi: Specify section header instead of duplicating
  autoconf manual name.
2024-06-18 20:37:17 +03:00
Ileana Dumitrescu
03220dd7ec
libtool: Add remaining test case descriptions
* doc/libtool.texi: Add missing test case descriptions.
2024-06-18 20:37:16 +03:00
Ileana Dumitrescu
90710b139b
libtool: Minor syntax and typo fixes
doc/notes.texi: Duplicate "to" removed.
build-aux/ltmain.in: Useless parentheses in cpp directive removed.
2024-05-11 10:52:47 +03:00
Ileana Dumitrescu
baab057261
libtool: Document warning output options
By default, CATEGORY is set to "all" for all of the warning messages to
be output to standard error. CATEGORY can be set to "none" to disable
warnings.

* doc/libtool.texi: Document "W" or "--warnings=CATEGORY" option.
2024-04-20 12:23:17 +03:00
Ileana Dumitrescu
88fc2b892c
libtool: Remove test_compile
This is cleanup for libtool. The option test_compile is not used in
libtool, and the documentation states that it would probably be dropped
in the future.

* build-aux/ltmain.in: Remove case statement for test_compile.
* doc/libtool.texi: Remove test_compile from documentation.
* m4/libtool.m4: Remove test_compile definition from macro file.
2024-04-08 22:34:19 +03:00
Ileana Dumitrescu
3a82c4aa8c
libtool: Add more test case descriptions
The libtool documentation is still lacking several test case
descriptions for tests/*demo.at Autotest files.

* doc/libtool.texi: Add missing test case descriptions.
2024-03-28 19:30:26 +02:00
Ileana Dumitrescu
deba4f81d2
libtool: Fix and remove TODO for improperly sized symbol in TOC
A comment in the libtool manual specifies a TODO for fixing the font
size of the ++ symbol in the TOC. This is fixed by wrapping the
symbol in a @code command, and this TODO can be removed.

* doc/libtool.texi: Wrap ++ in a @code command to fix font in TOC.
2024-03-26 20:02:19 +02:00
Ileana Dumitrescu
98ed9b7b51
libtool: Fix documentation for demo compile mode commands
The demo compile mode commands in Chapter 3 fail to compile since
the source files include a header file that is not in the header search
list. The config.h file is in the local folder. Before this fix, the
compile mode commands would return errors like below:

main.c:1:10: fatal error: config.h: No such file or directory
    1 | #include <config.h>
      |          ^~~~~~~~~~
compilation terminated.

The '-I' option has been added to the gcc commands to specify that the
local folder should be searched for header files.

* doc/libtool.texi: Add option to demo compile mode commands
2024-03-20 17:48:51 +02:00
Ileana Dumitrescu
498bad82f6
libtool: Some outdated documentation warnings removed
Documentation for dlopen(3) states that it is thread safe, and it is
defined this way by POSIX.

* doc/libtool.texi: Remove old dlopen multi-threaded support warnings.
2024-03-15 17:53:22 +02:00
Ileana Dumitrescu
3561199667
notes.texi: Specify -lasan with -fsanitize=address in g++
When using the flag -fsanitize=address with g++, the user should also
specify -lasan to ensure linking occurs correctly. libtool uses
-nostdlib, and gcc implicitly includes -lasan when -fsanitize=address
is used. However, g++ does not implicitly include -lasan. The
documentation has been updated to reflect this information rather than
adding the -lasan flag to libtool.

* doc/notes.texi: Document that the user should pass -lasan.
2024-03-13 19:08:54 +02:00
Ileana Dumitrescu
b07d71b36d
libtool: Add test case descriptions
The libtool documentation is lacking several test case descriptions
for tests/*demo.at Autotest files.

* doc/libtool.texi: Add missing test case descriptions.
2024-03-07 20:49:16 +02:00
Ileana Dumitrescu
7f254d9682
libtool: Documentation refers to demo directory that no longer exists
The libtool documentation included mention of an old test framework.
The documentation has been reworked to indicate the current test
framework used by libtool, where the tests/*demo directories have been
replaced with tests/*demo.at Autotest files.

* doc/libtool.texi: Clarifies where the example files originate.
* TODO: Remove TODO item related to tests/*demo directories.
2024-03-06 22:03:17 +02:00
Mike Frysinger
10a04bafef
Fix some style & minor grammar.
* doc/libtool.texi: Fix some style & minor grammar.
2024-01-21 17:38:13 +02:00
Ileana Dumitrescu
7e4b026690
* doc/libtool.texi: Minor grammatical fixes. 2024-01-21 17:25:54 +02:00
Antonin Décimo
fd8ab0cbd3 Fix various typos
* NEWS: Fix various typos.
* NO-THANKS, README.md, TODO, bootstrap, bootstrap.conf,
build-aux/edit-readme-alpha, build-aux/git-log-fix, build-aux/ltmain.in,
doc/libtool.texi, libltdl/libltdl/lt_error.h, libltdl/lt__argz.c,
libltdl/ltdl.c, libtoolize.in, tests/depdemo.at, tests/link-order.at: Likewise.
* cfg.mk (old_NEWS_hash): Update.

Copyright-paperwork-exempt: Yes
2024-01-16 17:54:26 -05:00
Jonathan Wakely
efbb2e77df docs: Use @file for .libs directory
* doc/libtool.texi: Use @file format for directory name.
2024-01-14 01:21:12 -05:00
Jonathan Wakely
26bbdd6fbe docs: Fix typo in 'Linking Libraries' section
* doc/libtool.texi: Fix typo.
2024-01-14 01:20:44 -05:00
Antonin Décimo
5576d862c4 docs: Update links to FlexDLL and edll
* doc/libtool.texi: Update website URIs.

Copyright-paperwork-exempt: Yes
2024-01-14 00:35:12 -05:00
Ileana Dumitrescu
ad06c50b00
libtool: removed stale intro in document
Fixes libtool bug https://bugs.gnu.org/64157

* libtool.texi: Removed old and stale introduction from documentation.
2024-01-13 19:09:47 +02:00
Mike Frysinger
85093d697a maint: update copyrights across project 2024-01-12 01:35:32 -05:00
Alex Ameen
2dc7dad770 maint: update copyrights across project. 2022-02-08 12:11:10 -06:00
Alex Ameen
960a33e460 docs: manually recording dependencies in Automake
* doc/libtool.texi (Using Automake): provide example of how to manually record
'BUILT_SOURCES' dependencies for libtool archives.
2021-12-24 12:55:03 -06:00
aakropotkin
1b74d78401 libtool: Add -Wa,* link-mode flag for assembler pass-thru
* build-aux/ltmain.in: add -Wa,* as link-mode flag.
Add help messages for -Wa,* and -Xassember in link mode.
Add help message for -Xcompiler in compile mode.
* doc/libtool.texi: document -Xassembler and -Wa,* for link-mode.
2021-11-18 21:24:47 -06:00