summaryrefslogtreecommitdiff
path: root/build-aux/ltmain.in
Commit message (Collapse)AuthorAgeFilesLines
* libtool: passthru '-Werror' flagsHEADmasterSam James2022-12-161-1/+2
| | | | | | * build-aux/ltmain.in: Pass '-Werror' flags to linker. Copyright-paperwork-exempt: Yes
* Revert "libtool: permit compiler libs in shlibs"Alex Ameen2022-05-161-9/+0
| | | | This reverts commit 1d2577357ee704da2d6d7c7da119ad82ba8ca172.
* libtool: permit compiler libs in shlibsAlex Ameen2022-05-081-0/+9
|
* maint: update copyrights across project.Alex Ameen2022-02-081-1/+1
|
* libtool: Do not pass '-pthread' to Solaris linker.Stacey Marshall2022-02-051-2/+14
| | | | | | | * build-aux/ltmain.in: Do not add -pthread to inherited linker flags on Solaris systems. Copyright-paperwork-exempt: Yes
* libtool: replace raw invocations of sed with $SEDVáclav Haisman2021-11-291-1/+1
| | | | | | | | | | * build-aux/ltmain.in: replace raw invocations of sed with $SED * m4/libtool.m4: replace raw invocations of sed with $SED * m4/ltargz.m4: replace raw invocations of sed with $SED * m4/ltdl.m4: replace raw invocations of sed with $SED Co-authored-by: Alex Ameen <alex.ameen.tx@gmail.com> Copyright-paperwork-exempt: Yes
* libtool: add support for MidnightBSDLucas Holt2021-11-291-5/+5
| | | | | | | | * build-aux/ltmain.in: clone link-mode handling for MidnightBSD from FreeBSD * m4/libtool.m4: clone various TAGVARs for MidnightBSD from FreeBSD * m4/ltdl.m4: clone dlopen handling for MidnightBSD from FreeBSD Copyright-paperwork-exempt: Yes
* libtool: replace some references to /usr/bin/file and /bin/shAlex Ameen2021-11-201-1/+1
| | | | | | * build-aux/ltmain.sh: use '/usr/bin/env sh' in shebang * libtoolize.in: use '/usr/bin/env sh' in shebang * m4/libtool.m4: 'FILECMD' to replace use of '/usr/bin/file'
* libtool: Add -Wa,* link-mode flag for assembler pass-thruaakropotkin2021-11-181-2/+6
| | | | | | | * build-aux/ltmain.in: add -Wa,* as link-mode flag. Add help messages for -Wa,* and -Xassember in link mode. Add help message for -Xcompiler in compile mode. * doc/libtool.texi: document -Xassembler and -Wa,* for link-mode.
* libtool: Pass -Xassembler flag and arguments to compilerAlex Potapenko2021-11-181-0/+12
| | | | | | * build-aux/ltmain.in: Add parsing and pass-thru for -Xassembler Copyright-paperwork-exempt: Yes
* maint: update copyrights across project.aakropotkin2021-11-141-1/+1
| | | | | * AUTHORS: Correct manually modified copyright to be consistent with other files.
* maint: update bootstrap, gnulib, copyright datesPavel Raiskup2019-03-131-1/+1
| | | | | | * gnulib: Update to the latest git version. * gl-mod/bootstrap: Likewise. * bootstrap: Regenerate.
* maint: update bootstrap, gnulib, copyright datesPavel Raiskup2018-07-241-1/+1
| | | | | | | | * gnulib: Update to the latest git version. * gl-mod/bootstrap: Likewise. * bootstrap: Regenerate. * gl/top/README-release.diff: Update the patch for the latest changes in gnulib's README-release.
* libtool: quote 'cd' command in shipped relink_commandPavel Raiskup2017-04-251-2/+4
| | | | | | | | | | Per report from Eric Blake: https://lists.gnu.org/archive/html/bug-libtool/2015-10/msg00009.html * build-aux/ltmain.in (func_mode_link): Quote 'cd `pwd`' properly before generating the $relink_command. Do that for the potential scenarios where the pwd could contain spaces or special shell characters.
* libtool: exit verbosely for fatal configure problemsBert Wesarg2017-04-211-1/+1
| | | | | | | | | | Instead of calling not-existing function and processing subsequent shell code. * build-aux/ltmain.in (func_fatal_configuration): Fix typo in func_fatal_error call. Copyright-paperwork-exempt: Yes
* maint: update copyright yearsPavel Raiskup2017-04-211-1/+1
| | | | | | | | Also sync gnulib & bootstrap git submodules. * gnulib, gl-mod/bootstrap: Move to latest git versions. * bootstrap: Regenerate. * all files: Bump years by 'make update-copyright'.
* bootstrap: use the upstream repo as git modulePavel Raiskup2016-03-091-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | .. instead of copying it all the time; gnulib-tool and bootstrap are now ready to do this correctly. Bootstrap upstream is now dual-licensed as MIT/GPLv2+; so the sources are redistributed automatically under GPLv3+ license in in libtool project. * .gitmodules (bootstrap): New submodule. * bootstrap.conf (local_gl_dir): Renamed to local_gl_path. (local_gl_path): Renamed from local_gl_dir. Two sub-directories are now mentioned as two --local-dir's are used. (gnulib_git_submodules): New option to automatically clone the bootstrap git submodule. * build-aux/ltmain.in (libtool_options_prep) (libtool_parse_options): Changing function exit status is not needed with new options-parser. * libtoolize.in: Don't func_quote when it is not necessary, don't set the function return value. * gl-mod/bootstrap: New git submodule. * 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, gl/doc/bootstrap.texi, gl/modules/all-shells-tests, gl/modules/bootstrap, gl/modules/extract-trace, gl/modules/funclib.sh, gl/modules/funclib.sh-tests, gl/modules/inline-source gl/modules/options-parser, gl/modules/options-parser-tests, gl/tests/test-all-shells.sh, gl/tests/test-funclib-quote.sh gl/tests/test-option-parser-helper, gl/tests/test-option-parser.sh: Files removed, those are automatically pulled from upstream now. * bootstrap: Sync with upstream.
* libtool: pass through -fuse-ld flagsMike Frysinger2016-02-191-1/+2
| | | | | | | | | | Starting with gcc-4.8, there's a -fuse-ld flag that can be used to select between bfd & gold. Make sure we pass it through to the linking stage. * build-aux/ltmain.in (func_mode_link): Pass -fuse-ld=* flags through. Copyright-paperwork-exempt: Yes
* maint: update copyright yearsPavel Raiskup2016-02-161-1/+1
| | | | | | | | Also update gnulib submodule as it contains updated copyright years too. * gnulib: Latest greatest git hash. * all files: Run 'make update-copyright'.
* libtool: fix GCC/clang linking with -fsanitize=*Jeremy Huddleston Sequoia2015-11-301-1/+2
| | | | | | | | | | | References: https://lists.gnu.org/archive/html/libtool/2014-04/msg00026.html * build-aux/ltmain.in (func_mode_link): Pass -fsanitize=* to the linker to allow trivial use of the clang address sanitizer. Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@macports.org> Copyright-paperwork-exempt: Yes
* funclib: refactor quoting methods a bitPavel Raiskup2015-10-121-57/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | From now we have two basic functions to perform string quoting for shell evaluation -- 'func_quote_arg' to quote one argument and 'func_quote' which takes list of arguments to be quoted. New function name-scheme should be more descriptive (previously we called func_quote_for_eval with one argument and also multiple arguments, while we had confusing $func_quote_for_eval_unquoted_result which is redundant for multiple-arguments call). New abstraction allowed us (in an easy way) to implement bash-specific optimization for quoting (using 'printf -v VARNAME %q "$value"', suggested by Eric Blake), this construct may be used on those places where we don't care much about the result aesthetics (its thus not useful for '*.la' generation or for error printing). * gl/build-aux/funclib.sh (func_append_quoted): Use func_quote_arg internally (kept in 'pretty' mode for now). (func_quote): Made to be "main" high-level quoting method taking list of arguments to be quoted into single command. It replaces func_quote_for_{expand,eval}. (func_quote_portable): Implements quoting in shell, falling back to portable sed call (rare cases). (func_quotefast_eval): New internal function using fast bash-specific construct, falling back to func_quote_portable for non-Bash scripts. (func_quote_arg): New function to quote one argument. (func_quote_for_eval): Removed. All callers changed to call func_quote. (func_quote_for_expand): Likewise. * bootstrap: Sync with funclib.sh and options-parser.
* libtool: optimizing options-parser hooksPavel Raiskup2015-10-121-8/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | Its not necessary to (re)func_quote_for_eval in each function in the hook hierarchy. Usually it is enough if the leaf function does func_quote_for_eval and its caller just re-uses the <CALLEE>_return variable. This is follow up for the previous commit. * gl/build-aux/options-parser (func_run_hooks): Propagate $EXIT_SUCCESS return code down to caller if *any* hook succeeded. Never re-quote the result -- either the arguments are left untouched, or the options have already been properly quoted by succeeding hooks. (func_parse_options): Quote '$@' and return $EXIT_SUCCESS only if we changed something. (func_validate_options): Likewise. (func_options_prep): Likewise. (func_options_finish): New hook-caller for 'func_options' hooks. (func_options): Propagate return value down to top-level caller, but pay attention we have always set $func_options_result. * build-aux/ltmain.in (libtool_options_prep): Quote '$@' and return $EXIT_SUCCESS only if we changed something. (libtool_parse_options): Likewise. * bootstrap: Sync gl/build-aux/with option-parser.
* libtool: mitigate the $sed_quote_subst slowdownPavel Raiskup2015-10-121-4/+6
| | | | | | | | | | | | | | | | | | When it is reasonably possible, use shell implementation for quoting. References: http://lists.gnu.org/archive/html/libtool/2015-03/msg00005.html http://lists.gnu.org/archive/html/libtool/2015-02/msg00000.html https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20006 * gl/build-aux/funclib.sh (func_quote): New function that can be used as substitution for '$SED $sed_quote_subst' call. * build-aux/ltmain.in (func_emit_wrapper): Use func_quote instead of '$SED $sed_quote_subst'. (func_mode_link): Likewise. * NEWS: Document. * bootstrap: Sync with funclib.sh.
* libtool: fix GCC linking with -specs=*Pavel Raiskup2015-09-181-1/+3
| | | | | | | | | | References: https://bugzilla.redhat.com/show_bug.cgi?id=985592 * build-aux/ltmain.in (func_mode_link): Pass -specs=* to the linker, Fedora uses this option for hardening. Signed-off-by: Pavel Raiskup <praiskup@redhat.com>
* libtool: don't execute automake and autoconf on every invocation.Gary V. Vaughan2015-02-061-1/+8
| | | | | | | | | | | | | Regression from 2.4.2 was causing noticable slow-down in builds that call libtool many times. * build-aux/ltmain.in (func_help): Override func_help() from gl/build-aux/options-parser to only run automake --version and autoconf --version when libtool --help is executed on the command line. * NO-THANKS: Add Robert Yang. Reported by Robert Yang Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* maint: update copyright statements to include 2015.Gary V. Vaughan2015-01-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * AUTHORS, HACKING, Makefile.am, NEWS, README.md, TODO, bootstrap, bootstrap.conf, build-aux/edit-readme-alpha, build-aux/git-hooks/commit-msg, 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/configure.ac, libltdl/libltdl/lt__alloc.h, libltdl/libltdl/lt__argz_.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__argz.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/autobuild.m4, m4/libtool.m4, m4/ltargz.m4, m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.in, m4/lt~obsolete.m4, m4/m4.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-def.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: Update copyright statement to include 2015. * cfg.mk: Adjust old_NEWS_hash accordingly. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: check Sun Pro CXX ABI postdeps at libtool time.Gary V. Vaughan2014-12-121-0/+49
| | | | | | | | | | | | | | | | | | * m4/libtool.m4 (_LT_PREPARE_CC_BASENAME): Factor cc_basename calculation into a shell function... (_LT_CONFIG_SAVE_COMMAND): ...and expand it into generated libtool script. (_LT_CC_BASENAME): Adjust accordingly. (_LT_FUNC_SUNCC_CSTD_ABI): Remove from here... * build-aux/ltmain.in (func_suncc_cstd_abi): ...and reimplement here. * m4/libtool.m4 (_LT_SYS_HIDDEN_LIBDEPS): Remove postdeps augmentation from here... * build-aux/ltmain.in (func_mode_link): ...and reimplement here just before postdeps are added. * NEWS: Update. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: support LT_SYS_LIBRARY_PATH for adjusting bad guesses.Pavel Raiskup2014-12-111-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Revert 8728e07 and 440fee6. Some GNU/Linux distributions install libraries into /lib64 (or /usr/lib64) on 64-bit machines, while /lib (/usr/lib respectively) stays for multilib variant. Other distributions keep /usr/lib for 64-bit variant and reserve other directory for multilib. Detection of what approach a given system uses is difficult, however, especially because Glibc's ldconfig does not report the full and correct list of search paths. Allow the user to adjust Libtools heuristically determined search paths with the new LT_SYS_LIBRARY_PATH environment variable at both compile-time, when libtool is called, and at configure time. * m4/libtool.m4 (_LT_PREPARE_MUNGE_PATH_LIST): Define a new function to munge a libtool path list according to a user supplied colon-delimited path. (_LT_SYS_DYNAMIC_LINKER): Require _LT_PREPARE_MUNGE_PATH_LIST. Mark LT_SYS_LIBRARY_PATH as precious to autoconf (to survive automatic "autoreconf"). Call the new func_munge_path_list function on sys_lib_dlsearch_path_spec - this propagates results to generated libtool script. (_LT_CONFIG): Expand _LT_PREPARE_MUNGE_PATH_LIST into generated libtool script. * build-aux/ltmain.in (func_mode_link): Call it to adjust sys_lib_dlsearch_path according to LT_SYS_LIBRARY_PATH. * doc/libtool.texi: Document new LT_SYS_LIBRARY_PATH. * doc/notes.texi: Likewise. * NEWS: Update. References: http://thread.gmane.org/gmane.comp.gnu.libtool.general/8339/focus=8345 Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: use a modern library version scheme for freebsd-elf.Tijl Coosemans2014-11-281-4/+5
| | | | | | | | | | * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Adopt downstream patch used by FreeBSD for versioned library filenames. * build-aux/ltmain.in (func_mode_link): Replace conflicting freebsd-elf version_type case branches with a single calculation setting major and versuffix to match downstream FreeBSD. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: split sco version into its own type.Tijl Coosemans2014-11-281-0/+5
| | | | | | | | | * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER): Set version type to "sco" for sco based hosts. * build-aux/ltmain.in (func_mode_link): Accept new "sco" version_type as equivalent to freebsd-elf. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: fix universal library building on darwin.Gary V. Vaughan2014-11-041-1/+1
| | | | | | | | | * build-aux/ltmain.in (func_extract_archives): $basename is now spelled $sed_basename. * NO-THANKS: Update. Reported by Misty De Meo Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: support versioning on OS/2.KO Myung-Hun2014-11-041-1/+1
| | | | | | | | | | * build-aux/ltmain.in (func_mode_link) <*-os2*>: Set major and versuffix. * m4/libtool.m4 (_LT_SYS_DYNAMIC_LINKER) <*-os2*>: Set version_type to windows. Add a version information to soname_spec. * NEWS: Update. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: add -os2dllname option.KO Myung-Hun2014-11-041-1/+13
| | | | | | | | | | | | | On OS/2, if there are many DLLs whose prefix is the same and very long, the resulting DLLs are overwritten. Provide a new option to force a DLL name. * build-aux/ltmain.in (func_mode_help): Add a description for -os2dllname. (func_mode_link): Add -os2dllname. * doc/libtool.texi: Document it. * NEWS: Update. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: fix DLL creation/installation/uninstallation on OS/2.KO Myung-Hun2014-11-041-0/+7
| | | | | | | | | | OS/2 can only load a DLL with a base name of 8 characters or less. Also, on OS/2 don't install or uninstall using a link. * build-aux/ltmain.in: Do not strip an import lib. * m4/libtool.m4: Set variables to fix DLL creation, installation and uninstallation. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: support -Zxxx options used on OS/2.KO Myung-Hun2014-11-041-0/+19
| | | | | | | * build-aux/ltmain.in (func_mode_link): Add -Z* case, treating them specially on os2 only. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: there is no need to relink DLLs on OS/2.KO Myung-Hun2014-11-041-1/+1
| | | | | | * build-aux/ltmain.in (func_mode_link) <*-os2*>: need_relink=no. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: don't eliminate duplications in $postdeps and $predeps on OS/2KO Myung-Hun2014-11-041-1/+1
| | | | | | * build-aux/ltmain.h (libtool_validate_options): Add *os2* to the list. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: fix GCC linking with -fstack-protector.Gary V. Vaughan2014-10-251-1/+2
| | | | | | | | * build-aux/ltmain.in (func_mode_link): Pass -fstack-protector* to the linker as it is required at link time to resolve libssp symbols. From Yaakov Selkowitz Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: delay expansion of $ECHO until the wrapper script runsPeter Rosin2014-05-131-1/+1
| | | | | | | | | | | Expanding $ECHO too early leads to unquoted \n when ECHO='printf %s\n'. Fixes bug#17478. Reported by Egmont Koblinger. * build-aux/ltmain.in (func_emit_wrapper) [fast_install]: Quote the $ECHO, and delay the expansion. Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* libtool: speed up ltwrapper_script detection in execute modePeter Rosin2014-05-061-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | Execute mode is slow and might even DOS the computer in extreme cases when a parameter is a big binary file without newlines. Work around this with different truncation if a suitable dd utility is found. Fixes bug#13472 and bug#16662. Reported by Pavel Raiskup and Nick Bowler. * m4/libtool.m4 (_LT_PATH_DD): New macro, for finding a dd utility that works for the below purpose. (_LT_CMD_TRUNCATE): New macro, for finding out how to truncate binary pipes (fallback to the old sed truncation if no suitable dd is found in _LT_PATH_DD). (_LT_SETUP): Require _LT_CMD_TRUNCATE. (LT_INIT): Require Autoconf 2.62, as needed by _LT_PATH_DD. * build_aux/ltmain.in (func_lalib_p): Factor out the actual "generated by libtool" test into... (func_generated_by_libtool_p): ...this new function... (func_ltwrapper_script_p): ...so that it can be reused here, when truncating the pipe according to _LT_CMD_TRUNCATE. * THANKS: Update. Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* libtool: prevent lto from stripping the magic cookie from the cwrapperPeter Rosin2014-05-021-1/+6
| | | | | | | | | | Whole program optimization may remove unused symbols unless told they are really needed. Fixes sr #108559 reported by LRN. * build-aux/ltmain.in (func_emit_cwrapperexe_src:MAGIC_EXE): Try to ensure that the magic cookie is preserved. Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* libtool: actually strip -Wl when relinking with $LDPeter Rosin2014-02-121-1/+1
| | | | | | | | | | | | Fixes the regression from commit v2.4.2.444 which is causing a testsuite failure in duplicate_conv.at (seen on Cygwin). * build-aux/ltmain.in (func_mode_link): $reload_cmds typically starts with "$LD$reload_flag ..." when $LD is used to relink. Make the case expression match that when checking if $LD is in fact used to relink. Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* libtool: opt_duplicate_compiler_generated_deps is harmful on SolarisRainer Orth2014-01-181-1/+3
| | | | | | | | | | | Fix for http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452. * build-aux/ltmain.in (libtool_validate_options): disable the opt_duplicate_compiler_generated_deps optimization for Solaris2 so that gcc-4.9+ compiled C++ code with -Wl,-Bdirect on 64-bit Solaris x86 can avoid unwinding failures caused by accidental mixing of the libc and libgcc_s unwinders in a single executable. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtoolize: use printf '%s\n' unconditionally.Gary V. Vaughan2014-01-031-1/+1
| | | | | | | | | | | | | | It's been a year since the as_echo probes were removed in Autoconf, so we can follow suit and remove our equivalent bs_echo probing now. Retain $ECHO in case users need to override default printf calls in museum piece environments. * gl/build-aux/funclib.sh (ECHO): Default to 'printf %s\n'. (bs_echo): Remove. Adjust all bs_echo callers to use $ECHO instead. * bootstrap: Regenerate. * NEWS: Update. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: only strip -Wl when linking with $LD.v2.4.2.444Gary V. Vaughan2014-01-021-6/+8
| | | | | | | | | * build-aux/ltmain.in (func_mode_link): Don't strip -Wl from the linker flags, except when linking with $LD, otherwise compiler drivers that don't recognize and pass linker flags through will choke on unrecognized options. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* maint: update copyright notices to include 2014.Gary V. Vaughan2014-01-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * .x-update-copyright: New file. Exclude files not owned by this project from update-copyright rules. * doc/libtool.texi: Replace m-dash with n-dash in texinfo copyright notice so that update-copyright matches correctly. Undo bogus copyright updates to example output from gdb session. Bump copyright year. * Changelog.old: Revert bogus updates from previous years without .x-update-copyright. AUTHORS, HACKING, Makefile.am, NEWS, README, THANKS, TODO, bootstrap, bootstrap.conf, build-aux/edit-readme-alpha, build-aux/git-hooks/commit-msg, build-aux/ltmain.in, cfg.mk, configure.ac, 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-def.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>
* maint: use $SED and $GREP, not sed and grep in all scripts.Gary V. Vaughan2014-01-021-4/+4
| | | | | | | | | | | | | | Choosing between hardcoding a tool's name, or using the shell variable with a path to the user's prefered implementation or configure's idea of the best available is a premature optimisation. * build-aux/ltmain.in, gl/build-aux/bootstrap.in, gl/build-aux/extract-trace, gl/build-aux/funclib.sh, libtoolize.in: Use $SED and $GREP consistently throughout, instead of hardcoding sed and grep. * bootstrap: Regenerate. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* maint: fix out-of-tree autoreconf w/o manual rebootstrapPeter Rosin2013-12-091-2/+2
| | | | | | | build-aux/ltmain.in: Look for funclib.sh and options-parser in the same location ltmain.in is found. Signed-off-by: Peter Rosin <peda@lysator.liu.se>
* maint: fix a syntax-check violation from commit 12641bd.Gary V. Vaughan2013-10-261-1/+1
| | | | | | | | * build-aux/ltmain.in (func_mode_link): Reverse test operands to forestall misinterpretation of contests of shell variable as operand 1. Signed-off-by: Gary V. Vaughan <gary@gnu.org>
* libtool: Don't fall back to static libraries if building them was disabledVadim Zeitlin2013-10-091-3/+6
| | | | | | | | | | | | | | | | | | | 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