]> git.ipfire.org Git - thirdparty/libtool.git/log
thirdparty/libtool.git
11 years agolibtool: Don't fall back to static libraries if building them was disabled
Vadim Zeitlin [Thu, 10 Oct 2013 00:35:13 +0000 (17:35 -0700)] 
libtool: Don't fall back to static libraries if building them was disabled

If -no-undefined was not specified but the platform didn't
support shared libraries with undefined symbols (e.g. Cygwin/
MinGW), static libraries were built instead of shared ones,
even if building them was explicitly disabled with --disable-
static configure option.

Fix this by stopping with a fatal error if a shared library
can't be built in this case instead of unexpectedly building a
static library instead.

* libltdl/config/ltmain.m4sh (func_mode_link()): Stop with
fatal error when trying to build a shared library without -no-
undefined on a platform not supporting undefined symbols in
shared libraries.

Copyright-paperwork-exempt: Yes

11 years agolibtool: Remove unneeded quotes in assignment.
Brooks Moses [Wed, 9 Oct 2013 23:39:31 +0000 (16:39 -0700)] 
libtool: Remove unneeded quotes in assignment.

The quotes in this assignment cause "make syntax-check" to
fail.  Thus, this patch removes them.

11 years agolibtool: Fix x86_64-pc-solaris2.* GNU ld breakage
Fabian Groffen [Wed, 9 Oct 2013 21:44:15 +0000 (14:44 -0700)] 
libtool: Fix x86_64-pc-solaris2.* GNU ld breakage

Since commit [1] libtool tries to set a 64-bits target for GNU
ld.  However, it does so wrongly for x86_64-pc-solaris2.*
targets, causing libtool to believe the linker is called
ld_sol2.  There is no such thing, and it obviously breaks
things further down.  Some people wrongly assume there is
supposed to be an ld_sol2 on their systems, e.g. [2].

I think the original change is fragile, because it assumes it
has all CHOSTs matched, then appends _sol2.  In the wild,
people have used amd64-pc-solaris2* too, so perhaps it would
be safer if the code only appended _sol2 if there is actually
an explicit target set.

Anyhow, since the 64-bits sparc target is called sparc64-* or
sparcv9-*, the sparc case is already correctly handled, so in
the attached patch, I just added an x86_64-* case, although I
could imagine relaxing the i?86 case to *86*-pc-solaris2* too.

In any case, defaulting to a linker called ld_sol2 is wrong.

[1] http://lists.gnu.org/archive/html/libtool-commit/2011-02/
msg00000.html
[2] http://osdyson.org/issues/8

Copyright-paperwork-exempt: Yes

11 years agolibtool: Fix detection of ld version with parentheses.
Olivier Blin [Wed, 9 Oct 2013 21:33:39 +0000 (14:33 -0700)] 
libtool: Fix detection of ld version with parentheses.

ld from crosstool-NG reports a version string with an extra
version number in a parenthetical note:
GNU ld (crosstool-NG 1.13.0) 2.21.1

This made libtool assume that the ld version was the
crosstool-NG version (1.13.0) instead of the real ld version
(2.21.1).

To fix the ld version string, this patch filters out any string
between parentheses that is followed by a space.

Because of this bug, filtering of exported symbols was not
taking place with crosstool-NG toolchains.

This issue has bee noticed when building pango, which exported
harfbuzz symbols that should have remained hidden.

Copyright-paperwork-exempt: Yes

11 years agolibtool: Fix comment indentation
Brooks Moses [Wed, 9 Oct 2013 21:28:16 +0000 (14:28 -0700)] 
libtool: Fix comment indentation

This trivial patch fixes indentation on a comment to match
the style used elsewhere in m4/libtool.m4.

11 years agolibtool: Add TPF settings for LT_SYS_DLOPEN_SELF
DJ Delorie [Wed, 9 Oct 2013 21:25:13 +0000 (14:25 -0700)] 
libtool: Add TPF settings for LT_SYS_DLOPEN_SELF

* m4/libtool.m4: Since we know that all TPF builds are cross-
builds, do not attempt to run linker tests during config. Use
known constants instead, since we know how dlopen() is
implemented.

11 years agolibtool: Fix $wl setting for tcc on GNU systems
Vincent Lefevre [Wed, 9 Oct 2013 21:19:07 +0000 (14:19 -0700)] 
libtool: Fix $wl setting for tcc on GNU systems

(This addresses http://bugs.debian.org/663945.  See there for
more-detailed discussion.)

tcc gained support for "-Wl,-rpath -Wl,<directory>" in its
commit 7fb0482a ("Support linker options passed in several -Wl
param", 2012-03-14) but libtool doesn't know to use it.  Teach
it.

Without this change, running "make check" on MPFR when it has
been built with tcc and shared libraries doesn't work because
libtool generates a -rpath option, which tcc doesn't support.

Copyright-paperwork-exempt: Yes

11 years agolibtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.
Peter Johansson [Wed, 9 Oct 2013 21:08:25 +0000 (14:08 -0700)] 
libtool: use AS_HELP_STRING in LT_WITH_SYSROOT help message.

This patch fixes so help output is formatted similar with
other macros using AS_HELP_STRING. Also it outputs '[=DIR]'
as I suspect intended rather than '=DIR'.

11 years agolibtool: Haiku change for shlibpath_overrides_runpath
Joseph Prostko [Wed, 9 Oct 2013 20:34:08 +0000 (13:34 -0700)] 
libtool: Haiku change for shlibpath_overrides_runpath

Pretty much all changes to Haiku for Libtool have been
upstreamed, however we currently have an incorrect value for
shlibpath_overrides_runpath.  It should be "no" instead of
"yes".

Previously Scott McCreary had submitted patches for us, but I
told him I would work to get this committed, as he is quite
busy lately.

Here is a commit he made to our Haiku Ports site though, that
shows the exact change I am proposing done against Libtool
2.4.2.

http://ports.haiku-files.org/browser/haikuports/sys-devel/
libtool/patches/libtool-2.4.2.patch

Copyright-paperwork-exempt: Yes

11 years agolibtool: Discard "-mllvm $arg" options when linking.
Brooks Moses [Wed, 9 Oct 2013 19:32:48 +0000 (12:32 -0700)] 
libtool: Discard "-mllvm $arg" options when linking.

Clang accepts options of the form "-mllvm $arg", and passes the
argument as an option to LLVM.  These options caused problems
for Libtool when linking; in some cases, the -mllvm option is
passed through but the corresponding argument is dropped.  (See
for example http://llvm.org/bugs/show_bug.cgi?id=14716.)

This patch resolves the issue by explicitly matching -mllvm and
taking an argument.  Since Clang never uses LLVM for linking,
the matched "-mllvm $arg" option is irrelevant for the link
step, and we can simply discard it once we've recognized it.

Co-authored-by: Johannes Obermayr <johannesobermayr@gmx.de>
Copyright-paperwork-exempt: Yes

12 years agomaint: Fix various comment and documentation typos.
Ondřej Bílka [Wed, 9 Oct 2013 01:06:56 +0000 (18:06 -0700)] 
maint: Fix various comment and documentation typos.

Ondřej writes: "Hi, this is upstream version of patch that I
sent to gcc.  I generated this patch with tool that I am
writing: https://github.com/neleai/stylepp"

(Note: The generated patch was adjusted to retain the non-US
but correct spelling of 'rigourous' before commit.  --Brooks)

12 years agolibtool: Add Android/Linux support.
David 'Digit' Turner [Tue, 8 Oct 2013 21:37:32 +0000 (14:37 -0700)] 
libtool: Add Android/Linux support.

This patch adds proper Android support to libtool. The main
issues are the following:

  - Versioned libraries are not supported by the platform and
    its build/packaging tools.

  - The dynamic linker is not GNU ld, there is no support for
    DT_RUNPATH.

  - Similarly, there is no ldconfig.

12 years agolibtool: trust -print-search-dirs from recent GCC
Peter Rosin [Tue, 17 Sep 2013 18:33:12 +0000 (20:33 +0200)] 
libtool: trust -print-search-dirs from recent GCC

Alan Modra hints in [1] that -print-search-dirs was fixed in
GCC 4.2(?), so that it nowadays automatically appends
-print-multi-os-directory for the applicable directories. I.e.
it should no longer be necessary for libtool to append a second
../lib64 when GCC has already done so. Also, the multi-os
appending loop seems to have been added specifically for early
(arguably broken) bi-arch enabled GCCs that printed -m32
directories even though -m64 was the default [2]. So, my
conclusion is that we want any libtool magic to affect
-print-search-dirs output from contemporary GCCs as little as
possible, while continuing to append the
-print-multi-os-directory for the legacy case.

Fixes bug#15321 reported by Ozkan Sezer.

[1] http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20425
[2] http://lists.gnu.org/archive/html/bug-libtool/2006-09/msg00019.html

* m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): If any of the
directories printed by -print-search-dirs ends with the
content of -print-multi-os-directory, then assume that
GCC adds the multi-os-directory where appropriate all by
itself and hence don't try to second guess when to add
it manually.
* THANKS: Update.

12 years agobootstrap: clean up spurious 'gnulib-cache.m4 missing' error.
Gary V. Vaughan [Mon, 16 Sep 2013 04:02:23 +0000 (11:02 +0700)] 
bootstrap: clean up spurious 'gnulib-cache.m4 missing' error.

* gl/build-aux/bootstrap.in (func_reconfigure): Don't show an
error when running without gnulib-cache.m4.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: make ensure_changelog work for update mode projects.
Gary V. Vaughan [Sun, 15 Sep 2013 13:35:15 +0000 (20:35 +0700)] 
bootstrap: make ensure_changelog work for update mode projects.

* gl/build-aux/bootstrap.in (func_bootstrap): Move
func_changelog_ensure invocation from here...
(func_reconfigure): ...to here. If gnulib_modules is empty, then
grep gnulib-cache.m4 for gitlog-to-changelog before invoking
func_changelog_ensure.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.
Gary V. Vaughan [Sun, 15 Sep 2013 06:38:11 +0000 (13:38 +0700)] 
bootstrap: fetch defaults from gnulib-cache.m4 for non-imported projects.

Recent changes uncovered some bugs in handling of gnulib-tool
options for projects that check in gnulib-cache.m4 rather than
keep a separate list of modules and options in bootstrap.conf.
* gl/build-aux/bootstrap.in (func_require_doc_base)
(func_require_gnulib_name, func_require_local_gl_dir): New
functions to set defaults from gnulib-cache.m4 in projects that
use gnulib-tool in --update mode.
(func_require_gnulib_tool_base_options): Use them to fetch
defaults.
(func_require_gnulib_copy_cmd): New function to calculate the
options required for gnlib-tool copy command.
(func_gnulib_tool_copy_file): Simplify accordingly.
(scriptversion): Bump.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agomaint: normalise formatting of recent commit log entry.
Gary V. Vaughan [Thu, 5 Sep 2013 05:16:25 +0000 (12:16 +0700)] 
maint: normalise formatting of recent commit log entry.

* build-aux/git-log-fix: Add a summary line to ChangeLog entry of
most recent commit.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years ago* AUTHORS: Add myself to committers list.
Brooks Moses [Thu, 5 Sep 2013 01:47:08 +0000 (18:47 -0700)] 
* AUTHORS: Add myself to committers list.

12 years agobootstrap: gnulib_tool=true means no gnulib submodule.
Gary V. Vaughan [Thu, 29 Aug 2013 13:44:42 +0000 (20:44 +0700)] 
bootstrap: gnulib_tool=true means no gnulib submodule.

* gl/build-aux/bootstrap.in (func_require_gnulib_tool): No
sneaking off and cloning gnulib when the user already specified
gnulib_tool=true in their bootstrap.conf!
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: make first char of IFS a space.
Alan Modra [Fri, 23 Aug 2013 13:36:32 +0000 (20:36 +0700)] 
bootstrap: make first char of IFS a space.

Putting tab first in IFS breaks func_echo_all usage of $*,
resulting in failure of func_infer_tag to match a command line
using a $CC with trailing spaces. The trailing spaces were
stripped out of CC_expanded but words in $CC were separated by
tabs. This didn't match the makefile expansion of $CC using the
standard IFS with a first char of space.
* gl/build-aux/funclib.sh (IFS): Make first char a space.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: support --no-git and --no-po options.
Gary V. Vaughan [Fri, 23 Aug 2013 13:28:25 +0000 (20:28 +0700)] 
bootstrap: support --no-git and --no-po options.

* gl/build-aux/bootstrap.in (bootstrap_parse_options): Accept
--no-git as an alias for --skip-git for compatibility with gnulib
bootstrap, and --no-po for symmetry.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: support gnulib gnulib_tool_option_extras settings.
Gary V. Vaughan [Fri, 23 Aug 2013 13:17:50 +0000 (20:17 +0700)] 
bootstrap: support gnulib gnulib_tool_option_extras settings.

* gl/build-aux/bootstrap.in (func_gnulib_tool): Even though we
don't need it, support gnulib_tool_option_extras for bootstrap.conf
ported from gnulib bootstrap.
* bootstrap: Regenerate.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: support sha1 binary on OpenBSD.
Gary V. Vaughan [Fri, 23 Aug 2013 12:55:27 +0000 (19:55 +0700)] 
bootstrap: support sha1 binary on OpenBSD.

* gl/build-aux/bootstrap.in (func_update_po_files): Remove the
use of --status in a way that will suppress all error messages,
but since this is only used to minimize updates, it shouldn't
cause an issue.
Look for a sha1 binary if the other SHA1SUM settings are not
found.
Also exit early if there is a problem updating the po file
checksums.
* bootstrap: Regenerate.
Ported from a gnulib patch by Padraig Brady.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: support tools that don't accept '--version' in buildreq.
Gary V. Vaughan [Fri, 23 Aug 2013 10:23:29 +0000 (17:23 +0700)] 
bootstrap: support tools that don't accept '--version' in buildreq.

* gl/build-aux/bootstrap.in (func_check_tool): Check whether there
is an executable as given or on the command PATH.
(func_check_version): Use func_check_tool to avoid invoking --version
when buildreq specifies '-' for the version number.
* bootstrap: Regenerate.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: diagnose bad $buildreq formatting.
Gary V. Vaughan [Fri, 23 Aug 2013 09:27:31 +0000 (16:27 +0700)] 
bootstrap: diagnose bad $buildreq formatting.

Particularly when porting from gnulib bootstrap to libtool
bootstrap, it's easy to forget the extra URL column used for
error reporting.
* gl/build-aux/bootstrap.in (func_check_versions): A non-URL
pattern in the 3rd column of buildreq triggers a fatal error.
* bootstrap: Regenerate.
Reported by Mike Miller.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: support OpenBSD sed.
Gary V. Vaughan [Fri, 23 Aug 2013 08:59:46 +0000 (15:59 +0700)] 
bootstrap: support OpenBSD sed.

* gl/build-aux/bootstrap.in (func_insert_if_absent): Work around
the problem of OpenBSD sed not supporting '-' as a notation for
standard input.
* bootstrap: Regenerate.
* THANKS: Add Mike Miller.
Reported by Mike Miller.

Copyright-paperwork-exempt: Yes
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: set correct linker ABI flags on mips64 linux.
Steve Ellcey [Mon, 19 Aug 2013 21:35:28 +0000 (14:35 -0700)] 
libtool: set correct linker ABI flags on mips64 linux.

m4/libtool.m4 (_LT_ENABLE_LOCK): Select the n32 or n64 ABI when
linking to match the ABI produced with the user's compiler flags.

Co-authored-by: Gary V. Vaughan <gary@gnu.org>
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agomaint: correct many abuses of the word "which".
Gary V. Vaughan [Fri, 23 Aug 2013 04:12:57 +0000 (11:12 +0700)] 
maint: correct many abuses of the word "which".

* HACKING, NEWS, TODO, bootstrap, bootstrap.conf,
build-aux/ltmain.in, cfg.mk, configure.ac, doc/libtool.texi,
doc/notes.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/doc/bootstrap.texi, libltdl/libltdl/lt_system.h,
libltdl/loaders/loadlibrary.c, libltdl/lt__strl.c,
libltdl/lt_dlloader.c, libltdl/ltdl.c, libtoolize.in,
m4/libtool.m4, m4/ltdl.m4, m4/ltsugar.m4, m4/lt~obsolete.m4,
tests/exceptions.at, tests/need_lib_prefix.at, tests/static.at:
Use "which" correctly, or replace with "that", "where" or "what"
as appropriate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: improve comments for _LT_ENABLE_LOCK implementation.
Brook Moses [Fri, 23 Aug 2013 03:23:33 +0000 (10:23 +0700)] 
libtool: improve comments for _LT_ENABLE_LOCK implementation.

* m4/libtool.m4 (_LT_ENABLE_LOCK): enhance comments to explain
why the code looks odd with 32bit flags in the 64bit section and
vice versa.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: fix refixed unmangled powerpc*le-linux support patch
Alan Modra [Thu, 6 Jun 2013 05:18:22 +0000 (14:48 +0930)] 
libtool: fix refixed unmangled powerpc*le-linux support patch

* m4/libtool.m4: fix refixed badly unmangled hunks from earlier
powerpc*le changeset.
Reported by Peter Rosin.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: refix unmangled powerpc*le-linux support patch
Alan Modra [Thu, 6 Jun 2013 05:18:22 +0000 (14:48 +0930)] 
libtool: refix unmangled powerpc*le-linux support patch

* m4/libtool.m4: refix badly unmangled hunks from earlier
powerpc*le changeset.
Reported by Peter Rosin.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibltdl: don't trip subdir-objects warning from Automake >= 1.14.
Gary V. Vaughan [Thu, 22 Aug 2013 08:51:33 +0000 (15:51 +0700)] 
libltdl: don't trip subdir-objects warning from Automake >= 1.14.

Latest Automake releases now warn when subdir-objects is not
specified in preparation for Automake 2.0.  The option has been
in Automake for more than a decade, so there's minimal risk of
someone using the next release of Libtool alongside an ancient
release of Automake when bootstrapping libltdl client projects.
* libltdl/configure.ac (AM_INIT_AUTOMAKE): Add subdir-objects.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: refactor powerpc*le-linux case branch expressions.
Gary V. Vaughan [Thu, 22 Aug 2013 08:38:00 +0000 (15:38 +0700)] 
libtool: refactor powerpc*le-linux case branch expressions.

libtool (_LT_ENABLE_LOCK): make inner case branch expressions
consistent with outer case expression.
Reported by Peter Rosin.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: fix mangled powerpc*le-linux support patch
Alan Modra [Thu, 6 Jun 2013 05:18:22 +0000 (14:48 +0930)] 
libtool: fix mangled powerpc*le-linux support patch

* m4/libtool.m4: unmangled badly pasted hunks from previous
changeset.

12 years agolibtool: initial powerpc*le-linux support
Alan Modra [Thu, 6 Jun 2013 05:18:22 +0000 (14:48 +0930)] 
libtool: initial powerpc*le-linux support

* m4/libtool.m4 (ld -m flags): Remove non-canonical ppc host match.
Support little-endian powerpc linux host.

12 years agolibtool: fix conversion warnings in cwrapper
Yaakov Selkowitz [Mon, 17 Jun 2013 21:46:54 +0000 (23:46 +0200)] 
libtool: fix conversion warnings in cwrapper

build-aux/ltmain.in (func_emit_cwrapperexe_src:main): XMALLOC wants a
size_t. Also use int instead of intptr_t for the return value (which
is fine since the _spawnv call is synchronous).
(func_emit_cwrapper_src) [MSVC]: Remove the intptr_t helper define.
(func_emit_cwrapperexe_src:find_executable): Use size_t for variables
involved in strlen computations.
(func_emit_cwrapperexe_src:lt_setenv): Likewise.
(func_emit_cwrapperexe_src:lt_extend_str): Likewise.
(func_emit_cwrapperexe_src:lt_update_exe_path): Likewise.
THANKS: Update.

Signed-off-by: Yaakov Selkowitz <yselkowitz@users.sourceforge.net>
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: break all the way out when a good nm is found
Peter Rosin [Sun, 28 Apr 2013 07:16:56 +0000 (09:16 +0200)] 
libtool: break all the way out when a good nm is found

The current code tries to locate a compatible nm tool.  It starts with
a prefixed nm tool (great!) and includes a plain nm too (that's fine).
The problem is that the code searches for the prefixed nm before the
plain nm (normally fine), but doesn't break once it has found a valid
match, and the plain nm ends up the winner.

Report and analysis by Mike Frysinger.

* m4/libtool.m4 (LT_PATH_NM): Break all the way out on a good match.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agomaint: update email address...
Peter Rosin [Mon, 28 Jan 2013 18:50:31 +0000 (19:50 +0100)] 
maint: update email address...

* THANKS: ...of Jan Engelhardt.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agodoc: fix an orthographic error
Jan Engelhardt [Mon, 28 Jan 2013 16:15:38 +0000 (17:15 +0100)] 
doc: fix an orthographic error

* doc/libtool.texi (Install mode): Ensure, not insure.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agobootstrap: fix func_insert_if_absent bugs.
Gary V. Vaughan [Sun, 27 Jan 2013 14:07:27 +0000 (21:07 +0700)] 
bootstrap: fix func_insert_if_absent bugs.

* gl/build-aux/bootstrap.in (func_insert_if_absent): Print verbose
message when there is a new entry to add.
Also, make sure to update the .gitignore file when changed.
* bootstrap: Regenerate.
* THANKS: Add Pádraig Brady.
Reported by Pádraig Brady.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: factor out gnulib-tool option calculations.
Gary V. Vaughan [Sun, 27 Jan 2013 12:57:22 +0000 (19:57 +0700)] 
bootstrap: factor out gnulib-tool option calculations.

* gl/build-aux/bootstrap.in (func_gnulib_tool): Factor base option
settings out...
(require_gnulib_tool_base_options): ...to here.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agosyntax-check: fix a quoted_test_operand violation.
Gary V. Vaughan [Sun, 27 Jan 2013 13:13:27 +0000 (20:13 +0700)] 
syntax-check: fix a quoted_test_operand violation.

* gl/build-aux/bootstrap.in (func_insert_if_absent): Make sure
test operands are quoted correctly.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agosyntax-check: fix new SPACE-TAB violations.
Gary V. Vaughan [Sun, 27 Jan 2013 13:20:30 +0000 (20:20 +0700)] 
syntax-check: fix new SPACE-TAB violations.

* build-aux/ltmain.in (func_dll_def_p): Replace SPACE-TAB by
TAB-SPACE.
* m4/libtool.m4 (_LT_DLL_DEF_P): Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: always auto-add .gitignore files at the top.
Bernhard Voelker [Sat, 26 Jan 2013 05:50:04 +0000 (12:50 +0700)] 
bootstrap: always auto-add .gitignore files at the top.

* gl/build-aux/bootstrap.in (func_gitignore_entries): New function.
Strip comments and blank lines.
(func_insert_sorted_if_absent): Renamed...
(func_insert_if_absent): ...to this. Adjust all callers.
Instead of comparing the sorted new file with the original,
compare the line count, being careful to diagnose duplicate
entries which would otherwise skew the count.

Co-authored-by: Gary V. Vaughan <gary@gnu.org>
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agomaint: patch gitlog-to-changelog to reduce bogus warnings.
Gary V. Vaughan [Thu, 3 Jan 2013 09:49:35 +0000 (16:49 +0700)] 
maint: patch gitlog-to-changelog to reduce bogus warnings.

Rather than trying to find a new useful warning among the 55
expected warnings from vanilla gitlog-to-changelog, patch it to
elide the bogus warnings from duplicate log entries.
* gl/bulid-aux/gitlog-to-changelog.diff: Omit-from-ChangeLog is
a new log entry tag to skip legitimate log duplicates.
* build-aux/git-log-fix: Instead of deleting all content of
duplicates and generating a warning, append the new
Omit-from-ChangeLog tag to elide silently.
* Makefile.am *($(changelog)): Remove the 'expect 55 warnings'
echo.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: factor out the dll .def file test and improve it
Peter Rosin [Tue, 22 Jan 2013 21:54:43 +0000 (22:54 +0100)] 
libtool: factor out the dll .def file test and improve it

Resolves bug#13414. Problem reported by Erik van Pienbroek
and Martin Doucha.

build-aux/ltmain.in (func_mode_link): Factor out the test if a
given symbol file is a module-definition (.def) file into...
(func_dll_def_p): ...this function, which also improves the check.
m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG)
<cygwin, mingw, pw32, cegcc>: Similarly, factor out the test if
a given symbol file is a module-definition (.def) file into...
(_LT_DLL_DEF_P): ...this macro, which also improves the check.
tests/export-def.at: New test.
Makefile.am (TESTSUITE_AT): Add above test.
NEWS: Update.
THANKS: Update.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: allow tabs in *_cmds variables
Peter Rosin [Mon, 21 Jan 2013 05:41:00 +0000 (06:41 +0100)] 
libtool: allow tabs in *_cmds variables

This is in preparation for the next patch, which needs to have literal
tab characters survive the evaluation of the *_cmds variables.

build-aux/ltmain.in (func_execute_cmds, func_mode_link): Don't collapse
tabs and surrounding whitespace into a single space when executing a
tilde-separated cmds construct, instead keep any tabs intact.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: avoid tabs in all *_cmds variables.
Peter Rosin [Sat, 19 Jan 2013 21:14:16 +0000 (22:14 +0100)] 
libtool: avoid tabs in all *_cmds variables.

This is in preparation for the next change, which will preserve
tabs when the *_cmds variables are evaluated. Removing tabs first
ensures that the libtool output stays the same when tabs are not
collapsed with surrounding whitespace.

m4/libtool.m4: Convert indenting tabs to spaces for all *_cmds
variables.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: align archive_cmds with archive_expsym_cmds for MSVC
Peter Rosin [Tue, 15 Jan 2013 14:29:49 +0000 (15:29 +0100)] 
libtool: align archive_cmds with archive_expsym_cmds for MSVC

m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
<archive_cmds>: Specify the import library name, aligning with
archive_expsym_cmds.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: feed .def files verbatim to the MSVC linker
Peter Rosin [Wed, 16 Jan 2013 12:39:52 +0000 (13:39 +0100)] 
libtool: feed .def files verbatim to the MSVC linker

m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
<archive_expsym_cmds>: When the symbol list isn't really a symbol list,
but instead a .def file, copy it to a file with .def extension so that
MSVC recognizes it as a module-definition file and feed it verbatim.
NEWS: Update

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agoRevert "libtool: use false or : for $always_export_symbols, and simplify"
Peter Rosin [Tue, 15 Jan 2013 14:17:30 +0000 (15:17 +0100)] 
Revert "libtool: use false or : for $always_export_symbols, and simplify"

This reverts commit 5ed7430fcb48c862c9d76ef497b73485d580338e, which is
totally bogus as the variable is also set in libtool.m4. Sorry for the
noise.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: use false or : for $always_export_symbols, and simplify
Peter Rosin [Tue, 15 Jan 2013 08:31:31 +0000 (09:31 +0100)] 
libtool: use false or : for $always_export_symbols, and simplify

* build-aux/ltmain.in (func_mode_link): Save a string comparison
by setting $lways_export_symbols to false or : and using it directly
as the first argument to if. Make sure that it is always initialized
while at it.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agotests: fix nits in path handling
Peter Rosin [Wed, 9 Jan 2013 11:58:55 +0000 (12:58 +0100)] 
tests: fix nits in path handling

tests/bindir.at: func_save_and_prepend_path is already checking
$bindirneeded internally, so remove checks from call sites. Add
proper quoting while at it.
(func_save_and_prepend_path): Use $PATH_SEPARATOR instead of a literal
colon (in both instances).

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: simplify quoting and code for symbols exporting sed programs
Peter Rosin [Tue, 8 Jan 2013 21:44:51 +0000 (22:44 +0100)] 
libtool: simplify quoting and code for symbols exporting sed programs

* m4/libtool.m4 (_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG) [MSVC]
<archive_expsym_cmds>: Make the sed programs easier to read (and
recover some backslashes for later in the process).

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agotests: don't feed -no-undefined to the linker during configure.
Peter Rosin [Wed, 19 Sep 2012 06:43:57 +0000 (08:43 +0200)] 
tests: don't feed -no-undefined to the linker during configure.

* tests/deplibs-mingw.at: Restore LDFLAGS for the configure run so that
the linker does not see -no-undefined. Makes the test pass instead of
skip on MinGW.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agomaint: note warnings during ChangeLog generation are normal.
Gary V. Vaughan [Thu, 3 Jan 2013 07:01:43 +0000 (14:01 +0700)] 
maint: note warnings during ChangeLog generation are normal.

* Makefile.am ($(changelog)): Output a note that 55 empty commit
log warning messages during ChangeLog generation are expected.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agogit: ignore .serial file.
Gary V. Vaughan [Thu, 3 Jan 2013 06:53:58 +0000 (13:53 +0700)] 
git: ignore .serial file.

* .gitignore: ignore .serial file.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agomaint: fix recent badly formatted ChangeLog entry.
Gary V. Vaughan [Thu, 3 Jan 2013 06:51:19 +0000 (13:51 +0700)] 
maint: fix recent badly formatted ChangeLog entry.

* build-aux/git-log-fix: No empty lines in a single commit.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agosyntax-check: fix a useless_quotes_in_assignment violation.
Gary V. Vaughan [Thu, 3 Jan 2013 06:43:07 +0000 (13:43 +0700)] 
syntax-check: fix a useless_quotes_in_assignment violation.

* gl/build-aux/inline-source (func_require_AWK): Remove useless
quotes.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agosyntax-check: fix prohibit_strcmp syntax-check violation.
Gary V. Vaughan [Thu, 3 Jan 2013 06:41:02 +0000 (13:41 +0700)] 
syntax-check: fix prohibit_strcmp syntax-check violation.

* build-aux/ltmain.in (func_generate_dlsyms): Add a definition for
STREQ, and then use it in place of !strcmp.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agodocs: update copyright dates in libtool.texi.
Gary V. Vaughan [Thu, 3 Jan 2013 06:25:54 +0000 (13:25 +0700)] 
docs: update copyright dates in libtool.texi.

It seems `make update-copyright' missed the texinfo copyright
notice.
* doc/libtool.texi: Update copyright dates for 2013.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: add bitrig support.
Brad Smith [Tue, 1 Jan 2013 18:26:32 +0000 (01:26 +0700)] 
libtool: add bitrig support.

* build-aux/ltmain.in (func_mode_link): Add bitrig support.
* m4/libtool.m4 (_LT_CMD_OLD_ARCHIVE, LT_CMD_MAX_LEN)
(_LT_SYS_DYNAMIC_LINKER, _LT_CHECK_MAGIC_METHOD)
(_LT_LINKER_SHLIBS, _LT_LANG_CXX_CONFIG): Ditto.
* m4/ltdl.m4 (LT_SYS_DLOPEN_DEPLIBS): Ditto.
* tests/deplibs-ident.at(build tree relpaths): Ditto.
* NEWS: Updated.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agomaint: check if git works before relying on it
Peter Rosin [Tue, 1 Jan 2013 18:40:57 +0000 (19:40 +0100)] 
maint: check if git works before relying on it

Makefile.am (m4/ltversion.m4): Take the opportunity to regenerate
$(srcdir)/.serial whenever git is actually working.
(git_version_gen): Provide a fallback version for the git-version-gen
script to use when .tarball-version does not exist and git is not
working.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agomaint: really do update to latest upstream gnulib
Peter Rosin [Tue, 1 Jan 2013 18:39:24 +0000 (19:39 +0100)] 
maint: really do update to latest upstream gnulib

Commit 9a7071e668d044c1c47c855d2f0bc7cadb235071 "maint: update
copyright notices to include 2013." states that this was done, but
it actually was not.

gnulib/: Update to latest upstream.

12 years agomaint: remove unsupported Tested-by: tag.
Gary V. Vaughan [Tue, 1 Jan 2013 17:47:52 +0000 (00:47 +0700)] 
maint: remove unsupported Tested-by: tag.

* build-aux/git-log-fix: Tested-by: line should not appear in the
ChangeLog.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: update README-release patch
Peter Rosin [Tue, 1 Jan 2013 17:50:08 +0000 (18:50 +0100)] 
bootstrap: update README-release patch

gl/top/README-release.diff: Update to match latest gnulib changes.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agomaint: update copyright notices to include 2013.
Gary V. Vaughan [Tue, 1 Jan 2013 17:17:24 +0000 (00:17 +0700)] 
maint: update copyright notices to include 2013.

* gnulib/: Update to latest upstream.
* AUTHORS, ChangeLog.old, HACKING, Makefile.am, NEWS, README,
THANKS, TODO, bootstrap, bootstrap.conf,
build-aux/edit-readme-alpha, build-aux/ltmain.in, cfg.mk,
configure.ac, doc/libtool.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/README, libltdl/argz.c, libltdl/argz_.h,
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/ltdl.mk, libltdl/slist.c, libtoolize.in, m4/argz.m4,
m4/autobuild.m4, m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4,
m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4,
tests/am-subdir.at, tests/archive-in-archive.at,
tests/bindir.at, tests/cdemo.at, tests/cmdline_wrap.at,
tests/configure-iface.at, tests/convenience.at, tests/ctor.at,
tests/cwrapper.at, tests/darwin.at, tests/demo.at,
tests/depdemo.at, tests/deplib-in-subdir.at,
tests/deplibs-ident.at, tests/deplibs-mingw.at,
tests/destdir.at, tests/dlloader-api.at,
tests/dumpbin-symbols.at, tests/duplicate_conv.at,
tests/duplicate_deps.at, tests/duplicate_members.at,
tests/early-libtool.at, tests/exceptions.at,
tests/execute-mode.at, tests/exeext.at, tests/export.at,
tests/f77demo.at, tests/fail.at, tests/fcdemo.at,
tests/flags.at, tests/help.at, tests/indirect_deps.at,
tests/infer-tag.at, tests/inherited_flags.at, tests/install.at,
tests/lalib-syntax.at, tests/libtool.at, tests/libtoolize.at,
tests/link-order.at, tests/link-order2.at, tests/loadlibrary.at,
tests/localization.at, tests/lt_dladvise.at, tests/lt_dlexit.at,
tests/lt_dlopen.at, tests/lt_dlopen_a.at, tests/lt_dlopenext.at,
tests/ltdl-api.at, tests/ltdl-libdir.at, tests/mdemo.at,
tests/need_lib_prefix.at, tests/no-executables.at,
tests/nocase.at, tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/old-m4-iface.at, tests/pic_flag.at, tests/recursive.at,
tests/resident.at, tests/runpath-in-lalib.at,
tests/search-path.at, tests/shlibpath.at, tests/slist.at,
tests/standalone.at, tests/static.at, tests/stresstest.at,
tests/subproject.at, tests/sysroot.at, tests/tagdemo.at,
tests/template.at, tests/testsuite.at, tests/versioning.at,
tests/with-pic.at: Bump copyright year.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: Drop $LDFLAGS when invoking the toolchain
Peter Rosin [Wed, 19 Dec 2012 10:20:28 +0000 (11:20 +0100)] 
libtool: Drop $LDFLAGS when invoking the toolchain

m4/libtool.m4 (_LT_LANG_CXX_CONFIG) [Solaris] <archive_cmds>: Drop
$LDFLAGS as it is a user variable that is usually used when invoking
libtool. As such, it should not be used by libtool when it invokes the
toolchain as it contains options intended for libtool, not the
toolchain. Fixes export.at and other tests that add -no-undefined to
LDFLAGS.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
Tested-by: Richard Palo <richard.palo@baou.fr>
12 years agolibtool: Add SONAME to the so when exporting explicit symbols on Solaris
Richard Palo [Wed, 19 Dec 2012 10:08:15 +0000 (11:08 +0100)] 
libtool: Add SONAME to the so when exporting explicit symbols on Solaris

m4/libtool.m (_LT_LANG_CXX_CONFIG) [Solaris] <archive_expsym_cmds>: Feed
-h $soname to the linker just as is done in archive_cmds.
THANKS: Update.

Copyright-paperwork-exempt: Yes
Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: add @INIT@ to the preloader, for data imports on Windows
Peter Rosin [Fri, 2 Nov 2012 22:50:43 +0000 (23:50 +0100)] 
libtool: add @INIT@ to the preloader, for data imports on Windows

* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [dumpbin]: Adjust
lt_cv_sys_global_symbol_to_cdecl so that it declares imported
data symbols as __declspec(dllimport). Adjust
lt_cv_sys_global_symbol_to_c_name_address and
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix so that they
fill in "(void*) 0" for imported data symbols. Add new
lt_cv_sys_global_symbol_to_import which finds imported data
symbols if non-empty and export this variable to the libtool script
in the global_symbol_to_import variable. Adjust
lt_cv_sys_global_symbol_pipe so that data imports can be located.
* build-aux/ltmain.in (func_generate_dlsyms): When data imports
are present, as indicated by global_symbol_to_import, generate
a relocation function lt_syminit that fills in the addresses
of data imports at runtime and point to the new function with a
new virtual @INIT@ entry in the symbol list.
* libltdl/loaders/preopen.c (add_symlist): Look for the virtual
@INIT@ symbol (i.e. lt_syminit) and call it.
(vm_sym): Step past the @INIT@ symbol, if present.
* tests/demo.at (dlmain.c): Call the @INIT@ symbol, if present.
* NEWS: Update.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: unify the global symbol transformations
Peter Rosin [Fri, 2 Nov 2012 12:17:11 +0000 (13:17 +0100)] 
libtool: unify the global symbol transformations

Since it is safe for $lt_cv_sys_global_symbol_to_cdecl to match
with a simple /^T .* .*$/ type expression, it is ok for the other
transformations as well.  At least if you require at least one
$symcode at the start of the line, so that the just generated output
doesn't match the next sed expression.

* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Unify the matching expressions
in the sed programs that transform the extracted symbol lines.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: break up long lines
Peter Rosin [Fri, 2 Nov 2012 12:00:24 +0000 (13:00 +0100)] 
libtool: break up long lines

* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS): Break up long lines when
assigning the sed scripts that transform the extracted symbol lines.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agobootstrap: use a decent awk if /bin/awk is hopeless.
Gary V. Vaughan [Thu, 25 Oct 2012 15:03:05 +0000 (10:03 -0500)] 
bootstrap: use a decent awk if /bin/awk is hopeless.

Bootstrap used to fail without an explicit AWK environment
setting on machines with both nawk and awk, but where awk is a
museum piece.
* gl/build-aux/inline-source (AWK): Remove initial setting.
(require_awk): Search PATH for a gawk, mawk or nawk before
settling on awk, just like configure does.
(func_include): Use it.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: be sure to register gnulib submodule.
Gary V. Vaughan [Thu, 25 Oct 2012 14:00:09 +0000 (14:00 +0000)] 
bootstrap: be sure to register gnulib submodule.

* gl/build-aux/bootstrap.in (require_gnulib_submodule): Register
the gnulib submodule before updating it, even with a shallow
clone of gnulib.
* bootstrap: Regenerate.
Reported by Robert Boehne.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: fix a typo in a find invocation.
Gary V. Vaughan [Thu, 25 Oct 2012 13:40:57 +0000 (13:40 +0000)] 
bootstrap: fix a typo in a find invocation.

* gl/build-aux/bootstrap.in (require_buildreq_patch): Fix a typo.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: bash versions 3.00.x do not have += functionality.
Gary V. Vaughan [Thu, 25 Oct 2012 12:31:20 +0000 (12:31 +0000)] 
bootstrap: bash versions 3.00.x do not have += functionality.

* gl/build-aux/funclib.sh: Fix a typo in fork minimisation for
bash versions 3.00.x.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agomaint: fix missing command error in make dist.
Gary V. Vaughan [Thu, 25 Oct 2012 12:14:27 +0000 (07:14 -0500)] 
maint: fix missing command error in make dist.

* Makefile.am ($(readme)): Don't forget the 'test'!

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agotests: fixup experr for addition whitespace in error prefix.
Gary V. Vaughan [Thu, 25 Oct 2012 11:28:57 +0000 (06:28 -0500)] 
tests: fixup experr for addition whitespace in error prefix.

Fix spurious test failures due to unmatched experr output.
* tests/libtoolize.at, tests/old-ltdl-iface.at: Add the addition
2 spaces now used to justify error prefixes.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: use of ';' in sed scripts is not portable.
Gary V. Vaughan [Thu, 25 Oct 2012 10:11:33 +0000 (05:11 -0500)] 
bootstrap: use of ';' in sed scripts is not portable.

* gl/build-aux/bootstrap.in (require_buildreq_automake)
(require_dotgitmodules_parameters, require_package)
(func_update_po_files): Use '\n' or -e to separate sed commands,
instead of ';'.
* gl/build-aux/extract-trace (func_autoconf_configure)
(func_extract_trace_first): Likewise.
* gl/funclib.sh: Likewise.
(func_tr_sh): Likewise.
* gl/build-aux/options-parser (func_usage_message): Likewise.
* bootstrap: Regenerate.
Reported by Robert Boehne.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: don't $tc_standout spaces, it's ugly!
Gary V. Vaughan [Thu, 25 Oct 2012 12:06:50 +0000 (07:06 -0500)] 
bootstrap: don't $tc_standout spaces, it's ugly!

* gl/build-aux/funclib.sh (func_error): Move the prefix indent
before $tc_standout to avoid bright red inverse spaces.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: fix rectangle select induced trailing spaces.
Gary V. Vaughan [Thu, 25 Oct 2012 12:03:17 +0000 (07:03 -0500)] 
bootstrap: fix rectangle select induced trailing spaces.

* gl/build-aux/funclib.sh (require_term_colors): Delete trailing
whitespace.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: display prerequisite program environment vars.
Gary V. Vaughan [Thu, 25 Oct 2012 09:00:52 +0000 (04:00 -0500)] 
bootstrap: display prerequisite program environment vars.

Be more helpful when a prerequisite program from $buildreq
cannot be located, by showing what variable to export if it
is already installed but not in PATH.
* gl/build-aux/bootstrap.in (func_check_versions): Display
associated environment variables for not found prerequisite
programs.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: honor COLORTERM and USE_ANSI_COLORS.
Gary V. Vaughan [Thu, 25 Oct 2012 06:29:28 +0000 (01:29 -0500)] 
bootstrap: honor COLORTERM and USE_ANSI_COLORS.

Plenty of machines use a terminfo database that doesn't have
entries for color escape sequences, even though the terminal
itself most likely supports ANSI color escapes.
* gl/build-aux/funclib.sh (require_term_colors): If COLORTERM
or USE_ANSI_COLORS are set, then ignore what terminfo says,
and use standard ANSI color escape sequences.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: make error messages prettier.
Gary V. Vaughan [Thu, 25 Oct 2012 06:15:56 +0000 (01:15 -0500)] 
bootstrap: make error messages prettier.

* gl/build-aux/funclib.sh (func_error): Indent 'error' prefix by
two additional spaces to line up nicely with 'warning' and
'running'.
* bootstrap: Regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: emphasize command executions with terminal bold.
Gary V. Vaughan [Wed, 24 Oct 2012 03:17:24 +0000 (22:17 -0500)] 
bootstrap: emphasize command executions with terminal bold.

* bootstrap.in (func_show_eval): Use $require_term_colors to
embolden the command about to be executed in output.
* bootstrap: Regenerate.
* bootstrap.conf (libtool_build_prerequisites): Use the standard
(colorful!) bootstrap func_show_eval here too.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: show output from 'make bootstrap-deps'.
Gary V. Vaughan [Wed, 24 Oct 2012 02:58:11 +0000 (21:58 -0500)] 
bootstrap: show output from 'make bootstrap-deps'.

* bootstrap.conf (libtool_build_prerequisites): Add support for
AM_V_GEN and AM_V_at to the temporary pre-configure Makefile.
Instead of eliding non-error output from bootstrap-deps, show
the results, with verbosity set according to $opt_verbose.
* Makefile.am (m4/ltversion.m4, build-aux/ltmain.sh, libtool)
(README): Fix the display rules to correctly fall-back to
AM_DEFAULT_VERBOSITY when V=1 is not passed to make invocation.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agomaint: fixup badly formatted ChangeLog entries.
Gary V. Vaughan [Mon, 22 Oct 2012 09:50:11 +0000 (16:50 +0700)] 
maint: fixup badly formatted ChangeLog entries.

* build-aux/git-log-fix: Mostly missing category tags and refilling
to 64 columns, but also deleting duplicate entries from merging the
gary/reredo-test-operand-order branch.
* g/build-aux/gitlog-to-changelog.diff: Local patch to prevent
printing unqualified header lines for deleted duplicate patches.
* THANKS: Put email address for Paul Seidler here...
* build-aux/git-log-fix: ...and remove from ChangeLog here.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: regenerate to propagate Bob's func_split_equals fix.
Gary V. Vaughan [Mon, 22 Oct 2012 09:58:29 +0000 (16:58 +0700)] 
bootstrap: regenerate to propagate Bob's func_split_equals fix.

* bootstrap: regenerate.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agoconfigury: make LT_INIT options pic-only and no-pic work.
Mikhail Zabaluev [Sun, 20 Nov 2011 21:10:31 +0000 (23:10 +0200)] 
configury: make LT_INIT options pic-only and no-pic work.

* m4/ltoptions.m4 (_LT_WITH_PIC): Set pic_mode at m4 time.

Copyright-paperwork-exempt: Yes
Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agoFixed func_split_equals shell quoting syntax error encountered with
Bob Friesenhahn [Sun, 21 Oct 2012 23:17:52 +0000 (18:17 -0500)] 
Fixed func_split_equals shell quoting syntax error encountered with
non-XSI shells.  Problem was noticed under Solaris 10.

12 years agosyntax-check: fix violations and implement sc_old_style_quoting.
Gary V. Vaughan [Sun, 21 Oct 2012 16:41:07 +0000 (23:41 +0700)] 
syntax-check: fix violations and implement sc_old_style_quoting.

Modern GNU ASCII quoting in output and comments is done
'like this'.
* cfg.mk (sc_old_style_quoting): Try to catch most instances
of `old style quoting' so that it is not accidentally re-
introduced to the code.
* HACKING, Makefile.am, NEWS, PORTING, README, TODO, bootstrap,
bootstrap.conf, build-aux/edit-readme-alpha,
build-aux/git-hooks/commit-msg, build-aux/ltmain.in,
doc/libtool.texi, gl/build-aux/bootstrap.in,
gl/build-aux/extract-trace, gl/build-aux/funclib.sh,
gl/build-aux/inline-source, gl/build-aux/options-parser,
libltdl/libltdl/slist.h, libltdl/loaders/loadlibrary.c,
libltdl/ltdl.c, libltdl/slist.c, libtoolize.in, m4/argz.m4,
m4/libtool.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4,
tests/cmdline_wrap.at, tests/configure-iface.at, tests/demo.at,
tests/depdemo.at, tests/deplib-in-subdir.at,
tests/deplibs-mingw.at, tests/destdir.at, tests/execute-mode.at,
tests/f77demo.at, tests/fail.at, tests/inherited_flags.at,
tests/libtool.at, tests/libtoolize.at, tests/lt_dladvise.at,
tests/lt_dlexit.at, tests/mdemo.at, tests/need_lib_prefix.at,
tests/old-ltdl-iface.at, tests/old-m4-iface.at, tests/static.at,
tests/stresstest.at, tests/testsuite.at, tests/versioning.at:
Convert to upright quotes.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agotests: remove spurious shell variable braces.
Gary V. Vaughan [Sun, 21 Oct 2012 16:25:45 +0000 (23:25 +0700)] 
tests: remove spurious shell variable braces.

* tests/testsuite.at: Allow the shell braces syntax check to pass
again.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: add missing bootstrap override module file.
Gary V. Vaughan [Sat, 13 Oct 2012 07:39:45 +0000 (14:39 +0700)] 
bootstrap: add missing bootstrap override module file.

* gl/modules/bootstrap: Forgot to add this file in a previous
commit.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: allow bootstrap.texi to pass syntax-check.
Gary V. Vaughan [Sun, 21 Oct 2012 16:58:33 +0000 (23:58 +0700)] 
bootstrap: allow bootstrap.texi to pass syntax-check.

* cfg.mk (sc_require_function_nl_brace): Skip texi files.
* gl/doc/bootstrap.texi: Fix assorted syntax-check violations.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agobootstrap: move into local gl overrides directory.
Gary V. Vaughan [Sat, 13 Oct 2012 07:39:45 +0000 (14:39 +0700)] 
bootstrap: move into local gl overrides directory.

In order to work as if it were already adopted by upstream
gnulib, put bootstrap and supporting scripts into the local
gnulib overrides directory.
* bootstrap, build-aux/extract-trace, build-aux/funclib.sh,
build-aux/inline-source, build-aux/options-parser: Move from
here...
* gl/build-aux/bootstrap.in, gl/build-aux/extract-trace,
gl/build-aux/funclib.sh, gl/build-aux/inline-source,
gl/build-aux/options-parser: ...to here.
* gl/build-aux/options-parser (func_version): Show only the
first copyright notice on files generated with inline-source.
* gl/doc/bootstrap.texi: Developer documentation for bootstrap.
* gl/modules/extract-trace, gl/modules/funclib.sh,
gl/modules/inline-source, gl/modules/options-parser: Describe
dependencies for gnulib-tool.
* bootstrap.conf (gnulib_modules): Add extract-trace,
inline-source and options-parser modules.
* bootstrap: Regenerated from gnulib overrides as a mono-
lithic script file using gl/build-aux/inline-source.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agotests: make sure AC_CONFIG_MACRO_DIR is still supported.
Gary V. Vaughan [Fri, 19 Oct 2012 09:50:01 +0000 (16:50 +0700)] 
tests: make sure AC_CONFIG_MACRO_DIR is still supported.

* tests/old-m4-iface.at (AC_CONFIG_MACRO_DIR support): New test.
Make sure we continue to support AC_CONFIG_MACRO_DIR using
projects.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.
Gary V. Vaughan [Fri, 19 Oct 2012 09:21:27 +0000 (16:21 +0700)] 
libtoolize: select the first directory from AC_CONFIG_MACRO_DIRS.

* tests/libtoolize.at (multiple AC_CONFIG_MACRO_DIRS directories):
New test to ensure multiple directory arguments mork correctly.
* libtoolize.in (func_require_ac_macro_dir): Use expr to discard
any additional space delimited entries in the first
AC_CONFIG_MACRO_DIRS argument.
* bootstrap (func_require_macro_dir): Likewise.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.
Gary V. Vaughan [Thu, 18 Oct 2012 13:37:03 +0000 (20:37 +0700)] 
libtoolize: migrate to new AC_CONFIG_MACRO_DIRS api.

* libtoolize.in (func_install_pkgmacro_files): Uee
AC_CONFIG_MACRO_DIRS.
(func_check_macros): Advise using AC_CONFIG_MACRO_DIRS.
(require_ac_macro_dir): Give priority to AC_CONFIG_MACRO_DIRS.
(require_macro_dir): Likewise.
* bootstrap: Give priority to AC_CONFIG_MACRO_DIRS.
* configure.ac: Define dummy AC_CONFIG_MACRO_DIRS for older
Autotools, that is allow bootstrap with current release versions.
Use AC_CONFIG_MACRO_DIRS instead of AC_CONFIG_MACRO_DIR.
* tests/testsuite.at: Source build-aux/extract-trace for access
to func_extract_trace.
(LT_AT_ACLOCAL): Use it to get the AC_CONFIG_MACRO_DIRS argument
to pass manually to aclocal for compatibility with old Automake.
Add a fallback AC_CONFIG_MACRO_DIRS definition to acinclude.m4
in the test directory.
(LT_AT_AUTORECONF): Likewise.
* tests/cdemo.at, tests/configure-iface.at, tests/darwin.at,
tests/demo.at, tests/depdemo.at, tests/early-libtool.at,
tests/libtoolize.at, tests/mdemo.at, tests/no-executables.at,
tests/nonrecursive.at, tests/old-ltdl-iface.at,
tests/recursive.at, tests/subproject.at, tests/tagdemo.at,
tests/template.at: Likewise.
* doc/libtool.texi: Update.
* NEWS: Update.

Signed-off-by: Gary V. Vaughan <gary@gnu.org>
12 years agolibtool: parse "dumpbin -headers" to get symbols exported from implibs
Peter Rosin [Fri, 19 Oct 2012 15:19:50 +0000 (17:19 +0200)] 
libtool: parse "dumpbin -headers" to get symbols exported from implibs

* m4/libtool.m4 (_LT_CMD_GLOBAL_SYMBOLS) [MSVC]: Extract symbols
imported from DLLs by import libraries in the Microsoft dumpbin
wrapper.
(LT_PATH_NM): Add -headers option if dumpbin is the located name
lister to feed the above new code.
* NEWS: Update.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>
12 years agolibtool: make func_win32_libid work when the name lister is MS dumpbin
Peter Rosin [Fri, 19 Oct 2012 09:51:12 +0000 (11:51 +0200)] 
libtool: make func_win32_libid work when the name lister is MS dumpbin

* m4/libtool.m4 (_LT_CHECK_MAGIC_METHOD) [MSVC]: Use
func_win32_libid as file_magic_cmd when the name lister
is MS dumpbin.
(_LT_CMD_GLOBAL_SYMBOLS): Export the new veriable nm_interface
to the libtool script.
* build-aux/ltmain.in (func_cygming_gnu_implib_p)
(func_cygming_ms_implib_p): Move up to before...
(func_win32_libid): ...which now uses them to determine if
the object is an import library when the nm_interface is
"MS dumpbin".
* NEWS: Update.

Signed-off-by: Peter Rosin <peda@lysator.liu.se>