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