summaryrefslogtreecommitdiff
path: root/libnettle.map.in
diff options
context:
space:
mode:
authorNikos Mavrogiannopoulos <nmav@redhat.com>2018-06-06 15:17:00 +0200
committerNiels Möller <nisse@lysator.liu.se>2018-07-07 22:04:25 +0200
commitda81c86aac0d6c8ae229e0385c7850782a0efa6b (patch)
tree278bf491060cc2f0e7aac2452e18f30e20c28e35 /libnettle.map.in
parent7ef18d1e764c8cf967d8636ede2ce3c42ea06e7d (diff)
downloadnettle-da81c86aac0d6c8ae229e0385c7850782a0efa6b.tar.gz
abi: explicitly export intended symbols and hide others
This adds all exported symbols in the map files explicitly under the following rules: - Symbols mentioned in internal headers go in a section which is valid only for testing, and linking with these symbols will break in library updates. - Symbols mentioned in installed headers go in the exported sections and are considered part of the ABI. - All internal symbols move to internal headers. - The _nettle_md5_compress and _nettle_sha1_compress become exported without the _nettle prefix, due to existing usage.
Diffstat (limited to 'libnettle.map.in')
-rw-r--r--libnettle.map.in13
1 files changed, 11 insertions, 2 deletions
diff --git a/libnettle.map.in b/libnettle.map.in
index 02455bc5..95557217 100644
--- a/libnettle.map.in
+++ b/libnettle.map.in
@@ -1,4 +1,4 @@
-# libnettle.map -- libnettle linker version script. -*- ld-script -*-
+# libnettle.map.in -- linker version script. -*- ld-script -*-
#
# The symbol version must be updated on every nettle
@@ -9,9 +9,18 @@ NETTLE_@LIBNETTLE_MAJOR@
{
global:
nettle_*;
- _nettle_*;
local:
*;
};
+# Internal symbols which are to be used only for unit or other
+# testing. Compatibility may break across releases.
+NETTLE_INTERNAL_@LIBNETTLE_MAJOR@_@LIBNETTLE_MINOR@
+{
+ global:
+ _nettle_*;
+
+ local:
+ *;
+};