SIM_CFLAGS = @sim_cflags@
SIM_DEBUG = @sim_debug@
SIM_TRACE = @sim_trace@
-
+SIM_PROFILE = @sim_profile@
HDEFINES = @HDEFINES@
TDEFINES =
## COMMON_POST_CONFIG_FRAG
-CONFIG_CFLAGS = @DEFS@ $(SIM_CFLAGS) $(SIM_DEBUG) $(SIM_TRACE) $(SIM_BSWAP) \
- $(SIM_EXTRA_CFLAGS) $(HDEFINES) $(TDEFINES)
+CONFIG_CFLAGS = @DEFS@ $(SIM_CFLAGS) $(SIM_DEBUG) $(SIM_TRACE) $(SIM_PROFILE) \
+ $(SIM_BSWAP) $(SIM_EXTRA_CFLAGS) $(HDEFINES) $(TDEFINES)
CSEARCH = -I. -I$(srcdir) -I../common -I$(srcdir)/../common \
-I../../include -I$(srcroot)/include \
-I../../bfd -I$(srcroot)/bfd \
libsim.a: $(LIB_OBJS)
rm -f libsim.a
- $(AR) $(ARFLAGS) libsim.a $(LIB_OBJS)
+ $(AR) $(AR_FLAGS) libsim.a $(LIB_OBJS)
$(RANLIB) libsim.a
run: $(SIM_RUN_OBJS) libsim.a $(LIBDEPS)
$(srcdir)/../common/sim-config.h \
$(srcdir)/../common/sim-base.h \
$(srcdir)/../common/sim-basics.h \
+ $(srcdir)/../common/sim-memopt.h \
+ $(srcdir)/../common/sim-model.h \
+ $(srcdir)/../common/sim-module.h \
$(srcdir)/../common/sim-trace.h \
+ $(srcdir)/../common/sim-profile.h \
+ $(srcdir)/../common/sim-engine.h \
+ $(srcdir)/../common/sim-events.h \
+ $(srcdir)/../common/sim-watch.h \
+ $(srcdir)/../common/sim-assert.h \
tconfig.h
sim-assert_h = $(srcdir)/../common/sim-assert.h
sim-n-bits_h = $(srcdir)/../common/sim-n-bits.h
sim-core_h = $(srcdir)/../common/sim-core.h
sim-n-core_h = $(srcdir)/../common/sim-n-core.h
+sim-engine_h = $(srcdir)/../common/sim-engine.h
sim-events_h = $(srcdir)/../common/sim-events.h
+sim-fpu_h = $(srcdir)/../common/sim-fpu.h
sim-io_h = $(srcdir)/../common/sim-io.h
-sim-n-io_h = $(srcdir)/../common/sim-n-io.h
+sim-options_h = $(srcdir)/../common/sim-options.h
# FIXME: If this complicated way of building .o files from ../common is
-# necessary, the reason should be documented here!
+# necessary, the reason should be documented here.
BUILT_SRC_FROM_COMMON= \
sim-endian.c \
sim-config.c \
sim-io.c
-sim-bits.o: sim-bits.c $(sim-bits_h) $(sim-n-bits_h) $(sim-assert_h) \
+sim-abort.o: $(srcdir)/../common/sim-abort.c \
$(SIM_EXTRA_DEPS)
-sim-bits.c: $(srcdir)/../common/sim-bits.c
- rm -f $@ tmp-$@
- echo "# 1 \"$(srcdir)/../common/$@\"" > tmp-$@
- cat $(srcdir)/../common/$@ >> tmp-$@
- $(srcdir)/../../move-if-change tmp-$@ $@
+ $(CC) -c $(srcdir)/../common/sim-abort.c $(ALL_CFLAGS)
-sim-config.o: sim-config.c $(sim-config_h) $(sim-nconfig_h) $(sim-assert_h) \
+sim-bits.o: $(srcdir)/../common/sim-bits.c $(sim-bits_h) $(sim-n-bits_h) \
$(SIM_EXTRA_DEPS)
-sim-config.c: $(srcdir)/../common/sim-config.c
- rm -f $@ tmp-$@
- echo "# 1 \"$(srcdir)/../common/$@\"" > tmp-$@
- cat $(srcdir)/../common/$@ >> tmp-$@
- $(srcdir)/../../move-if-change tmp-$@ $@
+ $(CC) -c $(srcdir)/../common/sim-bits.c $(ALL_CFLAGS)
-sim-core.o: sim-core.c $(sim-core_h) $(sim-n-core_h) \
+sim-config.o: $(srcdir)/../common/sim-config.c $(sim-config_h) $(sim-nconfig_h) \
$(SIM_EXTRA_DEPS)
-sim-core.c: $(srcdir)/../common/sim-core.c
- rm -f $@ tmp-$@
- echo "# 1 \"$(srcdir)/../common/$@\"" > tmp-$@
- cat $(srcdir)/../common/$@ >> tmp-$@
- $(srcdir)/../../move-if-change tmp-$@ $@
+ $(CC) -c $(srcdir)/../common/sim-config.c $(ALL_CFLAGS)
-sim-endian.o: sim-endian.c $(sim-endian_h) $(sim-n-endian_h) $(sim-assert_h) \
+sim-core.o: $(srcdir)/../common/sim-core.c $(sim-core_h) $(sim-n-core_h) \
$(SIM_EXTRA_DEPS)
-sim-endian.c: $(srcdir)/../common/sim-endian.c
- rm -f $@ tmp-$@
- echo "# 1 \"$(srcdir)/../common/$@\"" > tmp-$@
- cat $(srcdir)/../common/$@ >> tmp-$@
- $(srcdir)/../../move-if-change tmp-$@ $@
+ $(CC) -c $(srcdir)/../common/sim-core.c $(ALL_CFLAGS)
-sim-events.o: sim-events.c $(sim-events_h) $(sim-assert_h) \
+sim-endian.o: $(srcdir)/../common/sim-endian.c $(sim-endian_h) $(sim-n-endian_h) \
$(SIM_EXTRA_DEPS)
-sim-events.c: $(srcdir)/../common/sim-events.c
- rm -f $@ tmp-$@
- echo "# 1 \"$(srcdir)/../common/$@\"" > tmp-$@
- cat $(srcdir)/../common/$@ >> tmp-$@
- $(srcdir)/../../move-if-change tmp-$@ $@
+ $(CC) -c $(srcdir)/../common/sim-endian.c $(ALL_CFLAGS)
+
+sim-engine.o: $(srcdir)/../common/sim-engine.c $(sim_main_headers) $(sim-engine_h) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-engine.c $(ALL_CFLAGS)
+
+sim-events.o: $(srcdir)/../common/sim-events.c $(sim-events_h) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-events.c $(ALL_CFLAGS)
+
+sim-fpu.o: $(srcdir)/../common/sim-fpu.c $(sim-fpu_h) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-fpu.c $(ALL_CFLAGS)
+
+sim-hload.o: $(srcdir)/../common/sim-hload.c $(sim-assert_h) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-hload.c $(ALL_CFLAGS)
sim-inline.c: $(srcdir)/../common/sim-inline.c
rm -f $@ tmp-$@
cat $(srcdir)/../common/$@ >> tmp-$@
$(srcdir)/../../move-if-change tmp-$@ $@
-sim-io.o: sim-io.c $(sim_main_headers) $(sim-io_h) $(sim-assert_h) \
+sim-io.o: $(srcdir)/../common/sim-io.c $(sim_main_headers) $(sim-io_h) \
$(SIM_EXTRA_DEPS)
-sim-io.c: $(srcdir)/../common/sim-io.c
- rm -f $@ tmp-$@
- echo "# 1 \"$(srcdir)/../common/$@\"" > tmp-$@
- cat $(srcdir)/../common/$@ >> tmp-$@
- $(srcdir)/../../move-if-change tmp-$@ $@
+ $(CC) -c $(srcdir)/../common/sim-io.c $(ALL_CFLAGS)
+
+sim-memopt.o: $(srcdir)/../common/sim-memopt.c $(sim_main_headers) \
+ $(sim-io_h) $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-memopt.c $(ALL_CFLAGS)
+
+sim-module.o: $(srcdir)/../common/sim-module.c $(sim_main_headers) \
+ $(sim-io_h) $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-module.c $(ALL_CFLAGS)
-sim-options.o: $(srcdir)/../common/sim-options.c $(sim_headers) \
- $(srcdir)/../common/sim-options.h
+sim-options.o: $(srcdir)/../common/sim-options.c $(sim_main_headers) \
+ $(sim-options_h) $(sim-io_h) $(SIM_EXTRA_DEPS)
$(CC) -c $(srcdir)/../common/sim-options.c $(ALL_CFLAGS)
-sim-utils.o: $(srcdir)/../common/sim-utils.c $(sim_main_headers) \
+sim-reason.o: $(srcdir)/../common/sim-reason.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-reason.c $(ALL_CFLAGS)
+
+sim-resume.o: $(srcdir)/../common/sim-resume.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-resume.c $(ALL_CFLAGS)
+
+sim-run.o: $(srcdir)/../common/sim-run.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-run.c $(ALL_CFLAGS)
+
+sim-stop.o: $(srcdir)/../common/sim-stop.c $(sim_main_headers) \
$(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-stop.c $(ALL_CFLAGS)
+
+sim-trace.o: $(srcdir)/../common/sim-trace.c $(sim_main_headers) \
+ $(sim-options_h) $(sim-io_h) $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-trace.c $(ALL_CFLAGS)
+
+sim-profile.o: $(srcdir)/../common/sim-profile.c $(sim_main_headers) \
+ $(sim-options_h) $(sim-io_h) $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-profile.c $(ALL_CFLAGS)
+
+sim-model.o: $(srcdir)/../common/sim-model.c $(sim_main_headers) \
+ $(sim-io_h) $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-model.c $(ALL_CFLAGS)
+
+sim-utils.o: $(srcdir)/../common/sim-utils.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS)
$(CC) -c $(srcdir)/../common/sim-utils.c $(ALL_CFLAGS)
+sim-watch.o: $(srcdir)/../common/sim-watch.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/sim-watch.c $(ALL_CFLAGS)
+
sim-load.o: $(srcdir)/../common/sim-load.c
$(CC) -c $(srcdir)/../common/sim-load.c $(ALL_CFLAGS)
+nrun.o: $(srcdir)/../common/nrun.c config.h tconfig.h \
+ $(srcroot)/include/callback.h $(sim_main_headers)
+ $(CC) -c $(srcdir)/../common/nrun.c $(ALL_CFLAGS)
+
+# CGEN support.
+
+cgen-run.o: $(srcdir)/../common/cgen-run.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS)
+ $(CC) -c $(srcdir)/../common/cgen-run.c $(ALL_CFLAGS)
+
+cgen-scache.o: $(srcdir)/../common/cgen-scache.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS) $(srcdir)/../common/cgen-scache.h
+ $(CC) -c $(srcdir)/../common/cgen-scache.c $(ALL_CFLAGS)
+
+cgen-trace.o: $(srcdir)/../common/cgen-trace.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS) $(srcdir)/../common/cgen-trace.h
+ $(CC) -c $(srcdir)/../common/cgen-trace.c $(ALL_CFLAGS)
+
+cgen-utils.o: $(srcdir)/../common/cgen-utils.c $(sim_main_headers) \
+ $(SIM_EXTRA_DEPS) mem-ops.h sem-ops.h
+ $(CC) -c $(srcdir)/../common/cgen-utils.c $(ALL_CFLAGS)
+
+# Support targets.
install: install-common $(SIM_EXTRA_INSTALL)
tags etags: TAGS
TAGS: force
- etags *.c *.h
+ etags --regex '/^\/[*] TAGS: .*/' *.c *.h
clean: $(SIM_EXTRA_CLEAN)
rm -f *.[oa] *~ core
distclean mostlyclean maintainer-clean realclean: clean
rm -f TAGS
- rm -f Makefile config.cache config.log config.status
+ rm -f Makefile config.cache config.log config.status .gdbinit
rm -f tconfig.h config.h stamp-h
+ rm -f targ-vals.def
.c.o:
$(CC) -c $(ALL_CFLAGS) $<
stamp-h: config.in config.status
CONFIG_FILES= CONFIG_HEADERS=config.h:config.in $(SHELL) ./config.status
+.gdbinit: config.status $(srcdir)/../common/gdbinit.in
+ CONFIG_FILES=$@:../common/gdbinit.in CONFIG_HEADERS= $(SHELL) ./config.status
+
## End COMMON_POST_CONFIG_FRAG