From: Bruno Haible Date: Mon, 2 Mar 2009 22:44:04 +0000 (+0100) Subject: Update doc about visibility control of symbols in shared libraries. X-Git-Tag: v0.1~6234 X-Git-Url: http://erislabs.org.uk/gitweb/?a=commitdiff_plain;h=f824e4c73011002d79e2faa7e8e3b0cbf1fd96b6;p=gnulib.git Update doc about visibility control of symbols in shared libraries. --- diff --git a/ChangeLog b/ChangeLog index e4e8ffdb2..944f4ab89 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2009-03-02 Bruno Haible + + * doc/gnulib.texi (Exported Symbols of Shared Libraries): New section. + * doc/visibility.texi: Mention libtool's -export-symbols option. + 2009-03-02 Jim Meyering announce-gen: new option: --no-print-checksums diff --git a/doc/visibility.texi b/doc/visibility.texi index 1b6918de4..c6dcbb821 100644 --- a/doc/visibility.texi +++ b/doc/visibility.texi @@ -1,6 +1,6 @@ @c Documentation of gnulib module 'visibility'. -@c Copyright (C) 2005, 2006 Free Software Foundation, Inc. +@c Copyright (C) 2005-2006, 2009 Free Software Foundation, Inc. @c Permission is granted to copy, distribute and/or modify this document @c under the terms of the GNU Free Documentation License, Version 1.3 or @@ -9,8 +9,8 @@ @c Texts. A copy of the license is included in the ``GNU Free @c Documentation License'' file as part of this distribution. -This module allows precise control of the symbols exported by a shared -library. This is useful because +The @code{visibility} module allows precise control of the symbols +exported by a shared library. This is useful because @itemize @bullet @item @@ -81,6 +81,8 @@ This is perfect: It burdens the maintainer only for exported API, not for library-internal API. And it keeps the annotations in the source code. @end itemize +GNU libtool's @option{-export-symbols} option implements the first approach. + This gnulib module implements the third approach. For this it relies on GNU GCC 4.0 or newer, namely on its @samp{-fvisibility=hidden} command-line option and the "visibility" attribute. (The "visibility" attribute