#
#
-CFLAGS+=-g
-
SHELL = /bin/sh
-AUTOCONF = autoconf
PRJDIR = .
-srcdir = .
-include $(srcdir)/Makefile.common
+
+include $(PRJDIR)/Makefile.common
SDCC_MISC = debugger/mcs51 sim/ucsim
+SDCC_LIBS = support/cpp2 support/makebin
+SDCC_DOC = doc
-SDCC_LIBS = support/cpp support/cpp2
+# Parts that are not normally compiled but need to be cleaned
+SDCC_EXTRA = support/regression
SDCC_ASLINK = as/mcs51 as link
SDCC_PACKIHX = packihx
-TARGETS = sdcc-libs sdcc-cc sdcc-aslink
+TARGETS = sdcc-libs sdcc-cc sdcc-aslink sdcc-doc
-PKGS = $(SDCC_LIBS) src $(SDCC_ASLINK) $(SDCC_PACKIHX)
+PKGS = $(SDCC_LIBS) src $(SDCC_ASLINK) $(SDCC_DOC)
ifneq ($(OPT_ENABLE_UCSIM), no)
TARGETS += sdcc-misc
sdcc-packihx:
$(MAKE) -C $(SDCC_PACKIHX)
-sdcc-device:
+sdcc-device: sdcc-cc sdcc-aslink
$(MAKE) -C device/include
$(MAKE) -C device/lib
$(MAKE) -C device/include
$(MAKE) -C device/lib modelDS390
+# Empty for now, as doc depends on latex and latex2html
+sdcc-doc:
+
sdcc: $(TARGETS)
sdcc-tini: sdcc-cc sdcc-aslink sdcc-device-tini sdcc-packihx
$(MAKE) -f clean.mk clean
@echo "+ Cleaning packages in their directories..."
for pkg in $(PKGS); do\
- $(MAKE) PORTS="$(PORTS)" -C $$pkg clean ;\
+ $(MAKE) PORTS="$(PORTS)" -C $$pkg -f clean.mk clean ;\
done
-
# Deleting all files created by configuring or building the program
# -----------------------------------------------------------------
distclean:
$(MAKE) -f clean.mk distclean
@echo "+ DistCleaning packages using clean.mk..."
for pkg in $(PKGS); do\
- $(MAKE) -C $$pkg -f clean.mk PORTS="$(PORTS)" distclean ;\
+ $(MAKE) -C $$pkg PORTS="$(PORTS)" -f clean.mk distclean ;\
+ done
+ for pkg in $(SDCC_EXTRA); do \
+ $(MAKE) -C $$pkg clean; \
done
-
# Like clean but some files may still exist
# -----------------------------------------