1 # Makefile template for Configure for the frv simulator
2 # Copyright (C) 1998, 1999, 2000, 2001, 2003, 2007, 2008, 2009, 2010, 2011
3 # Free Software Foundation, Inc.
4 # Contributed by Red Hat.
6 # This program is free software; you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation; either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
19 ## COMMON_PRE_CONFIG_FRAG
21 FRV_OBJS
= frv.o cpu.o decode.o sem.o model.o mloop.o cgen-par.o
23 CONFIG_DEVICES
= dv-sockser.o
27 $(SIM_NEW_COMMON_OBJS
) \
33 cgen-utils.o cgen-trace.o cgen-scache.o cgen-fpu.o cgen-accfp.o \
34 cgen-run.o sim-reason.o sim-engine.o sim-stop.o \
37 traps.o interrupts.o memory.o cache.o pipeline.o \
38 profile.o profile-fr400.o profile-fr450.o profile-fr500.o profile-fr550.o options.o \
39 devices.o reset.o registers.o \
42 # Extra headers included by sim-main.h.
44 $(CGEN_INCLUDE_DEPS
) \
45 arch.h cpuall.h frv-sim.h
$(srcdir)/..
/..
/opcodes
/frv-desc.h cache.h \
46 registers.h profile.h \
49 SIM_EXTRA_CFLAGS
= @sim_trapdump@
52 SIM_EXTRA_CLEAN
= frv-clean
54 # This selects the frv newlib/libgloss syscall definitions.
55 NL_TARGET
= -DNL_TARGET_frv
57 ## COMMON_POST_CONFIG_FRAG
61 arch.o
: arch.c
$(SIM_MAIN_DEPS
)
63 devices.o
: devices.c
$(SIM_MAIN_DEPS
)
67 FRVBF_INCLUDE_DEPS
= \
68 $(CGEN_MAIN_CPU_DEPS
) \
72 frv.o
: frv.c
$(FRVBF_INCLUDE_DEPS
)
73 traps.o
: traps.c
$(FRVBF_INCLUDE_DEPS
)
74 pipeline.o
: pipeline.c
$(FRVBF_INCLUDE_DEPS
)
75 interrupts.o
: interrupts.c
$(FRVBF_INCLUDE_DEPS
)
76 memory.o
: memory.c
$(FRVBF_INCLUDE_DEPS
)
77 cache.o
: cache.c
$(FRVBF_INCLUDE_DEPS
)
78 options.o
: options.c
$(FRVBF_INCLUDE_DEPS
)
79 reset.o
: reset.c
$(FRVBF_INCLUDE_DEPS
)
80 registers.o
: registers.c
$(FRVBF_INCLUDE_DEPS
)
81 profile.o
: profile.c profile-fr400.h profile-fr500.h profile-fr550.h
$(FRVBF_INCLUDE_DEPS
)
82 profile-fr400.o
: profile-fr400.c profile-fr400.h
$(FRVBF_INCLUDE_DEPS
)
83 profile-fr450.o
: profile-fr450.c
$(FRVBF_INCLUDE_DEPS
)
84 profile-fr500.o
: profile-fr500.c profile-fr500.h
$(FRVBF_INCLUDE_DEPS
)
85 profile-fr550.o
: profile-fr550.c profile-fr550.h
$(FRVBF_INCLUDE_DEPS
)
86 sim-if.o
: sim-if.c
$(FRVBF_INCLUDE_DEPS
) $(srcdir)/..
/common
/sim-core.h eng.h
89 # FIXME: Use of `mono' is wip.
90 mloop.c eng.h
: stamp-mloop
91 stamp-mloop
: $(srcdir)/..
/common
/genmloop.sh mloop.in Makefile
92 $(SHELL
) $(srccom
)/genmloop.sh
-shell $(SHELL
) \
93 -mono
-scache
-parallel-generic-write
-parallel-only \
94 -cpu frvbf
-infile
$(srcdir)/mloop.in
95 $(SHELL
) $(srcroot
)/move-if-change eng.hin eng.h
96 $(SHELL
) $(srcroot
)/move-if-change mloop.cin mloop.c
98 mloop.o
: mloop.c
$(FRVBF_INCLUDE_DEPS
)
100 cpu.o
: cpu.c
$(FRVBF_INCLUDE_DEPS
)
101 decode.o
: decode.c
$(FRVBF_INCLUDE_DEPS
)
102 sem.o
: sem.c
$(FRVBF_INCLUDE_DEPS
)
103 model.o
: model.c
$(FRVBF_INCLUDE_DEPS
)
106 rm -f mloop.c eng.h stamp-mloop
108 rm -f stamp-arch stamp-cpu
110 # cgen support, enable with --enable-cgen-maint
112 # The following line is commented in or out depending upon --enable-cgen-maint.
113 @CGEN_MAINT@CGEN_MAINT
=
115 stamp-arch
: $(CGEN_READ_SCM
) $(CGEN_ARCH_SCM
) $(srcdir)/..
/..
/cpu
/frv.cpu
116 $(MAKE
) cgen-arch
$(CGEN_FLAGS_TO_PASS
) mach
=all \
117 archfile
=$(srcdir)/..
/..
/cpu
/frv.cpu \
120 arch.h arch.c cpuall.h
: $(CGEN_MAINT
) stamp-arch
123 stamp-cpu
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_DECODE_SCM
) $(srcdir)/..
/..
/cpu
/frv.cpu
124 $(MAKE
) cgen-cpu-decode
$(CGEN_FLAGS_TO_PASS
) \
125 cpu
=frvbf mach
=frv
,fr550
,fr500
,fr450
,fr400
,tomcat
,simple SUFFIX
= \
126 archfile
=$(srcdir)/..
/..
/cpu
/frv.cpu \
127 FLAGS
="with-scache with-profile=fn with-generic-write with-parallel-only" \
128 EXTRAFILES
="$(CGEN_CPU_SEM)"
130 cpu.h sem.c model.c decode.c decode.h
: $(CGEN_MAINT
) stamp-cpu