Commit Graph

3935 Commits

Author SHA1 Message Date
Andreas Schwab
59f8a3a6e1 Pass through -g* so that debugging information is not dropped
* ltmain.m4sh (func_mode_link): Pass through -g*.
2012-10-02 21:05:15 +07:00
David Edelsohn
f2a640f7e0 AIX PIC shared library support
* m4/libtool.m4 (_LT_COMPILER_PIC): Add -fPIC to GCC and GXX for AIX.
2012-10-02 21:05:13 +07:00
Brad Smith
90529a55ef Update/simplify OpenBSD support
* m4/libtool.m4: Forget about 11 year old releases.
2012-10-02 21:05:12 +07:00
Peter Rosin
d702946c65 libtool: quote progpath properly
Attempt to handle spaces in paths better.

* build-aux/ltmain.m4sh (func_mode_install, func_mode_link): Quote
$progpath.
* THANKS: Update.
2012-10-02 21:05:10 +07:00
Mike Frysinger
8392cd263e Handle getconf returning "undefined".
* m4/libtool.m4: Check for "undefined" from `getconf`.
2012-10-02 21:04:50 +07:00
Peter Rosin
430e782755 bootstrap: delete unneeded README-release patch
* gl/top/README-release.diff: Delete.
2012-10-02 21:04:39 +07:00
Peter O'Gorman
d60b4387c1 Fix typo that caused sys_lib_search_path_spec to be wrong.
* m4/libtool.m4: s/lt_fooi/lt_foo/.
Reported by Paul Seidler <sepek@lavabit.com>
2012-10-02 21:04:32 +07:00
Samuel Thibault
47a889a4ca Improve GNU/Hurd support.
* m4/libtool.m4: Add gnu* match where it was missing.
2012-10-02 21:04:19 +07:00
Titus von Boxberg
8f975a1368 Accept clang's -stdlib linker flag.
build-aux/ltmain.m4sh: Don't drop the -stdlib= flag.
2012-10-02 21:04:15 +07:00
Juergen Reuter
f8a4b90f9a Enable nagfor fortran compiler support
* build-aux/ltmain.m4sh: nagfor compatible version string.
* m4/libtool.m4: nagfor support.
2012-10-02 21:04:04 +07:00
Juergen Reuter
b25625e6b2 Fixing -shared error message for nagfor compiler.
* m4/libtool.m4: Fix -shared.
2012-10-02 21:03:39 +07:00
Pavel (Pasha) Shamis
3467227ccb Improve debug error reporting in ltdl.
* libltdl/ltdl.c: Print the error message if loading fails.
2012-10-02 21:03:29 +07:00
Peter O'Gorman
8bfac9e3e8 Deleted unneeded gitlog-to-changelog patch
* gl/build-aux/gitlog-to-changelog.diff: Delete.
2012-10-02 21:03:20 +07:00
Peter Rosin
baffe66191 cwrapper: avoid surplus strlen calculations.
* build-aux/ltmain.m4sh (func_emit_cwrapperexe_src:lt_update_exe_path):
Avoid surplus strlen calculations.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-10-02 21:03:17 +07:00
Gary V. Vaughan
822881fe3c bootstrap: fix Autoconf version typo.
* build-aux/options-parses: s/2\.62/2.68/

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:03:15 +07:00
Gary V. Vaughan
f7f249a0e6 gnulib: update gnulib submodule.
Among others, this fixes the reference to a local commit.
* gnulib: Updated to todays master HEAD revision.
* gl/top/README-release.diff: Update to account for changes to
gnulib/top/README-release since the last gnulib update.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:03:13 +07:00
Gary V. Vaughan
c03789b8ee libtool: make fork minimisation compatible with dash and zsh.
* build-aub/general.m4sh (lt_HAVE_PLUSEQ_OP): Instead of using
$((..)) arithmetic, which causes an error on dash, use a case
based bash version check.
(lt_HAVE_ARITH_OP, lt_HAVE_XSI_OPS): Also short circuit the
feature probing forks and set these automatically when zsh is
detected.
Reported by Stefano Lattarini.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:03:11 +07:00
Gary V. Vaughan
78385ffd8a bootstrap: adopt autoconf echo normalization code.
Dash shipped with Ubutu-11.10 as /bin/sh, among others, still
has a crippled echo builtin that mis-handles backslashes.
* build-aux/options-parser (bs_echo): Adopt the autoconf echo
normalization code to find a suitable replacement for buggy echo
commands.
Adjust all uses of echo to $bs_echo.
* build-aux/extract-trace (func_extract_trace, func_main):
Likewise.
* bootstrap: To retain some execution speed on platforms with
buggy builtin echo, replace most occurrences of `echo' with
`$bs_echo' - except where its arguments will obviously never
contain backslashes or be overly long.
Reported by Reuben Thomas.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:03:09 +07:00
Gary V. Vaughan
7d25536e80 libtool: minimise forks per invocation under bash.
* build-aux/general.m4sh (lt_HAVE_PLUSEQ_OP, lt_HAVE_ARITH_OP)
(lt_HAVE_XSI_OPS): Set these without forking a test script when
running under bash, to avoid a few unnecessary forks.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:03:07 +07:00
H.J. Lu
7a2a8f32bb Support x32.
* m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
2012-10-02 21:03:01 +07:00
Gary V. Vaughan
c5dec32e37 maint: disable prohibit_always-defined_macros syntax check.
Aside from Apple grep silently failing to run this test and
report violations, libtool still uses non-gnulib versions of
dirent.h and argz.h which use the same macros, but are not
always-defined.
* cfg.mk (local-checks-to-fix): Move
sc_prohibit_always-defined_macros from here...
(local-checks-to-skip): ...to here.
Reported by Peter O'Gorman.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:59 +07:00
Gary V. Vaughan
a2445f0fdb tests: s/snippit/snippet/.
* tests/demo/foo.h, tests/pdemo/foo.h: Spell `snippet' correctly.
Reported by Stefano Lattarini.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:58 +07:00
Gary V. Vaughan
0c953ba5cc tests: make sure file restore traps are called correctly on AIX.
* tests/demo-noinst-link.test (func_save_files): set the restore
trap outside a function, otherwise AIX 5.3 /bin/sh will run the
trap at the end of the function, instead of when the script
exits.
* tests/demo-relink.test (func_save_files): Ditto.
* tests/depdemo-relink.test (func_save_files): Ditto.
Reported by Stefano Lattarini.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:56 +07:00
Gary V. Vaughan
f32a760fbd bootstrap: put back missing spaces before parens.
* bootstrap (func_require_buildreq_autobuild)
(func_require_buildreq_automake): Vi's delete word command is
too greedy and also eats trailing whitespace before following
non-word-chars. Put back the spaces it ate so that
syntax-checks pass once again.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:55 +07:00
Gary V. Vaughan
a80878742d libtoolize: refactor copying filter creation.
Prevent the various require_filter functions from becoming too
long by factoring common code into new functions.
* libtoolize (func_make_relative_dir_filter)
(func_make_relative_ltdl_filter): New functions. Generalize and
consolidate the various similar snippets for concatenating
together the sed scripts for func_copy filtering.
(require_filter_Makefile_am, require_filter_aclocal_m4)
(require_filter_configure_ac): Simplify.
(require_ltdl_relative_aux_dir): Remove.
(require_ltdl_relative_macro_dir): Ditto.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:52 +07:00
Gary V. Vaughan
d56683630a maint: pick XSI funcs at runtime, not configure time.
Determine, on a function by function basis, what XSI features
are available in the shell that is actually running the script,
rather than the one that was picked at configure time by the
re-execution engine.
* m4/libtool.m4 (_LT_PROG_FUNCTION_REPLACE)
(_LT_PROG_REPLACE_SHELLFNS): Remove.
(_LT_CHECK_SHELL_FEATURES): Remove tests for XSI and += support.
* build-aux/general.m4sh (func_append, func_append_quoted)
(func_arith, func_len, func_basename, func_dirname)
(func_dirname_and_basename, func_stripname): List both enhanced
and fallback implementations, and choose one based on whether
the enhanced features required by the fastest version are
available.
* build-aux/getopt.m4sh (func_split_short_opt)
(func_split_long_opt): Ditto.
* build-aux/ltmain.m4sh (func_lo2o, func_xform): Ditto.
* tests/getopt-m4sh.at: Add tests for enhanced and fallback
implementations of func_arith, func_len, func_stripname and
func_dirname_and_basename.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:50 +07:00
Gary V. Vaughan
ca82143600 maint: share useful functions from general.m4sh.
* build-aux/ltmain.m4sh (func_append, func_append_quoted)
(func_arith, func_len): Removed from here...
* build-aux/general.m4sh (func_append, func_append_quoted)
(func_arith, func_len): ...and added to here.
(func_dirname, func_dirname_and_basename, func_normal_abspath)
(func_relative_path): Use func_append.
* tests/getopt-m4sh.at (_LT_AT_FALLBACK_FUNC_EXTRACT): Removed.
Fallback functions are now in any m4sh generated file
automatically.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:48 +07:00
Gary V. Vaughan
c7d7e46fbe libtoolize: reorder function definitions to keep func_filter_* together.
* libtoolize: Restore asciibetical order, so that all the
filter function definitions are together.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:46 +07:00
Gary V. Vaughan
156a851bc5 libtoolize: use _filter as a prefix for better ordering.
* libtoolize.m4sh (require_Makefile_am_filter)
(require_ltdl_mk_filter, require_aclocal_m4_filter)
(require_configure_ac_filter): Rename these functions from this...
(require_filter_Makefile_am, require_filter_ltdl_mk)
(require_filter_aclocal_m4, require_filter_configure_ac): ...to
this, respectively.  Adjust all callers.
(Makefile_am_filter, ltdl_mk_filter, aclocal_m4_filter)
(configure_ac_filter): Rename these global variables from this...
(filter_Makefile_am, filter_ltdl_mk, filter_aclocal_m4)
(filter_configure_ac): ...to this, respectively.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:44 +07:00
Gary V. Vaughan
87c4cffb19 libtoolize: rename ltdl.mk filter function.
* libtoolize.m4sh (require_Makefile_inc_filter): Rename from
this...
(require_ltdl_mk_filter): ...to this. Adjust all callers.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:42 +07:00
Gary V. Vaughan
c5230035e5 bootstrap: escape quotes properly in generated functions.
* bootstrap: Although not a real bug, for consistency, be sure
to correctly escape single quotes inside a single quoted
function generator.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:40 +07:00
Gary V. Vaughan
cb4ed2559e bootstrap: reorder function definitions to keep func_buildreq_* together.
* bootstrap: Restore asciibetical order, so that all the
buildreq function definitions are together.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:37 +07:00
Gary V. Vaughan
9f3cec5b2e bootstrap: use _buildreq as a prefix for better ordering.
* bootstrap (require_autobuild_buildreq)
(require_autoconf_buildreq, require_automake_buildreq)
(require_autopoint_buildreq, require_libtoolize_buildreq)
(require_patch_buildreq): Rename from these...
(require_buildreq_autobuild, require_buildreq_autoconf)
(require_buildreq_automake, require_buildreq_autopoint)
(require_buildreq_libtoolize, require_buildreq_patch): ...to
these, respectively.  Adjust all callers.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:29 +07:00
Gary V. Vaughan
5f27eeb0a3 bootstrap: ensure consistent function header comments.
* bootstrap (require_bootstrap_uptodate)
(require_buildtools_uptodate): Use `require_...' in header
comment for these functions to be consistent with the rest,
rather than `func_require_...'.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:27 +07:00
Gary V. Vaughan
013c91874e bootstrap: make sure patch is available to bootstrap if necessary.
Make sure we're not lacking any functionality provided by the
incumbent gnulib bootstrap script, and where it's easy to do so
(like it is here), provide better functionality!
* bootstrap (require_patch): Make sure that PATCH expands to the
best `patch' command available on the system, honouring
overrides in the users environment.
(require_patch_buildreq): Automatically add a requirement for a
patch command to buildreq when there are diff files in
$local_gl_dir.
(func_require_buildtools_uptodate): Call require_patch_buildreq
before testing build tool versions.
(func_gnulib_tool_copy_file): Make sure PATCH is set before using
gnulib-tool to copy files.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:25 +07:00
Gary V. Vaughan
006695fed2 maint: Fix generated ChangeLog typos.
* build-aux/git-log-fix: Spell Stefano Lattarini's name
correctly.
Don't use my home email address for GNU commits.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:22 +07:00
Gary V. Vaughan
ff3b32aed7 syntax-check: fix violations and implement sc_prohibit_sed_s_comma.
I like to name temporary directories that I will remove shortly
with two leading commas so that they sort lexicographically at
the top of `ls' output.  Now, `./configure
--prefix=`pwd`/,,inst' works again, for the first time in
several years.
* cfg.mk (sc_prohibit_sed_s_comma): Comma is too common a
character to use routinely as the separator for sed
substitutions on file paths and other variables determined by
the user, causing bugs like the one I describe above.  Make sure
we don't accidentally reintroduce any comma separators in
future.
* Makefile.am, bootstrap, bootstrap.conf, build-aux/extract-trace,
build-aux/general.m4sh, build-aux/git-hooks/commit-msg,
build-aux/git-log-fix, build-aux/ltmain.m4sh, libtoolize.m4sh,
m4/libtool.m4, m4/ltdl.m4, tests/cdemo-undef.test,
tests/cmdline_wrap.at, tests/darwin.at, tests/defs.m4sh,
tests/getopt-m4sh.at, tests/install.at, tests/libtoolize.at,
tests/mdemo/Makefile.am, tests/need_lib_prefix.at,
tests/sysroot.at, tests/tagdemo-undef.test, tests/testsuite.at:
Try to use `|' as the default separator wherever possible,
otherwise something else that doesn't occur in the substitution
expression.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:16 +07:00
Gary V. Vaughan
d43b40113e syntax-check: [REDO] fix violations and implement sc_prohibit_test_const_follows_var.
To safely use a non-literal fist argument to 'test', you must
always prepend a literal non-'-' character, but often the second
operand is a constant that doesn't begin with a '-' already, so
always use 'test a = "$b"' instead of the noisy 'test "X$b" = Xa'.
* cf.mk (sc_prohibit_test_const_follws_var): New syntax-check
rule to ensure we don't reintroduce noisy test operands.
bootstrap, build-aux/extract-trace, build-aux/general.m4sh,
build-aux/ltmain.m4sh, configure.ac, doc/libtool.texi, libtoolize.m4sh,
m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, tests/bindir.at, tests/defs.m4sh,
tests/demo-relink.test, tests/demo/configure.ac,
tests/depdemo-relink.test, tests/destdir.at, tests/duplicate_conv.at,
tests/fail.at, tests/getopt-m4sh.at, tests/help.at, tests/libtoolize.at,
tests/link-2.test, tests/link-order2.at, tests/lt_dlopenext.at,
tests/mdemo/configure.ac, tests/mdemo2/configure.ac,
tests/need_lib_prefix.at, tests/nocase.at, tests/pdemo/configure.ac,
tests/pic_flag.at, tests/search-path.at, tests/shlibpath.at,
tests/static.at, tests/sysroot.at, tests/tagtrace.test,
tests/testsuite.at, tests/with-pic.at: Swap operands to avoid useless
noise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-10-02 21:02:16 +07:00
Peter Rosin
d674eaa44c tests: skip with-pic test when no "real" pic flag is used.
* tests/with-pic.at: Windows uses "-DDLL_EXPORT -DPIC" as the pic
"flag", but never applies it to static libraries. Cater for this
and skip if no "real" pic flag is in use.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
2012-09-19 11:53:02 +02:00
Gary V. Vaughan
303040ad81 syntax-check: fix texinfo formatting flagged by prohibit_undesirable_word_seq.
* doc/libtool.text: Fix several misuses of @xref and @pxref so that
the prohibit_undesirable_word_seq syntax check passes again.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:59:49 +07:00
Gary V. Vaughan
864f33316d syntax-check: remove useless_braces_in_variable_derefs.
* build-aux/general.m4sh: Remove spurious braces around
${ZSH_VERSION} dereference.
* build-aux/ltmain.m4sh (func_mode_link): Likewise for ${wl}.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:59:49 +07:00
Gary V. Vaughan
22f7f568aa syntax-check: skip prohibit_strncpy.
* cfg.mk (local-checks-to-skip): sc_prohibit_strncpy.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:52:16 +07:00
Gary V. Vaughan
07316202db syntax-check: skip prohibit_always_true_header_tests rule.
* cfg.mk (local-checks-to-skip): Add
sc_prohibit_always_true_header_tests.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:52:16 +07:00
Gary V. Vaughan
6370af6d4a Revert "bootstrap: delete unneeded README-release patch"
This reverts commit 11cd425e7d.

These instructions are hard to find for new maintainers, so it's
good to keep them to hand with the release notes.

And the additional distchecks are important prior to a release.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:52:15 +07:00
Gary V. Vaughan
fa69af3a60 maint: remove unused cvsu script.
* build-aux/cvsu: Remove. This script is not useful now that
Libtool's repository is hosted in git.
* Makefile.am (build_scripts): Remove cvsu reference.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:52:15 +07:00
Gary V. Vaughan
387ac2e703 maint: run update-copyright for missing 2011 and 2012 years.
See maintain.texi (Copyright Notices) for rules for maintaining
the years in copyright notices.
* All Files (Copyright): Updated with missing 2011 and 2012.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:52:10 +07:00
Gary V. Vaughan
de56e14ea7 bootstrap: use gnulib update-copyright script.
See maintain.texi (Copyright Notices) for rules for maintaining
the years in copyright notices.
* bootstrap.conf (gnulib_modules): Add update-copyright.
* cfg.mk (update-copyright-env): Set environment variables for
update-copyright script.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:51:21 +07:00
Gary V. Vaughan
8cbdff9434 bootstrap: update bootstrap script to latest upstream.
* bootstrap, build-aux/options-parser: apply upstream fixes and
enhancements.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 17:08:58 +07:00
Gary V. Vaughan
6527d1aed2 git: don't complain about new parallel tests driver and file droppings.
* build-aux/.gitignore: Ignore parallel `test-driver' script.
* tests/.gitignore: Ignore `test-driver' .trs file droppings.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 14:34:14 +07:00
Gary V. Vaughan
8cbd148e02 gnulib: update local gnulib patches.
* gl/build-aux/announce-gen.diff: Remove hunks adopted upstream.
* gl/build-aux/do-release-commit-and-tag.diff: Refresh this patch
to match current gnulib.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
2012-09-16 14:34:14 +07:00