1 # Makefile template for Configure for the SH64 simulator
2 # Copyright (C) 2000-2020 Free Software Foundation, Inc.
3 # Contributed by Red Hat, Inc.
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 SH64_OBJS
= sh64.o cpu.o sh-desc.o \
21 decode-compact.o sem-compact.o mloop-compact.o \
22 decode-media.o sem-media.o mloop-media.o
25 $(SIM_NEW_COMMON_OBJS
) \
26 cgen-utils.o cgen-trace.o cgen-scache.o \
31 # Extra headers included by sim-main.h.
33 $(CGEN_INCLUDE_DEPS
) \
34 arch.h cpuall.h sh64-sim.h sh-desc.h sh-opc.h
38 SIM_EXTRA_CLEAN
= sh64-clean
40 ## COMMON_POST_CONFIG_FRAG
44 sim-if.o
: sim-if.c
$(SIM_MAIN_DEPS
) $(srcdir)/..
/common
/sim-core.h
46 arch.o
: arch.c
$(SIM_MAIN_DEPS
)
48 sh-desc.o
: sh-desc.c
$(SIM_MAIN_DEPS
)
50 devices.o
: devices.c
$(SIM_MAIN_DEPS
)
55 $(CGEN_MAIN_CPU_DEPS
) \
57 decode-compact.h eng-compact.h defs-compact.h \
58 decode-media.h eng-media.h defs-media.h
60 sh64.o
: sh64.c
$(SH64_INCLUDE_DEPS
)
62 mloop-compact.o
: mloop-compact.c sem-compact-switch.c
$(SH64_INCLUDE_DEPS
)
63 $(CC
) -c
$(srcdir)/mloop-compact.c
$(ALL_CFLAGS
) -DWANT_ISA_COMPACT
65 mloop-media.o
: mloop-media.c sem-media-switch.c
$(SH64_INCLUDE_DEPS
)
66 $(CC
) -c
$(srcdir)/mloop-media.c
$(ALL_CFLAGS
) -DWANT_ISA_MEDIA
68 cpu.o
: $(srcdir)/cpu.c
$(SH64_INCLUDE_DEPS
)
70 decode-compact.o
: decode-compact.c
$(SH64_INCLUDE_DEPS
)
71 $(CC
) -c
$(srcdir)/decode-compact.c
$(ALL_CFLAGS
) -DWANT_ISA_COMPACT
73 sem-compact.o
: sem-compact.c
$(SH64_INCLUDE_DEPS
)
74 $(CC
) -c
$(srcdir)/sem-compact.c
$(ALL_CFLAGS
) -DWANT_ISA_COMPACT
76 decode-media.o
: decode-media.c
$(SH64_INCLUDE_DEPS
)
77 $(CC
) -c
$(srcdir)/decode-media.c
$(ALL_CFLAGS
) -DWANT_ISA_MEDIA
79 sem-media.o
: sem-media.c
$(SH64_INCLUDE_DEPS
)
80 $(CC
) -c
$(srcdir)/sem-media.c
$(ALL_CFLAGS
) -DWANT_ISA_MEDIA
84 rm -f stamp-defs-
{compact
,media
}
85 rm -f stamp-arch stamp-desc stamp-cpu stamp-decode-
{compact
,media
}
87 # cgen support, enable with --enable-cgen-maint
89 # The following line is commented in or out depending upon --enable-cgen-maint.
90 @CGEN_MAINT@CGEN_MAINT
=
92 # Utility rules for humans.
93 .PHONY
: stamp-all stamp-decode stamp-defs
94 stamp-all
: stamp-arch stamp-desc stamp-cpu stamp-decode stamp-defs
95 stamp-decode
: stamp-decode-compact stamp-decode-media
96 stamp-defs
: stamp-defs-compact stamp-defs-media
98 # NOTE: Generated source files are specified as full paths,
99 # e.g. $(srcdir)/arch.c, because make may decide the files live
100 # in objdir otherwise.
102 stamp-arch
: $(CGEN_READ_SCM
) $(CGEN_ARCH_SCM
) $(CGEN_CPU_DIR
)/sh.cpu
$(CGEN_CPU_DIR
)/sh.opc
$(CGEN_CPU_DIR
)/sh64-media.cpu
$(CGEN_CPU_DIR
)/sh64-compact.cpu
$(CGEN_CPU_DIR
)/sh-sim.cpu Makefile
103 $(MAKE
) cgen-arch
$(CGEN_FLAGS_TO_PASS
) mach
=all isa
=compact
,media archfile
=$(CGEN_CPU_DIR
)/sh.cpu \
106 $(srcdir)/arch.h
$(srcdir)/arch.c
$(srcdir)/cpuall.h
: $(CGEN_MAINT
) stamp-arch
109 stamp-desc
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_CPU_DIR
)/sh.cpu
$(CGEN_CPU_DIR
)/sh.opc
$(CGEN_CPU_DIR
)/sh64-compact.cpu
$(CGEN_CPU_DIR
)/sh64-media.cpu
$(CGEN_CPU_DIR
)/sh-sim.cpu Makefile
110 $(MAKE
) cgen-desc
$(CGEN_FLAGS_TO_PASS
) cpu
=sh64 mach
=all isa
=compact
,media archfile
=$(CGEN_CPU_DIR
)/sh.cpu
112 $(srcdir)/sh-desc.h
$(srcdir)/sh-desc.c
$(srcdir)/sh-opc.h
: $(CGEN_MAINT
) stamp-desc
115 stamp-cpu
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_CPU_DIR
)/sh.cpu
$(CGEN_CPU_DIR
)/sh.opc
$(CGEN_CPU_DIR
)/sh64-compact.cpu
$(CGEN_CPU_DIR
)/sh64-media.cpu
$(CGEN_CPU_DIR
)/sh-sim.cpu Makefile
116 $(MAKE
) cgen-cpu
$(CGEN_FLAGS_TO_PASS
) \
117 cpu
=sh64 mach
=sh4
,sh5 isa
=compact
,media FLAGS
="with-multiple-isa with-scache" archfile
=$(CGEN_CPU_DIR
)/sh.cpu
118 rm -f
$(srcdir)/model.c
120 $(srcdir)/cpu.h
$(srcdir)/cpu.c
: $(CGEN_MAINT
) stamp-cpu
123 stamp-defs-compact
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_CPU_DIR
)/sh.cpu
$(CGEN_CPU_DIR
)/sh.opc
$(CGEN_CPU_DIR
)/sh64-compact.cpu
$(CGEN_CPU_DIR
)/sh-sim.cpu Makefile
124 $(MAKE
) cgen-defs
$(CGEN_FLAGS_TO_PASS
) \
125 cpu
=sh64 mach
=sh5 isa
=compact FLAGS
="with-scache" SUFFIX
="-compact" archfile
=$(CGEN_CPU_DIR
)/sh.cpu
127 $(srcdir)/defs-compact.h
: $(CGEN_MAINT
) stamp-defs-compact
130 stamp-defs-media
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_CPU_DIR
)/sh.cpu
$(CGEN_CPU_DIR
)/sh.opc
$(CGEN_CPU_DIR
)/sh64-media.cpu
$(CGEN_CPU_DIR
)/sh-sim.cpu Makefile
131 $(MAKE
) cgen-defs
$(CGEN_FLAGS_TO_PASS
) \
132 cpu
=sh64 mach
=sh5 isa
=media FLAGS
="with-scache" SUFFIX
="-media" archfile
=$(CGEN_CPU_DIR
)/sh.cpu
134 $(srcdir)/defs-media.h
: $(CGEN_MAINT
) stamp-defs-media
136 stamp-decode-compact
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_DECODE_SCM
) $(CGEN_CPU_DIR
)/sh.cpu
$(CGEN_CPU_DIR
)/sh.opc
$(CGEN_CPU_DIR
)/sh64-compact.cpu
$(CGEN_CPU_DIR
)/sh-sim.cpu Makefile
137 $(MAKE
) cgen-decode
$(CGEN_FLAGS_TO_PASS
) \
138 cpu
=sh64 mach
=sh5 isa
=compact FLAGS
="with-scache" SUFFIX
="-compact" EXTRAFILES
="$(CGEN_CPU_SEM) $(CGEN_CPU_SEMSW)" \
139 archfile
=$(CGEN_CPU_DIR
)/sh.cpu
141 $(srcdir)/sem-compact.c
$(srcdir)/sem-compact-switch.c
$(srcdir)/decode-compact.c
$(srcdir)/decode-compact.h
: $(CGEN_MAINT
) stamp-decode-compact
144 stamp-decode-media
: $(CGEN_READ_SCM
) $(CGEN_CPU_SCM
) $(CGEN_DECODE_SCM
) $(CGEN_CPU_DIR
)/sh.cpu
$(CGEN_CPU_DIR
)/sh.opc
$(CGEN_CPU_DIR
)/sh64-media.cpu
$(CGEN_CPU_DIR
)/sh-sim.cpu Makefile
145 $(MAKE
) cgen-decode
$(CGEN_FLAGS_TO_PASS
) \
146 cpu
=sh64 mach
=sh5 isa
=media FLAGS
="with-scache" SUFFIX
="-media" EXTRAFILES
="$(CGEN_CPU_SEM) $(CGEN_CPU_SEMSW)" \
147 archfile
=$(CGEN_CPU_DIR
)/sh.cpu
149 $(srcdir)/sem-media.c
$(srcdir)/sem-media-switch.c
$(srcdir)/decode-media.c
$(srcdir)/decode-media.h
: $(CGEN_MAINT
) stamp-decode-media