Home | History | Annotate | Line # | Download | only in config
t-slibgcc-sld revision 1.3
      1 # Build a shared libgcc library for ELF with symbol versioning
      2 # with the Solaris linker.
      3 
      4 SHLIB_LDFLAGS = -Wl,-h,$(SHLIB_SONAME) -Wl,-z,text -Wl,-z,defs \
      5 	-Wl,-M,$(SHLIB_MAP)
      6 
      7 ifeq ($(enable_shared),yes)
      8 
      9 # Linker mapfile to enforce direct binding to libgcc_s unwinder
     10 # (PR target/59788).
     11 libgcc-unwind.map: libgcc-std.ver
     12 	@(echo "{";				\
     13 	for f in `grep _Unwind_ $< | sort`; do	\
     14 	  echo "	$$f = EXTERN DIRECT;";	\
     15 	done;					\
     16 	echo "};" ) > $@
     17 
     18 # Copy libgcc-unwind.map to the place where gcc will look for it at build-time.
     19 install-libgcc-unwind-map-forbuild: libgcc-unwind.map
     20 	dest=$(gcc_objdir)/tmp$$$$-$<; \
     21 	cp $< $$dest; \
     22 	chmod a+r $$dest; \
     23 	sh $(srcdir)/../move-if-change $$dest $(gcc_objdir)/$<
     24 
     25 all: install-libgcc-unwind-map-forbuild
     26 
     27 install-libgcc-unwind-map: libgcc-unwind.map
     28 	$(INSTALL_DATA) $< $(DESTDIR)$(slibdir)
     29 
     30 install: install-libgcc-unwind-map
     31 
     32 endif
     33