xref: /netbsd-src/external/gpl3/gcc.old/dist/libgcc/config/t-slibgcc-vms (revision 1debfc3d3fad8af6f31804271c18e67f77b4d718)
1shlib_version:=$(shell $(CC) --version 2>&1 | \
2	sed -n 's/^.*(GCC).* \([0-9]*\.[0-9.]*\).*$/\1/p' | \
3	sed -e 's/\./,/' -e 's/\.//g')
4SHLIB_EXT = .exe
5SHLIB_OBJS = @shlib_objs@
6SHLIB_NAME = @shlib_base_name@.exe
7SHLIB_MULTILIB =
8SHLIB_INSTALL = $(INSTALL_DATA) $(SHLIB_NAME) $(DESTDIR)$(libsubdir)/$(SHLIB_NAME)
9SHLIB_SYMVEC = \
10  grep -F -e "\$$BSS\$$" -e "\$$DATA\$$" -e " sdata " -e " data.rel " -e " data.rel.ro " -e " sbss " \
11        -e "\$$LINK\$$" -e "\$$READONLY\$$" | \
12  sed -e "s/.*\$$LINK\$$   \(.*\)/SYMBOL_VECTOR=(\1=PROCEDURE)/" \
13      -e "s/.*\$$DATA\$$   \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
14      -e "s/.* sbss     \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
15      -e "s/.* sdata    \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
16      -e "s/.* data.rel \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
17      -e "s/.* data.rel.ro \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
18      -e "s/.*\$$BSS\$$    \(.*\)/SYMBOL_VECTOR=(\1=DATA)/" \
19      -e "s/.*\$$READONLY\$$ \(.*\)/SYMBOL_VECTOR=(\1=DATA)/"
20SHLIB_LINK = \
21  echo "case_sensitive=yes" > SYMVEC_$$$$.opt; \
22  objdump --syms $(SHLIB_OBJS) | \
23  $(SHLIB_SYMVEC) >> SYMVEC_$$$$.opt ; \
24  echo "case_sensitive=NO" >> SYMVEC_$$$$.opt; \
25  $(CC) $(LIBGCC2_CFLAGS) -nodefaultlibs \
26  -shared --for-linker=/noinform -o $(SHLIB_NAME) $(SHLIB_OBJS) \
27  --for-linker=SYMVEC_$$$$.opt \
28  --for-linker=gsmatch=equal,$(shlib_version)
29