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.3 mrg libgcc-unwind.map: libgcc-std.ver 12 1.3 mrg @(echo "{"; \ 13 1.3 mrg for f in `grep _Unwind_ $< | sort`; do \ 14 1.3 mrg echo " $$f = EXTERN DIRECT;"; \ 15 1.3 mrg done; \ 16 1.3 mrg echo "};" ) > $@ 17 1.3 mrg 18 1.3 mrg # Copy libgcc-unwind.map to the place where gcc will look for it at build-time. 19 1.3 mrg install-libgcc-unwind-map-forbuild: libgcc-unwind.map 20 1.3 mrg dest=$(gcc_objdir)/tmp$$$$-$<; \ 21 1.3 mrg cp $< $$dest; \ 22 1.3 mrg chmod a+r $$dest; \ 23 1.3 mrg sh $(srcdir)/../move-if-change $$dest $(gcc_objdir)/$< 24 1.3 mrg 25 1.3 mrg all: install-libgcc-unwind-map-forbuild 26 1.3 mrg 27 1.3 mrg install-libgcc-unwind-map: libgcc-unwind.map 28 1.3 mrg $(INSTALL_DATA) $< $(DESTDIR)$(slibdir) 29 1.3 mrg 30 1.3 mrg install: install-libgcc-unwind-map 31 1.3 mrg 32 1.3 mrg endif 33