SHELL = /bin/sh
PRJDIR = .
-PKGS = cmd.src sim.src gui.src s51.src avr.src z80.src doc
+include packages.mk
+#PKGS = cmd.src sim.src gui.src s51.src avr.src z80.src doc
srcdir = .
# Deleting all files created by building the program
# --------------------------------------------------
clean:
- rm -f *core *[%~] *.[oa] *.so ucsim
- rm -f .[a-z]*~
+ $(MAKE) -f clean.mk clean EXEEXT=$(EXEEXT)
@for pkg in $(PKGS); do\
- $(MAKE) -C $$pkg -f clean.mk clean ;\
+ $(MAKE) -C $$pkg -f clean.mk clean EXEEXT=$(EXEEXT) ;\
done
# Deleting all files created by configuring or building the program
# -----------------------------------------------------------------
distclean: clean
- rm -f config.cache config.log config.status
- rm -f ddconfig.h main.mk *.dep
+ $(MAKE) -f clean.mk distclean
@for pkg in $(PKGS); do\
$(MAKE) -C $$pkg -f clean.mk distclean ;\
done
# Like clean but some files may still exist
# -----------------------------------------
mostlyclean: clean
+ $(MAKE) -f clean.mk mostlyclean
@for pkg in $(PKGS); do\
$(MAKE) -C $$pkg -f clean.mk mostlyclean ;\
done
# everything deleted by distclean plus files created by bison, stc.
# -----------------------------------------------------------------------
realclean: distclean
+ $(MAKE) -f clean.mk realclean
@for pkg in $(PKGS); do\
$(MAKE) -C $$pkg -f clean.mk realclean ;\
done
# ---------------------
dist: distclean
@if [ -f devel ]; then\
- rm -f devel; mkdist ucsim; touch devel;\
+ rm -f devel; mkdist; touch devel;\
else\
- mkdist ucsim;\
+ mkdist;\
fi
# Performing self-test
# --------------------
check:
+ $(MAKE) -f main.mk check
+ @for pkg in $(PKGS); do\
+ $(MAKE) -C $$pkg check ;\
+ done
+
+test:
+ $(MAKE) -f main.mk test
+ @for pkg in $(PKGS); do\
+ $(MAKE) -C $$pkg test ;\
+ done
# Performing installation test
# Remaking configuration
# ----------------------
configure: configure.in
- @echo "RE-CREATING CONFIGURE"
- $(SHELL) autoconf configure.in >configure
+ @$(PRJDIR)/mkecho $(PRJDIR) "RE-CREATING CONFIGURE"
+ autoconf configure.in >configure
chmod 755 configure
config.status: configure
- @echo "RE-CHECKING CONFIGURATION"
- ./config.status -recheck
+ @$(PRJDIR)/mkecho $(PRJDIR) "RE-CHECKING CONFIGURATION (re-creating config.status from configure)"
+ @if [ -x ./config.status ]; then \
+ ./config.status -recheck;\
+ else\
+ if [ -x ./conf ]; then\
+ ./conf;\
+ else\
+ ./configure;\
+ fi\
+ fi
makefiles: config.status
- @echo "RE-MAKING MAKEFILES"
+ @$(PRJDIR)/mkecho $(PRJDIR) "RE-MAKING MAKEFILES"
$(SHELL) ./config.status
-main.mk: $(srcdir)/main_in.mk $(srcdir)/configure.in
- @echo "RE-MAKING MAIN.MK"
+main.mk: $(srcdir)/main_in.mk config.status
+ @$(PRJDIR)/mkecho $(PRJDIR) "RE-MAKING MAIN.MK"
$(SHELL) ./config.status
-freshconf: echo_freshconf configure main.mk
+freshconf: echo_freshconf configure main.mk ddconfig.h
+
+ddconfig.h: ddconfig_in.h config.status
+ $(SHELL) ./config.status
echo_freshconf:
- @echo "FRESHCONF"
+ @$(PRJDIR)/mkecho $(PRJDIR) "FRESHCONF"
checkconf:
+ @$(PRJDIR)/mkecho $(PRJDIR) "CHECKCONF"
@if [ -f devel ]; then $(MAKE) freshconf; fi
# End of Makefile