aboutsummaryrefslogtreecommitdiff
path: root/libsframe/Makefile.in
diff options
context:
space:
mode:
authorIndu Bhagat <indu.bhagat@oracle.com>2023-06-27 11:54:12 -0700
committerIndu Bhagat <indu.bhagat@oracle.com>2023-06-27 12:01:56 -0700
commit99fde044fc332b97616b395393b2590c510b0e6f (patch)
tree57b6718330455df0d1f4b8fe6756590c63cf2e47 /libsframe/Makefile.in
parent852bb8c10de8abef79f0771dca879ddc8e4298b3 (diff)
downloadgdb-99fde044fc332b97616b395393b2590c510b0e6f.zip
gdb-99fde044fc332b97616b395393b2590c510b0e6f.tar.gz
gdb-99fde044fc332b97616b395393b2590c510b0e6f.tar.bz2
libsframe: add symbol versioning
Define an empty base version LIBSFRAME_0.0 and add all symbols to version LIBSFRAME_1.0. The previous release of libsframe (libsframe.so.0) did not have versioned symbols. Adding a libsframe.ver file so that future releases of the library (and its consumers) can manage the changes better. For Solaris ld, use -M mapfile command line option. libsframe does not restrict the set of exported symbols, so at this time there is no need to fall back on the libtool's -export-symbols option for platforms where some other linker (with a different command line option for symbol versioning) may be used. libsframe/ * Makefile.am: Use symbol versioning for libsframe. * Makefile.in: Regenerated. * configure: Check for Solaris ld. * configure.ac: Regenerated. * libsframe.ver: New file.
Diffstat (limited to 'libsframe/Makefile.in')
-rw-r--r--libsframe/Makefile.in9
1 files changed, 7 insertions, 2 deletions
diff --git a/libsframe/Makefile.in b/libsframe/Makefile.in
index 57f912c..08c780c 100644
--- a/libsframe/Makefile.in
+++ b/libsframe/Makefile.in
@@ -523,14 +523,19 @@ INCDIR = $(srcdir)/../include
AM_CPPFLAGS = -I$(srcdir) -I$(srcdir)/../include -I$(srcdir)/../libctf
AM_CFLAGS = @ac_libsframe_warn_cflags@
libsframe_version_info = -version-info `grep -v '^\#' $(srcdir)/libtool-version`
+@HAVE_LD_VERSION_SCRIPT_TRUE@@HAVE_SOLARIS_LD_FALSE@libsframe_version_script = -Wl,--version-script=$(srcdir)/libsframe.ver
+# libsframe does not restrict the set of exported symbols. So, if linker does
+# not support symbol versioning, there is no need to fall back on libtool's
+# -export-symbols option.
+@HAVE_LD_VERSION_SCRIPT_TRUE@@HAVE_SOLARIS_LD_TRUE@libsframe_version_script = -Wl,-M -Wl,$(srcdir)/libsframe.ver
@INSTALL_LIBBFD_TRUE@lib_LTLIBRARIES = libsframe.la
@INSTALL_LIBBFD_FALSE@include_HEADERS =
@INSTALL_LIBBFD_TRUE@include_HEADERS = $(INCDIR)/sframe.h $(INCDIR)/sframe-api.h
@INSTALL_LIBBFD_FALSE@noinst_LTLIBRARIES = libsframe.la
libsframe_la_SOURCES = sframe.c sframe-dump.c sframe-error.c
libsframe_la_CPPFLAGS = $(AM_CPPFLAGS)
-libsframe_la_LDFLAGS = $(libsframe_version_info)
-EXTRA_DIST = libtool-version
+libsframe_la_LDFLAGS = $(libsframe_version_info) $(libsframe_version_script)
+EXTRA_DIST = libtool-version libsframe.ver
@BUILD_INFO_TRUE@AM_MAKEINFOFLAGS = --no-split
# Setup the testing framework