+++ /dev/null
-#
-#
-#
-
-SHELL = /bin/sh
-
-PRJDIR = .
-
-include $(PRJDIR)/Makefile.common
-
-SDCC_MISC = debugger/mcs51 sim/ucsim
-SDCC_LIBS = support/cpp2 support/makebin
-SDCC_DOC = doc
-
-# Parts that are not normally compiled but need to be cleaned
-SDCC_EXTRA = support/regression
-
-SDCC_ASLINK = as/mcs51 as link as/hc08
-SDCC_PACKIHX = packihx
-SDCC_LIBRARIAN = support/librarian
-
-TARGETS = sdcc-libs sdcc-cc sdcc-aslink sdcc-doc
-
-PKGS = $(SDCC_LIBS) src $(SDCC_ASLINK) $(SDCC_DOC)
-
-ifneq ($(OPT_ENABLE_UCSIM), no)
-TARGETS += sdcc-misc
-PKGS += $(SDCC_MISC)
-endif
-
-ifneq ($(OPT_ENABLE_DEVICE_LIB_BUILD), no)
-TARGETS += sdcc-device
-PKGS += device/include device/lib
-endif
-
-ifneq ($(OPT_ENABLE_PACKIHX), no)
-TARGETS += sdcc-packihx
-PKGS += $(SDCC_PACKIHX)
-endif
-
-TARGETS += sdcc-librarian
-PKGS += $(SDCC_LIBRARIAN)
-
-PKGS_TINI = $(SDCC_LIBS) $(SDCC_ASLINK) \
- src device/include $(SDCC_PACKIHX) $(SDCC_LIBRARIAN)
-PORTS = $(shell cat ports.build)
-ALLPORTS = $(shell cat ports.all)
-
-# Compiling entire program or any subproject
-# ------------------------------------------
-all: checkconf sdcc
-
-tini: checkconf sdcc-tini
-
-sdcc-libs:
- for lib in $(SDCC_LIBS); do $(MAKE) -C $$lib; done
-
-sdcc-cc: sdcc-libs
- $(MAKE) -C src
-
-sdcc-aslink:
- for as in $(SDCC_ASLINK); do $(MAKE) -C $$as; done
-
-sdcc-misc:
- for misc in $(SDCC_MISC); do $(MAKE) -C $$misc; done
-
-sdcc-packihx:
- $(MAKE) -C $(SDCC_PACKIHX)
-
-sdcc-librarian:
- $(MAKE) -C $(SDCC_LIBRARIAN)
-
-sdcc-device: sdcc-cc sdcc-aslink
- $(MAKE) -C device/include
- $(MAKE) -C device/lib
-
-sdcc-device-tini:
- $(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 sdcc-librarian
- $(MAKE) -f main.mk all
-
-# Some interesting sub rules
-sdcc-bin: sdcc-cc sdcc-aslink sdcc-misc
-
-sdcc-base: sdcc-cc sdcc-aslink
-
-# Compiling and installing everything and runing test
-# ---------------------------------------------------
-install:
- $(MAKE) -f main.mk install
- @for pkg in $(PKGS); do\
- $(MAKE) -C $$pkg install ;\
- done
-
-install-tini:
- $(MAKE) -f main.mk install
- @for pkg in $(PKGS_TINI); do\
- $(MAKE) -C $$pkg install ;\
- done
- $(MAKE) -C device/lib installDS390
-
-
-
-# Deleting all the installed files
-# --------------------------------
-uninstall:
- $(MAKE) -f main.mk uninstall
- @for pkg in $(PKGS); do\
- $(MAKE) -C $$pkg uninstall ;\
- done
-
-
-# Deleting all files created by building the program
-# --------------------------------------------------
-clean:
- @echo "+ Cleaning root of the project..."
- $(MAKE) -f clean.mk clean
- @echo "+ Cleaning packages in their directories..."
- for pkg in $(PKGS); do\
- $(MAKE) PORTS="$(PORTS)" EXEEXT=$(EXEEXT) -C $$pkg -f clean.mk clean ;\
- done
-
-# Deleting all files created by configuring or building the program
-# -----------------------------------------------------------------
-distclean:
- @echo "+ DistCleaning root of the project..."
- $(MAKE) -f clean.mk distclean
- @echo "+ DistCleaning packages using clean.mk..."
- for pkg in $(PKGS); do\
- $(MAKE) -C $$pkg PORTS="$(PORTS)" EXEEXT=$(EXEEXT) -f clean.mk distclean ;\
- done
- for pkg in $(SDCC_EXTRA); do \
- $(MAKE) -C $$pkg clean; \
- 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 PORTS="$(PORTS)" EXEEXT=$(EXEEXT) mostlyclean ;\
- done
-
-
-# Deleting everything that can reconstructed by this Makefile. It deletes
-# 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 PORTS="$(PORTS)" EXEEXT=$(EXEEXT) realclean ;\
- done
-
-
-# Creating distribution
-# ---------------------
-dist: distclean
- @if [ -f devel ]; then\
- rm -f devel; mkdist sdcc; touch devel;\
- else\
- mkdist sdcc;\
- fi
-
-
-# Performing self-test
-# --------------------
-check:
-
-
-# Performing installation test
-# ----------------------------
-installcheck:
-
-
-# Creating dependencies
-# ---------------------
-dep:
- $(MAKE) -f main.mk dep
- @for pkg in $(PKGS); do\
- $(MAKE) -C $$pkg dep ;\
- done
-
-
-# My rules
-# --------
-newer: distclean
- @if [ -f start ]; then \
- tar cvf - \
- `find . -newer start -type f -print` |\
- gzip -9c >`date '+%m%d%H%M'`.tgz; \
- else \
- echo "start file not found.\n"; \
- exit 1; \
- fi
-
-putcopyright:
- 'put(c)' -s $(STARTYEAR) *.cc *.h *.y *.l
-
-
-# Remaking configuration
-# ----------------------
-configure: configure.in
- $(SHELL) $(AUTOCONF)
-
-main.mk: $(srcdir)/main_in.mk $(srcdir)/configure.in config.status
- $(SHELL) ./config.status
-
-Makefiles: makefiles
-
-makefiles: config.status
-
-config.status: configure
- $(SHELL) ./config.status --recheck
-
-makefiles:
- $(SHELL) ./config.status
-
-freshconf: main.mk
-
-checkconf:
- @if [ -f devel ]; then\
- $(MAKE) freshconf;\
- fi
-
-# End of Makefile