Mercurial > gnulib
comparison doc/lib-symbol-visibility.texi @ 40179:6823a10c9418
Add script for determining the set of symbols to export from a library.
* build-aux/declared.sh: New file, from GNU libunistring.
* doc/lib-symbol-visibility.texi (Exported Symbols of Shared Libraries):
Mention it.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sun, 03 Feb 2019 21:44:16 +0100 |
parents | b06060465f09 |
children |
comparison
equal
deleted
inserted
replaced
40178:a8eeb883e377 | 40179:6823a10c9418 |
---|---|
83 This is perfect: It burdens the maintainer only for exported API, not | 83 This is perfect: It burdens the maintainer only for exported API, not |
84 for library-internal API. And it keeps the annotations in the source code. | 84 for library-internal API. And it keeps the annotations in the source code. |
85 @end itemize | 85 @end itemize |
86 | 86 |
87 GNU libtool's @option{-export-symbols} option implements the first approach. | 87 GNU libtool's @option{-export-symbols} option implements the first approach. |
88 The script @code{declared.sh} from Gnulib can help to produce the list of | |
89 symbols. | |
88 | 90 |
89 This gnulib module implements the third approach. For this it relies on | 91 This gnulib module implements the third approach. For this it relies on |
90 GNU GCC 4.0 or newer, namely on its @samp{-fvisibility=hidden} command-line | 92 GNU GCC 4.0 or newer, namely on its @samp{-fvisibility=hidden} command-line |
91 option and the ``visibility'' attribute. (The ``visibility'' attribute | 93 option and the ``visibility'' attribute. (The ``visibility'' attribute |
92 was already supported in GCC 3.4, but without the command line option, | 94 was already supported in GCC 3.4, but without the command line option, |