1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-04-29 19:30:36 +02:00

Use a linker version script for libguile.

* libguile/Makefile.am (libguile_la_LDFLAGS)[HAVE_LD_VERSION_SCRIPT]:
  Use `libguile.map'.
  (EXTRA_DIST): Add `libguile.map'.

* libguile/libguile.map: New file.
This commit is contained in:
Ludovic Courtès 2009-08-09 23:40:11 +02:00
parent 25361e4b25
commit 9af080f720
2 changed files with 52 additions and 1 deletions

View file

@ -223,6 +223,13 @@ libguile_la_DEPENDENCIES = @LIBLOBJS@
libguile_la_LIBADD = @LIBLOBJS@ $(gnulib_library) $(LTLIBGMP) $(LTLIBUNISTRING)
libguile_la_LDFLAGS = @LTLIBINTL@ -version-info @LIBGUILE_INTERFACE_CURRENT@:@LIBGUILE_INTERFACE_REVISION@:@LIBGUILE_INTERFACE_AGE@ -export-dynamic -no-undefined
if HAVE_LD_VERSION_SCRIPT
libguile_la_LDFLAGS += -Wl,--version-script="$(srcdir)/libguile.map"
endif HAVE_LD_VERSION_SCRIPT
# These are headers visible as <guile/mumble.h>
pkginclude_HEADERS =
@ -264,7 +271,7 @@ EXTRA_DIST = ChangeLog-scm ChangeLog-threads \
cpp_errno.c cpp_err_symbols.in cpp_err_symbols.c \
cpp_sig_symbols.c cpp_sig_symbols.in cpp_cnvt.awk \
c-tokenize.lex version.h.in \
scmconfig.h.top libgettext.h
scmconfig.h.top libgettext.h libguile.map
# $(DOT_DOC_FILES) $(EXTRA_DOT_DOC_FILES) \
# guile-procedures.txt guile.texi

44
libguile/libguile.map Normal file
View file

@ -0,0 +1,44 @@
# Linker version script for libguile. -*- ld-script -*-
#
# Copyright (C) 2009 Free Software Foundation, Inc.
#
# This file is part of GUILE.
#
# GUILE is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as
# published by the Free Software Foundation; either version 3, or
# (at your option) any later version.
#
# GUILE is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public
# License along with GUILE; see the file COPYING.LESSER. If not,
# write to the Free Software Foundation, Inc., 51 Franklin Street,
# Fifth Floor, Boston, MA 02110-1301 USA
GUILE_2.0
{
global:
# Note: This includes `scm_i_' symbols declared as `SCM_API' (e.g.,
# symbols from `deprecated.c' or symbols used by public inline
# functions or macros).
scm_*;
# GDB interface.
gdb_options;
gdb_language;
gdb_result;
gdb_output;
gdb_output_length;
gdb_maybe_valid_type_p;
gdb_read;
gdb_eval;
gdb_print;
gdb_binding;
local:
*;
};