1 # Makefile template for Configure for the frv simulator
2 # Copyright (C) 1998-2015 Free Software Foundation, Inc.
3 # Contributed by Red Hat.
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 3 of the License, or
8 # (at your option) any later version.
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program. If not, see <http://www.gnu.org/licenses/>.
18 ## COMMON_PRE_CONFIG_FRAG
20 FRV_OBJS
= frv.o cpu.o decode.o sem.o model.o mloop.o cgen-par.o
23 $(SIM_NEW_COMMON_OBJS
) \
26 cgen-utils.o cgen-trace.o cgen-scache.o cgen-fpu.o cgen-accfp.o \
30 traps.o interrupts.o memory.o cache.o pipeline.o \
31 profile.o profile-fr400.o profile-fr450.o profile-fr500.o profile-fr550.o options.o \
32 devices.o reset.o registers.o
34 # Extra headers included by sim-main.h.
36 $(CGEN_INCLUDE_DEPS
) \
37 arch.h cpuall.h frv-sim.h
$(srcdir)/..
/..
/opcodes
/frv-desc.h cache.h \
38 registers.h profile.h \
41 SIM_EXTRA_CFLAGS
= @sim_trapdump@
43 SIM_EXTRA_CLEAN
= frv-clean
45 # This selects the frv newlib/libgloss syscall definitions.
46 NL_TARGET
= -DNL_TARGET_frv
48 ## COMMON_POST_CONFIG_FRAG
52 arch.o
: arch.c
$(SIM_MAIN_DEPS
)
54 devices.o
: devices.c
$(SIM_MAIN_DEPS
)
58 FRVBF_INCLUDE_DEPS
= \
59 $(CGEN_MAIN_CPU_DEPS
) \
63 frv.o
: frv.c
$(FRVBF_INCLUDE_DEPS
)
64 traps.o
: traps.c
$(FRVBF_INCLUDE_DEPS
)
65 pipeline.o
: pipeline.c
$(FRVBF_INCLUDE_DEPS
)
66 interrupts.o
: interrupts.c
$(FRVBF_INCLUDE_DEPS
)
67 memory.o
: memory.c
$(FRVBF_INCLUDE_DEPS
)
68 cache.o
: cache.c
$(FRVBF_INCLUDE_DEPS
)
69 options.o
: options.c
$(FRVBF_INCLUDE_DEPS
)
70 reset.o
: reset.c
$(FRVBF_INCLUDE_DEPS
)
71 registers.o
: registers.c
$(FRVBF_INCLUDE_DEPS
)
72 profile.o
: profile.c profile-fr400.h profile-fr500.h profile-fr550.h
$(FRVBF_INCLUDE_DEPS
)
73 profile-fr400.o
: profile-fr400.c profile-fr400.h
$(FRVBF_INCLUDE_DEPS
)
74 profile-fr450.o
: profile-fr450.c
$(FRVBF_INCLUDE_DEPS
)
75 profile-fr500.o
: profile-fr500.c profile-fr500.h
$(FRVBF_INCLUDE_DEPS
)
76 profile-fr550.o
: profile-fr550.c profile-fr550.h
$(FRVBF_INCLUDE_DEPS
)
77 sim-if.o
: sim-if.c
$(FRVBF_INCLUDE_DEPS
) $(srcdir)/..
/common
/sim-core.h eng.h
80 # FIXME: Use of `mono' is wip.
81 mloop.c eng.h
: stamp-mloop
82 stamp-mloop
: $(srcdir)/..
/common
/genmloop.sh mloop.in Makefile
83 $(SHELL
) $(srccom
)/genmloop.sh
-shell $(SHELL
) \
84 -mono
-scache
-parallel-generic-write
-parallel-only \
85 -cpu frvbf
-infile
$(srcdir)/mloop.in
86 $(SHELL
) $(srcroot
)/move-if-change eng.hin eng.h
87 $(SHELL
) $(srcroot
)/move-if-change mloop.cin mloop.c
89 mloop.o
: mloop.c
$(FRVBF_INCLUDE_DEPS
)
91 cpu.o
: cpu.c
$(FRVBF_INCLUDE_DEPS
)
92 decode.o
: decode.c
$(FRVBF_INCLUDE_DEPS
)
93 sem.o
: sem.c
$(FRVBF_INCLUDE_DEPS
)
94 model.o
: model.c
$(FRVBF_INCLUDE_DEPS
)
97 rm -f mloop.c eng.h stamp-mloop
99 rm -f stamp-arch stamp-cpu
101 # cgen support, enable with --enable-cgen-maint
103 # The following line is commented in or out depending upon --enable-cgen-maint.
104 @CGEN_MAINT@CGEN_MAINT
=
106 stamp-arch
: $(CGEN_READ_SCM
) $(CGEN_ARCH_SCM
) $(srcdir)/..
/..
/cpu
/frv.cpu
107 $(MAKE
) cgen-arch
$(CGEN_FLAGS_TO_PASS
) mach
=all \
108 archfile
=$(srcdir)/..
/..
/cpu
/frv.cpu \
111 arch.h arch.c cpuall.h
: $(CGEN_MAINT
) stamp-arch
114 stamp-cpu
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_DECODE_SCM
) $(srcdir)/..
/..
/cpu
/frv.cpu
115 $(MAKE
) cgen-cpu-decode
$(CGEN_FLAGS_TO_PASS
) \
116 cpu
=frvbf mach
=frv
,fr550
,fr500
,fr450
,fr400
,tomcat
,simple SUFFIX
= \
117 archfile
=$(srcdir)/..
/..
/cpu
/frv.cpu \
118 FLAGS
="with-scache with-profile=fn with-generic-write with-parallel-only" \
119 EXTRAFILES
="$(CGEN_CPU_SEM)"
121 cpu.h sem.c model.c decode.c decode.h
: $(CGEN_MAINT
) stamp-cpu