4493 Commits

Author SHA1 Message Date
Ileana Dumitrescu
d0ceb95e9a
ltmain.in: Update libtool usage for missing options
Some options were not listed in the usage output of libtool: --finish,
--no-quiet, and --no-silent.
2024-11-14 20:21:41 +02:00
Ileana Dumitrescu
92725b31eb
libtool: Rename and reduce to one option, '--no-finish'
'--test' and '--check' options caused confusion with the previous
naming, so it has been updated to '--no-finish' for skipping
finish_cmds.

* build-aux/ltmain.in: Replace option names.
* doc/libtool.texi: Update.
* NEWS: Update.
2024-11-14 20:14:22 +02:00
Ileana Dumitrescu
09e89cc28d
libtool.m4: Fix '-Fe' usage with linking in MSVC
A space after '-Fe' treats a file name as an input file instead of
as the intended output file.

* m4/libtool.m4: Remove space after '-Fe'.
* NO-THANKS: Add Kirill Makurin for bug report 74175.
* NEWS: Update.
2024-11-13 21:45:08 +02:00
Ileana Dumitrescu
0a1e894220
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-12 20:17:11 +02:00
Ileana Dumitrescu
90e1c01272
ltmain.in: Update usage message for libtool
* build-aux/ltmain.in: Add --test and --check usage information.
2024-11-07 18:07:19 +02:00
Ileana Dumitrescu
3996b1fddc
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 options, '--test' and '--check'.
* doc/libtool.texi: Document new options in libtool.
* NEWS: Update for bug fix.
2024-11-07 17:01:47 +02:00
Ileana Dumitrescu
7c310c9b04
libtool.m4: Update hardcode_shlibpath_var for OpenBSD
When generating an executable in OpenBSD, the executable fails to
generate when shlibpath_var, LD_LIBRARY_PATH, is used solely to
locate dependent libraries.

For hardcoding library paths in OpenBSD, see documentation for
hardcode_direct and hardcode_libdir_flag_spec.

* m4/libtool.m4: Update hardcode_shlibpath_var from 'no' to 'unsupported'
  by removing 'with_gnu_ld=no' for OpenBSD.
2024-11-05 17:36:16 +02:00
Ileana Dumitrescu
c165beaa8e
Update NEWS for previous commit 2024-10-25 19:42:14 +03:00
Martin Storsjö
5fa7a3b505
libtool: Prefer response files over linker scripts for mingw tools
The GCC/binutils tools support response files just fine, while
lld (impersonating GNU ld) only supports response files, not
linker scripts. Using a linker script as input just to pass a
list of files is overkill for cases when a response file is enough.

* build-aux/ltmain.in: Move creation of ld script.
* m4/libtool.m4: Add new variable tag for file_list_spec.
2024-10-25 19:36:53 +03:00
Ileana Dumitrescu
c7bfd6884c
libtool: Avoid test failure in OpenBSD
The following errors can be seen for the 'execute mode' test in OpenBSD:
  build/libtool: test: <: missing second argument
  build/libtool: test: >: missing second argument

The cwrapper in OpenBSD cannot parse these symbols as arguments in
execute mode if there are no other characters with them.

* tests/execute-mode.at: Escape '<' and '>' in OpenBSD.
2024-10-25 19:06:44 +03:00
Ileana Dumitrescu
0db5b4ae66
libtool: Use wrapper function for AUTORECONF
Update tests to skip if required autotools are not installed for
executing AUTORECONF and to have stdout saved for checks.

* tests/bug_42313.at: Use LT_AT_AUTORECONF instead of AT_CHECK.
* tests/testsuite.at: Save stdout for LT_AT_AUTORECONF.
2024-10-25 18:23:58 +03:00
Ileana Dumitrescu
2307e56df3
Update NEWS for recent commits 2024-10-25 16:21:40 +03:00
Ileana Dumitrescu
3060c0adf3
libtool: Test trailing slash in destination
This test is added to ensure path comparisons pass when
installing to a destination, specifically when there is a
trailing slash in the destination.

* tests/destdir.at: Add test for trailing slash in destination.
2024-10-25 16:19:17 +03:00
Richard Purdie
b3839cb99b
ltmain.in: Handle trailing slashes on install commands
A command like:

libtool --mode=install /usr/bin/install -c gck-roots-store-standalone.la
'/image/usr/lib/gnome-keyring/standalone/'

where the path ends with a trailing slash currently fails. This occurs in
software like gnome-keyring or pulseaudio and is because the comparision
code doesn't see the paths as equal. Strip both paths to ensure this works
reliably.

* build-aux/ltmain.in: Strip trailing slashes on install commands.
2024-10-25 16:19:10 +03:00
Ileana Dumitrescu
8c428dbfc0
gnulib: Update submodule to recent commit 2024-10-22 19:44:50 +03:00
Ileana Dumitrescu
0e5ef3c259
Update NEWS for recent commits 2024-10-18 17:35:03 +03:00
Alastair McKinstry
b230605ac7
libtool.m4: Support for more flang compilers 2024-10-18 17:17:14 +03:00
Alastair McKinstry
61f184eb60
ltmain.in: Add error message for unknown version type 2024-10-18 17:17:14 +03:00
Alastair McKinstry
8c7a8352e3
libtool: Change how version is derived
Avoid duplication of '(GNU @PACKAGE@) @VERSION@' in multiple
places by using '$scriptversion'.

* libtoolize.in, build-aux/ltmain.in: Change version from
  '(GNU @PACKAGE@) @VERSION@' to '$scriptversion'.
2024-10-18 17:17:14 +03:00
Alastair McKinstry
76656c9fda
libtool: Add support for netbsdelf
* m4/libtool.m4: Add support for netbsdelf*-gnu.
* m4/ltdl.m4: Append netbsdelf*-gnu to netbsd* occurrences in case
  statements.
2024-10-18 17:17:13 +03:00
Alastair McKinstry
d1f3451b78
Makefile.am: Generate description for 'whatis' command
Add '-n' to 'help2man' for documentation and manpage.
2024-10-18 17:17:13 +03:00
Alastair McKinstry
8b4e43f67e
libtool.m4: Add spaces before -L in grep searches
Current searching for "-L" in link paths is over-greedy and
incorrectly handles paths with -L in them.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=896861
2024-10-18 17:17:13 +03:00
Vincent Lefevre
f7d11c71db
libtool.m4: Avoid a broken AC_TRY_EVAL macro
As said in the Autoconf source, the AC_TRY_EVAL macro is dangerous and
undocumented, and should not be used.
In particular, the one related to nm yields binary data in the config.log
file with dash, where "echo \\1" (echo with the argument \1) produces the
control character ^A instead of the usual \1 with most shells (POSIX says
that the result is implementation-defined). See:
  https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=910076
This patch attempts to replace this AC_TRY_EVAL occurrence by code with
similar behavior, but using $ECHO instead of echo in order to avoid the
backslash issue.

https://debbugs.gnu.org/cgi/bugreport.cgi?bug=21309
2024-10-18 17:17:12 +03:00
Vincent Lefevre
549b52175a
libtool.m4: Add run path when linking with tcc
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20622
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=814091
2024-10-18 17:17:12 +03:00
Jonathan Nieder
f9c1943556
libtool.texi: Wrong names for structure members
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=304400
2024-10-18 17:17:12 +03:00
Jonathan Nieder
9a2c8a9d21
libtool.texi: Documentation inconsitent with libltdl3
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=253904
2024-10-18 17:17:06 +03:00
Bruno Haible
3cf528a4f0
libtool.m4: Avoid word splitting on untrusted inputs
If $multilib is set to more than one word, the following error can be
seen during configuration:

	test: too many arguments

* m4/libtool.m4: Wrap variable in quotes.
2024-10-16 17:21:25 +03:00
Ileana Dumitrescu
c5bd2b146f
libtool.m4: Increment serial and typo/spacing fix 2024-10-15 18:04:38 +03:00
Ileana Dumitrescu
6dd1550cf2
Update NEWS for previous commit 2024-10-15 18:03:27 +03:00
Markus Mützel
4cc12b83ff
libtool: Handle unset $multilib for Windows targets.
If `multilib` is unset (which it apparently is by default), the output
from running a `configure` script contains lines like the following:
```
checking dynamic linker characteristics... ../configure: line 26791: test: yes: unary operator expected
Win32 ld.exe
```

The additional output is not a fatal error. But it could be irritating.

Avoid the unexpected output from `test` by making sure `=` is used as a
binary operator.

* m4/libtool.m4: Prepend "x" on both sides of a comparison with `test`
and the operator `=`.

See also: https://github.com/msys2/MINGW-packages/pull/21905
2024-10-15 17:52:50 +03:00
Ileana Dumitrescu
7292b13945
Replace LT_ARGZ_H_PATH usage with bool for LTARGZH_EXISTS
* m4/ltdl.mk: Add conditional with LTARGZH_EXISTS to append path for
  LT_ARGZ_H file to BUILT_SOURCES.
* m4/ltargz.m4: Remove LT_ARGZ_H_PATH.
* m4/ltdl.m4: Add AM_CONDITIONAL for LTARGZH_EXISTS that is set to
  true if LT_ARGZ_H is non-empty.
2024-10-15 17:15:53 +03:00
Ileana Dumitrescu
e4198afeeb
Apply simpler solution for bug#73672
* libltdl/ltdl.mk: Replace conditional with LT_DOLLAR_SIGN for
  LT_ARGZ_H_PATH variable.
* m4/ltargz.m4: Add AC_SUBST for LT_ARGZ_H_PATH to set source path
  to LT_ARGZ_H file.
* NEWS: Remove additional spacing.
2024-10-11 16:42:03 +03:00
Ileana Dumitrescu
d0a2405f86
Fix test failures from LT_DOLLAR_SIGN placement
* configure.ac: Remove AC_SUBST for LT_DOLLAR_SIGN.
* m4/ltargz.m4: Add AC_SUBST for LT_DOLLAR_SIGN.
2024-10-10 20:22:28 +03:00
Ileana Dumitrescu
9d99f7fdfd
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-10 20:16:09 +03:00
Ileana Dumitrescu
5bbdb09509
Update NEWS for previous commit 2024-10-10 17:19:09 +03:00
Sergey Poznyakoff
44ad06b0d2
Don't omit directories from the constructed rpath.
This fixes bug introduced by 0e1b333324.

* build-aux/ltmain.in: Don't omit paths that are not under $progdir
from the compiled_rpath.  Append them to the end of it.
2024-10-10 17:15:18 +03:00
Ileana Dumitrescu
80a1435290
Update NEWS and NO-THANKS for previous commit
* NEWS: List additional bug fix.
* NO-THANKS: Add 'Michael Pratt' for bug#73672 contribution.
2024-10-10 17:10:48 +03:00
Ileana Dumitrescu
a1fe29d73b
Fix errors in distclean and maintainer-clean
The variable, LT_ARGZ_H, can be empty, which causes distclean and
maintainer-clean to error as a directory is attempted to be removed
instead of a file.

When running maintainer-clean for gnulib-tests, the .version file is
missing, which is needed by config.status, so the command will error.

* configure.ac: Update CONFIG_STATUS_DEPENDENCIES to use dotversion so
  that the .version file can be generated if needed. Add AC_SUBST for
  LT_DOLLAR_SIGN use in libltdl/ltdl.mk.
* libltdl/ltdl.mk: Add conditional to check if LT_ARGZ_H is empty.
2024-10-09 20:02:28 +03:00
Joshua Root
35edf20d65
libtool.m4: Update '-single_module' detection
'-single_module' detection is broken with Xcode 15, where a message to
stderr indicates the flag is deprecated, not unsupported.

* m4/libtool.m4: Check macOS versions to see if '-single_module' flag is
  unnecessary.
2024-10-03 18:52:30 +03:00
Ileana Dumitrescu
b38b010bd4
maint: post-release administrivia
* NEWS: Add header line for next release.
* .prev-version: Record previous version.
* cfg.mk (old_NEWS_hash): Auto-update.
2024-09-25 19:12:25 +03:00
Ileana Dumitrescu
dd93fb8d1c
version 2.5.3
* NEWS: Record release date.
2024-09-25 19:12:19 +03:00
Ileana Dumitrescu
951c0510a3
Update tests without aclocal to expect failure
Five tests use aclocal, but do not have a check for whether aclocal is
available to use. This causes reported tests failures in Linux From
Scratch and Darwin builds.

* tests/standalone.at: Add AT_XFAIL_IF check for aclocal for all tests.
* tests/subproject.at: Add AT_XFAIL_IF check for aclocal for last test.
2024-09-25 16:32:59 +03:00
Ileana Dumitrescu
0678589f95
Update NEWS for recent changes 2024-09-18 17:14:22 +03:00
Ileana Dumitrescu
4c5b082a51
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:04:42 +03:00
Ileana Dumitrescu
fe7914feeb
Update NEWS for recent changes 2024-09-13 20:15:28 +03:00
Ileana Dumitrescu
2bf7ef0160
gnulib: Update submodule to recent commit 2024-09-13 19:54:04 +03:00
Ileana Dumitrescu
1638a64075
Add 'aarch64' support to the file magic test
The file magic test fails to determine the file type of libraries when
cross-compiling with an aarch64 compiler without additional strings to
search for in an objdump.

* build-aux/ltmain.in: Append 'pe-aarch64' to file_magic in the
lt_cv_deplibs_check_method.
* m4/libtool.m4: Append 'pe-aarch64' to file format check.
2024-09-11 20:48:18 +03:00
Ileana Dumitrescu
a08d2989cb
libtool.m4: Avoid warning message in test case 30
The test case for deplibs_check_method in tests/demo.at produces a
warning on multiple systems, such as Cygwin and Mingw. To avoid this
warning when using file_magic, '^x86 archive static' is appended for
lt_cv_deplibs_check_method.

* m4/libtool.m4: Append '^x86 archive static' for file_magic in the
lt_cv_deplibs_check_method.
2024-09-11 18:17:17 +03:00
Ileana Dumitrescu
e17ab6a5b5
Fix copyrights for recent test files
* tests/bug_62343.at: Remove years where test file did not exist.
* tests/bug_71489.at: Add missing copyright header.
2024-09-06 18:33:44 +03:00
Ileana Dumitrescu
b165ea8e0a
libtoolize: Fix conflicting warnings about AC_PROG_RANLIB
The macro _LT_CMD_OLD_ARCHIVE inlines the definition of AC_PROG_RANLIB,
which seems to be outdated functionality. Running autoscan in a
directory with ltmain.sh produces conflicting warnings with libtoolize
about AC_PROG_RANLIB. Autoconf warns that AC_PROG_RANLIB is missing,
but libtoolize warns that it is obsolete. The outdated warning should
no longer appear after replacing AC_CHECK_TOOL(RANLIB, ranlib, :) with
AC_REQUIRE([AC_PROG_RANLIB]).

* m4/libtool.m4: Use AC_REQUIRE([AC_PROG_RANLIB]).
* Makefile.am: Added in tests/bug_42313.at.
* tests/bug_42313.at: Contains test cases for bug 42313.
2024-09-06 18:26:18 +03:00