t-frv revision 1.1.1.1
1# Name of assembly file containing libgcc1 functions.
2# This entry must be present, but it can be empty if the target does
3# not need any assembler functions to support its code generation.
4#
5# Alternatively if assembler functions *are* needed then define the
6# entries below:
7CROSS_LIBGCC1	= libgcc1-asm.a
8LIB1ASMSRC	= frv/lib1funcs.asm
9LIB1ASMFUNCS	= _cmpll _cmpf _cmpd _addll _subll _andll _orll _xorll _notll _cmov
10LIB2FUNCS_EXTRA	= cmovh.c cmovw.c cmovd.c modi.c umodi.c uitof.c uitod.c ulltof.c ulltod.c
11
12# We want fine grained libraries, so use the new code to build the
13# floating point emulation libraries.
14FPBIT = fp-bit.c
15DPBIT = dp-bit.c
16
17# If any special flags are necessary when building libgcc2 put them here.
18TARGET_LIBGCC2_CFLAGS =
19
20fp-bit.c: $(srcdir)/config/fp-bit.c
21	echo '#define FLOAT' > fp-bit.c
22	echo '#include "config/frv/frv-abi.h"' >> fp-bit.c
23	cat $(srcdir)/config/fp-bit.c >> fp-bit.c
24
25dp-bit.c: $(srcdir)/config/fp-bit.c
26	echo '#include "config/frv/frv-abi.h"' > dp-bit.c
27	cat $(srcdir)/config/fp-bit.c >> dp-bit.c
28
29cmovh.c: $(srcdir)/config/frv/cmovh.c
30	$(LN_S) $(srcdir)/config/frv/cmovh.c .
31
32cmovw.c: $(srcdir)/config/frv/cmovw.c
33	$(LN_S) $(srcdir)/config/frv/cmovw.c .
34
35cmovd.c: $(srcdir)/config/frv/cmovd.c
36	$(LN_S) $(srcdir)/config/frv/cmovd.c .
37
38modi.c: $(srcdir)/config/frv/modi.c
39	$(LN_S) $(srcdir)/config/frv/modi.c .
40
41umodi.c: $(srcdir)/config/frv/umodi.c
42	$(LN_S) $(srcdir)/config/frv/umodi.c .
43
44uitof.c: $(srcdir)/config/frv/uitof.c
45	$(LN_S) $(srcdir)/config/frv/uitof.c .
46
47uitod.c: $(srcdir)/config/frv/uitod.c
48	$(LN_S) $(srcdir)/config/frv/uitod.c .
49
50ulltof.c: $(srcdir)/config/frv/ulltof.c
51	$(LN_S) $(srcdir)/config/frv/ulltof.c .
52
53ulltod.c: $(srcdir)/config/frv/ulltod.c
54	$(LN_S) $(srcdir)/config/frv/ulltod.c .
55
56# Build frvbegin.o and frvend.o
57EXTRA_MULTILIB_PARTS=frvbegin.o frvend.o
58
59# Compile two additional files that are linked with every program
60# linked using GCC on systems using COFF or ELF, for the sake of C++
61# constructors.
62
63FRVSTUFF_CFLAGS = $(TARGET_LIBGCC2_CFLAGS)
64
65$(T)frvbegin$(objext): $(srcdir)/config/frv/frvbegin.c $(GCC_PASSES) \
66  $(CONFIG_H) defaults.h unwind-dw2-fde.h gbl-ctors.h
67	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) $(FRVSTUFF_CFLAGS) \
68	  -c $(srcdir)/config/frv/frvbegin.c -o $(T)frvbegin$(objext)
69
70$(T)frvend$(objext): $(srcdir)/config/frv/frvend.c $(GCC_PASSES) \
71  $(CONFIG_H) defaults.h unwind-dw2-fde.h gbl-ctors.h
72	$(GCC_FOR_TARGET) $(GCC_CFLAGS) $(INCLUDES) $(MULTILIB_CFLAGS) $(FRVSTUFF_CFLAGS) \
73	  -c $(srcdir)/config/frv/frvend.c -o $(T)frvend$(objext)
74
75# Enable the following if multilibs are needed.
76# See gcc/genmultilib, gcc/gcc.texi and gcc/tm.texi for a
77# description of the options and their values.
78#
79#MULTILIB_OPTIONS	= mcpu=fr500/mcpu=tomcat/mcpu=simple/mcpu=frv msoft-float mdword/mno-dword
80#MULTILIB_DIRNAMES	= fr500 tomcat simple frv nof dw no-dw
81#MULTILIB_MATCHES	= mcpu?simple=mcpu?fr300 mno-double=mcpu?fr500 mcpu?frv=mdouble
82#MULTILIB_EXCEPTIONS	= *mcpu=simple/*msoft-float* *mcpu=frv/*msoft-float*
83#MULTILIB_EXTRA_OPTS	= mlibrary-pic
84
85MULTILIB_OPTIONS	= mcpu=fr400/mcpu=fr550 mno-pack mlibrary-pic/mfdpic
86MULTILIB_DIRNAMES	= fr400 fr550 unpacked pic fdpic
87MULTILIB_MATCHES	= mcpu?simple=mcpu?fr300 \
88			  mlibrary-pic=multilib-library-pic \
89			  mcpu?fr400=mcpu?fr405 mcpu?fr400=mcpu?fr450
90MULTILIB_EXCEPTIONS	= mcpu=frv/mno-pack* mcpu=simple/mno-pack*
91
92LIBGCC = stmp-multilib
93INSTALL_LIBGCC = install-multilib
94
95EXTRA_HEADERS = $(srcdir)/config/frv/frv-asm.h
96