1 CROSS_LIBGCC1 = libgcc1-asm.a
2 LIB1ASMSRC = arc/lib1funcs.asm
3 LIB1ASMFUNCS = _mulsi3 _umulsidi3 _udivsi3 _divsi3 _umodsi3 _modsi3 _divmod_tools
5 # We need libgcc routines to be mangled according to which cpu they
7 # ??? -mmangle-cpu passed by default for now.
8 #LIBGCC2_CFLAGS = -g1 -O2 $(LIBGCC2_INCLUDES) $(GCC_CFLAGS) -mmangle-cpu
10 # These are really part of libgcc1, but this will cause them to be
11 # built correctly, so...
13 LIB2FUNCS_EXTRA = fp-bit.c dp-bit.c
15 dp-bit.c: $(srcdir)/config/fp-bit.c
16 echo '#ifndef __big_endian__' > dp-bit.c
17 echo '#define FLOAT_BIT_ORDER_MISMATCH' >> dp-bit.c
18 echo '#endif' >> dp-bit.c
19 cat $(srcdir)/config/fp-bit.c >> dp-bit.c
21 fp-bit.c: $(srcdir)/config/fp-bit.c
22 echo '#define FLOAT' > fp-bit.c
23 echo '#ifndef __big_endian__' >> fp-bit.c
24 echo '#define FLOAT_BIT_ORDER_MISMATCH' >> fp-bit.c
25 echo '#endif' >> fp-bit.c
26 cat $(srcdir)/config/fp-bit.c >> fp-bit.c
28 # .init/.fini section routines
30 x-crtinit.o: $(srcdir)/config/arc/initfini.c $(GCC_PASSES) $(CONFIG_H)
31 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(CRTSTUFF_T_CFLAGS) \
32 -DCRT_INIT -finhibit-size-directive -fno-inline-functions \
33 -g0 -c $(srcdir)/config/arc/initfini.c -o $(dir)/crtinit.o
35 x-crtfini.o: $(srcdir)/config/arc/initfini.c $(GCC_PASSES) $(CONFIG_H)
36 $(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(CRTSTUFF_T_CFLAGS) \
37 -DCRT_FINI -finhibit-size-directive -fno-inline-functions \
38 -g0 -c $(srcdir)/config/arc/initfini.c -o $(dir)/crtfini.o
41 MULTILIB_DIRNAMES = be
43 # We need our own versions to build multiple copies of crt*.o.
44 # ??? Use new support in Makefile.
46 LIBGCC = stmp-multilib-arc
47 INSTALL_LIBGCC = install-multilib-arc
49 stmp-multilib-arc: stmp-multilib
50 for i in `$(GCC_FOR_TARGET) --print-multi-lib`; do \
51 dir=`echo $$i | sed -e 's/;.*$$//'`; \
52 flags=`echo $$i | sed -e 's/^[^;]*;//' -e 's/@/ -/g'`; \
53 $(MAKE) GCC_FOR_TARGET="$(GCC_FOR_TARGET)" \
54 CC="$(CC)" CFLAGS="$(CFLAGS)" \
55 HOST_PREFIX="$(HOST_PREFIX)" HOST_PREFIX_1="$(HOST_PREFIX_1)" \
56 GCC_CFLAGS="$(GCC_CFLAGS) $${flags}" \
57 INCLUDES="$(INCLUDES)" CRTSTUFF_T_CFLAGS=$(CRTSTUFF_T_CFLAGS) \
58 dir="$${dir}" x-crtinit.o x-crtfini.o; \
59 if [ $$? -eq 0 ] ; then true; else exit 1; fi; \
61 touch stmp-multilib-arc
63 install-multilib-arc: install-multilib
64 for i in `$(GCC_FOR_TARGET) --print-multi-lib`; do \
65 dir=`echo $$i | sed -e 's/;.*$$//'`; \
66 rm -f $(libsubdir)/$${dir}/crtinit.o; \
67 $(INSTALL_DATA) $${dir}/crtinit.o $(libsubdir)/$${dir}/crtinit.o; \
68 chmod a-x $(libsubdir)/$${dir}/crtinit.o; \
69 rm -f $(libsubdir)/$${dir}/crtfini.o; \
70 $(INSTALL_DATA) $${dir}/crtfini.o $(libsubdir)/$${dir}/crtfini.o; \
71 chmod a-x $(libsubdir)/$${dir}/crtfini.o; \