autoconf-archive-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[patch #8582] AX_CHECK_VSCRIPT: Check whether ld supports shared library


From: Kevin Cernekee
Subject: [patch #8582] AX_CHECK_VSCRIPT: Check whether ld supports shared library symbol version scripts
Date: Tue, 02 Dec 2014 19:24:20 +0000
User-agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:33.0) Gecko/20100101 Firefox/33.0

URL:
  <http://savannah.gnu.org/patch/?8582>

                 Summary: AX_CHECK_VSCRIPT: Check whether ld supports shared
library symbol version scripts
                 Project: GNU Autoconf Archive
            Submitted by: cernekee
            Submitted on: Tue 02 Dec 2014 07:24:18 PM GMT
                Priority: 5 - Normal
                  Status: None
             Assigned to: None
        Originator Email: 
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

Check whether the linker supports version scripts.  Version scripts are used
when building shared libraries to bind symbols to version nodes (helping to
detect incompatibilities) or to limit the visibility of non-public symbols.

Toolchain support:

* GNU toolchains typically support --version-script foo.map.
* Solaris supports -M foo.map.
* Other systems might not support this feature at all.
* OSX has its own "-M" flag which does something completely different, and
isn't guaranteed to produce an error if you pass it a version script.
* GNU toolchains support partial wildcards like "global: Java_*" but Solaris
is stricter.

This macro distinguishes the known cases and makes it easy to disable symbol
versioning on systems where it is unavailable.  It is partially based on prior
work in this area:

*
http://git.infradead.org/users/dwmw2/openconnect.git/blob/refs/tags/v6.00:/configure.ac#l490
* http://multithread.org/?q=node/116
* http://root.cern.ch/svn/root/vendors/llvm/autoconf/m4/link_options.m4
*
https://github.com/samm-git/stoken/commit/9a5a4343f378cf5dbd35f113e374a50db36560a4

A couple of Homebrew recipes have had to hack around hardcoded
--version-script flags in the past; one goal of adding this to the Autoconf
Archive is to provide a standard way of detecting/disabling this feature.

Tested on Linux (GNU ld 2.22), Solaris x86 (ld 5.11 from Solaris Studio 12.3),
OSX (unknown).



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Tue 02 Dec 2014 07:24:18 PM GMT  Name:
0001-AX_CHECK_VSCRIPT-initial-version.patch  Size: 5kB   By: cernekee

<http://savannah.gnu.org/patch/download.php?file_id=32587>

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/patch/?8582>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]