X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=Makefile;h=029f78c6a815248f6040abe97f1420e209e892b9;hb=3895c1378eea714f02cff7961e6f4ddcae1cfcd2;hp=0b34350ae74a1adb9d06ec4a47f728b019a4326f;hpb=646879b54a5b6a5388fdee6e8091d20e564c2568;p=fw%2Fsdcc diff --git a/Makefile b/Makefile index 0b34350a..029f78c6 100644 --- a/Makefile +++ b/Makefile @@ -2,29 +2,34 @@ # # +CFLAGS+=-g + SHELL = /bin/sh AUTOCONF = autoconf PRJDIR = . -PKGS = debugger/mcs51 sim/ucsim +srcdir = . +include $(srcdir)/Makefile.common + +SDCC_MISC = debugger/mcs51 sim/ucsim SDCC_LIBS = support/cpp SDCC_ASLINK = as/mcs51 as link +SDCC_PACKIHX = packihx -PRJS = sim/ucsim +PKGS = $(SDCC_MISC) $(SDCC_LIBS) $(SDCC_ASLINK) \ + src device/include device/lib $(SDCC_PACKIHX) +PKGS_TINI = $(SDCC_LIBS) $(SDCC_ASLINK) \ + src device/include $(SDCC_PACKIHX) PORTS = mcs51 z80 -srcdir = . # Compiling entire program or any subproject # ------------------------------------------ all: checkconf sdcc +tini: checkconf sdcc-tini + sdcc-libs: -ifeq ($(CROSS_LIBGC),1) - $(MAKE) -C support/gc -f Makefile.cross -else - $(MAKE) -C support/gc -endif for lib in $(SDCC_LIBS); do $(MAKE) -C $$lib; done sdcc-cc: sdcc-libs @@ -34,19 +39,30 @@ sdcc-aslink: for as in $(SDCC_ASLINK); do $(MAKE) -C $$as; done sdcc-misc: - for pkg in $(PKGS); do $(MAKE) -C $$pkg; done - $(MAKE) -C sim/ucsim + for misc in $(SDCC_MISC); do $(MAKE) -C $$misc; done + +sdcc-packihx: + $(MAKE) -C $(SDCC_PACKIHX) sdcc-device: $(MAKE) -C device/include $(MAKE) -C device/lib -sdcc: sdcc-cc sdcc-aslink sdcc-misc sdcc +sdcc-device-tini: + $(MAKE) -C device/include + $(MAKE) -C device/lib modelDS390 + +sdcc: sdcc-cc sdcc-aslink sdcc-misc sdcc-device sdcc-packihx + $(MAKE) -f main.mk all + +sdcc-tini: sdcc-cc sdcc-aslink sdcc-device-tini sdcc-packihx $(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: @@ -55,6 +71,14 @@ install: $(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 # -------------------------------- @@ -74,10 +98,6 @@ clean: for pkg in $(PKGS); do\ $(MAKE) PORTS="$(PORTS)" -C $$pkg clean ;\ done - @echo "+ Cleaning sub-projects using Makefile..." - for prj in $(PRJS); do\ - $(MAKE) -C $$prj clean ;\ - done # Deleting all files created by configuring or building the program @@ -89,10 +109,6 @@ distclean: for pkg in $(PKGS); do\ $(MAKE) -C $$pkg -f clean.mk PORTS="$(PORTS)" distclean ;\ done - @echo "+ DistCleaning sub-projects using Makefile..." - for prj in $(PRJS); do\ - $(MAKE) -C $$prj distclean ;\ - done # Like clean but some files may still exist @@ -102,9 +118,6 @@ mostlyclean: clean for pkg in $(PKGS); do\ $(MAKE) -C $$pkg -f clean.mk PORTS="$(PORTS)" mostlyclean ;\ done - for prj in $(PRJS); do\ - $(MAKE) -C $$prj mostlyclean ;\ - done # Deleting everything that can reconstructed by this Makefile. It deletes @@ -115,9 +128,6 @@ realclean: distclean for pkg in $(PKGS); do\ $(MAKE) -C $$pkg -f clean.mk PORTS="$(PORTS)" realclean ;\ done - for prj in $(PRJS); do\ - $(MAKE) -C $$prj realclean ;\ - done # Creating distribution