5e744ef887
Pretty much all targets are using this module already, so add it to the common list of objects. The only oddball out here is cris and that's because it supports loading via an offset for all the phdrs. We drop support for that.
150 lines
6.1 KiB
Makefile
150 lines
6.1 KiB
Makefile
# Makefile template for Configure for the SH64 simulator
|
|
# Copyright (C) 2000-2015 Free Software Foundation, Inc.
|
|
# Contributed by Red Hat, Inc.
|
|
#
|
|
# This program is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
## COMMON_PRE_CONFIG_FRAG
|
|
|
|
SH64_OBJS = sh64.o cpu.o sh-desc.o \
|
|
decode-compact.o sem-compact.o mloop-compact.o \
|
|
decode-media.o sem-media.o mloop-media.o
|
|
|
|
SIM_OBJS = \
|
|
$(SIM_NEW_COMMON_OBJS) \
|
|
cgen-utils.o cgen-trace.o cgen-scache.o \
|
|
cgen-run.o \
|
|
sim-if.o arch.o \
|
|
$(SH64_OBJS)
|
|
|
|
# Extra headers included by sim-main.h.
|
|
SIM_EXTRA_DEPS = \
|
|
$(CGEN_INCLUDE_DEPS) \
|
|
arch.h cpuall.h sh64-sim.h sh-desc.h sh-opc.h
|
|
|
|
SIM_EXTRA_CFLAGS =
|
|
|
|
SIM_EXTRA_CLEAN = sh64-clean
|
|
|
|
## COMMON_POST_CONFIG_FRAG
|
|
|
|
arch = sh
|
|
|
|
sim-if.o: sim-if.c $(SIM_MAIN_DEPS) $(srcdir)/../common/sim-core.h
|
|
|
|
arch.o: arch.c $(SIM_MAIN_DEPS)
|
|
|
|
sh-desc.o: sh-desc.c $(SIM_MAIN_DEPS)
|
|
|
|
devices.o: devices.c $(SIM_MAIN_DEPS)
|
|
|
|
# SH64 objs
|
|
|
|
SH64_INCLUDE_DEPS = \
|
|
$(CGEN_MAIN_CPU_DEPS) \
|
|
cpu.h decode.h \
|
|
decode-compact.h eng-compact.h defs-compact.h \
|
|
decode-media.h eng-media.h defs-media.h
|
|
|
|
sh64.o: sh64.c $(SH64_INCLUDE_DEPS)
|
|
|
|
mloop-compact.o: mloop-compact.c sem-compact-switch.c $(SH64_INCLUDE_DEPS)
|
|
$(CC) -c $(srcdir)/mloop-compact.c $(ALL_CFLAGS) -DWANT_ISA_COMPACT
|
|
|
|
mloop-media.o: mloop-media.c sem-media-switch.c $(SH64_INCLUDE_DEPS)
|
|
$(CC) -c $(srcdir)/mloop-media.c $(ALL_CFLAGS) -DWANT_ISA_MEDIA
|
|
|
|
cpu.o: $(srcdir)/cpu.c $(SH64_INCLUDE_DEPS)
|
|
|
|
decode-compact.o: decode-compact.c $(SH64_INCLUDE_DEPS)
|
|
$(CC) -c $(srcdir)/decode-compact.c $(ALL_CFLAGS) -DWANT_ISA_COMPACT
|
|
|
|
sem-compact.o: sem-compact.c $(SH64_INCLUDE_DEPS)
|
|
$(CC) -c $(srcdir)/sem-compact.c $(ALL_CFLAGS) -DWANT_ISA_COMPACT
|
|
|
|
decode-media.o: decode-media.c $(SH64_INCLUDE_DEPS)
|
|
$(CC) -c $(srcdir)/decode-media.c $(ALL_CFLAGS) -DWANT_ISA_MEDIA
|
|
|
|
sem-media.o: sem-media.c $(SH64_INCLUDE_DEPS)
|
|
$(CC) -c $(srcdir)/sem-media.c $(ALL_CFLAGS) -DWANT_ISA_MEDIA
|
|
|
|
sh64-clean:
|
|
rm -f tmp-*
|
|
rm -f stamp-defs-{compact,media}
|
|
rm -f stamp-arch stamp-desc stamp-cpu stamp-decode-{compact,media}
|
|
|
|
# cgen support, enable with --enable-cgen-maint
|
|
CGEN_MAINT = ; @true
|
|
# The following line is commented in or out depending upon --enable-cgen-maint.
|
|
@CGEN_MAINT@CGEN_MAINT =
|
|
|
|
# Utility rules for humans.
|
|
.PHONY: stamp-all stamp-decode stamp-defs
|
|
stamp-all: stamp-arch stamp-desc stamp-cpu stamp-decode stamp-defs
|
|
stamp-decode: stamp-decode-compact stamp-decode-media
|
|
stamp-defs: stamp-defs-compact stamp-defs-media
|
|
|
|
# NOTE: Generated source files are specified as full paths,
|
|
# e.g. $(srcdir)/arch.c, because make may decide the files live
|
|
# in objdir otherwise.
|
|
|
|
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
|
|
$(MAKE) cgen-arch $(CGEN_FLAGS_TO_PASS) mach=all isa=compact,media archfile=$(CGEN_CPU_DIR)/sh.cpu \
|
|
FLAGS="with-scache"
|
|
touch $@
|
|
$(srcdir)/arch.h $(srcdir)/arch.c $(srcdir)/cpuall.h: $(CGEN_MAINT) stamp-arch
|
|
@true
|
|
|
|
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
|
|
$(MAKE) cgen-desc $(CGEN_FLAGS_TO_PASS) cpu=sh64 mach=all isa=compact,media archfile=$(CGEN_CPU_DIR)/sh.cpu
|
|
touch $@
|
|
$(srcdir)/sh-desc.h $(srcdir)/sh-desc.c $(srcdir)/sh-opc.h: $(CGEN_MAINT) stamp-desc
|
|
@true
|
|
|
|
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
|
|
$(MAKE) cgen-cpu $(CGEN_FLAGS_TO_PASS) \
|
|
cpu=sh64 mach=sh4,sh5 isa=compact,media FLAGS="with-multiple-isa with-scache" archfile=$(CGEN_CPU_DIR)/sh.cpu
|
|
rm -f $(srcdir)/model.c
|
|
touch $@
|
|
$(srcdir)/cpu.h $(srcdir)/cpu.c: $(CGEN_MAINT) stamp-cpu
|
|
@true
|
|
|
|
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
|
|
$(MAKE) cgen-defs $(CGEN_FLAGS_TO_PASS) \
|
|
cpu=sh64 mach=sh5 isa=compact FLAGS="with-scache" SUFFIX="-compact" archfile=$(CGEN_CPU_DIR)/sh.cpu
|
|
touch $@
|
|
$(srcdir)/defs-compact.h: $(CGEN_MAINT) stamp-defs-compact
|
|
@true
|
|
|
|
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
|
|
$(MAKE) cgen-defs $(CGEN_FLAGS_TO_PASS) \
|
|
cpu=sh64 mach=sh5 isa=media FLAGS="with-scache" SUFFIX="-media" archfile=$(CGEN_CPU_DIR)/sh.cpu
|
|
touch $@
|
|
$(srcdir)/defs-media.h: $(CGEN_MAINT) stamp-defs-media
|
|
|
|
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
|
|
$(MAKE) cgen-decode $(CGEN_FLAGS_TO_PASS) \
|
|
cpu=sh64 mach=sh5 isa=compact FLAGS="with-scache" SUFFIX="-compact" EXTRAFILES="$(CGEN_CPU_SEM) $(CGEN_CPU_SEMSW)" \
|
|
archfile=$(CGEN_CPU_DIR)/sh.cpu
|
|
touch $@
|
|
$(srcdir)/sem-compact.c $(srcdir)/sem-compact-switch.c $(srcdir)/decode-compact.c $(srcdir)/decode-compact.h: $(CGEN_MAINT) stamp-decode-compact
|
|
@true
|
|
|
|
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
|
|
$(MAKE) cgen-decode $(CGEN_FLAGS_TO_PASS) \
|
|
cpu=sh64 mach=sh5 isa=media FLAGS="with-scache" SUFFIX="-media" EXTRAFILES="$(CGEN_CPU_SEM) $(CGEN_CPU_SEMSW)" \
|
|
archfile=$(CGEN_CPU_DIR)/sh.cpu
|
|
touch $@
|
|
$(srcdir)/sem-media.c $(srcdir)/sem-media-switch.c $(srcdir)/decode-media.c $(srcdir)/decode-media.h: $(CGEN_MAINT) stamp-decode-media
|
|
@true
|