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>
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>
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>
This reverts commit 5ed7430fcb, 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>
* 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>
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>
* 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>
* 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>
* 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>
* 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>
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>
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>
Commit 9a7071e668 "maint: update
copyright notices to include 2013." states that this was done, but
it actually was not.
gnulib/: Update to latest upstream.
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>
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>
* 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>
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>
* 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>
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>
* 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>
* 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>
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>
* 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>
* 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>
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>
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>
* 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>
* 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>
* 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>
* 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>
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>
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>
* 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>