aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/t-slibgcc-elf-ver
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2001-05-25 16:08:57 -0700
committerRichard Henderson <rth@gcc.gnu.org>2001-05-25 16:08:57 -0700
commit7b3a4df550bc564ae51876283610f1470703854c (patch)
tree8530c383af7c77aec7c70cd3ec9b6efb3b02c867 /gcc/config/t-slibgcc-elf-ver
parent57db2f4df60de3b9c9e6d3320e8704f382a08a5b (diff)
downloadgcc-7b3a4df550bc564ae51876283610f1470703854c.zip
gcc-7b3a4df550bc564ae51876283610f1470703854c.tar.gz
gcc-7b3a4df550bc564ae51876283610f1470703854c.tar.bz2
config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux.
* config.gcc (all gnu and linux): Use t-slibgcc-elf-ver with t-linux. (i386-*-solaris2): Use t-slibgcc-elf-ver or t-slibgcc-sld. (sparc*-*-solaris2): Likewise. * config/t-linux: Remove shared libgcc macros. * config/t-slibgcc-elf-ver: Move from sparc/t-slibgcc. * config/t-slibgcc-sld: Move from sparc/t-slibgcc-sld. From-SVN: r42602
Diffstat (limited to 'gcc/config/t-slibgcc-elf-ver')
-rw-r--r--gcc/config/t-slibgcc-elf-ver17
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/config/t-slibgcc-elf-ver b/gcc/config/t-slibgcc-elf-ver
new file mode 100644
index 0000000..88506d9
--- /dev/null
+++ b/gcc/config/t-slibgcc-elf-ver
@@ -0,0 +1,17 @@
+# Build a shared libgcc library for ELF with symbol versioning
+# with the GNU linker.
+
+SHLIB_EXT = .so
+SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \
+ -Wl,--soname=@shlib_base_name@.so.0 \
+ -Wl,--version-script=@shlib_map_file@ \
+ -o @shlib_base_name@.so @multilib_flags@ @shlib_objs@ -lc && \
+ rm -f @shlib_base_name@.so.0 && \
+ $(LN_S) @shlib_base_name@.so @shlib_base_name@.so.0
+# $(slibdir) double quoted to protect it from expansion while building
+# libgcc.mk. We want this delayed until actual install time.
+SHLIB_INSTALL = $(INSTALL_DATA) @shlib_base_name@.so $$(slibdir)/@shlib_base_name@.so.0; \
+ rm -f $$(slibdir)/@shlib_base_name@.so; \
+ $(LN_S) @shlib_base_name@.so.0 $$(slibdir)/@shlib_base_name@.so
+SHLIB_MKMAP = $(srcdir)/mkmap-symver.awk
+SHLIB_MAPFILES = $(srcdir)/libgcc-std.ver