# Dependancies:
# * The sdcc-extra package, available from svn.
-# o svn co https://svn.sourceforge.net/svnroot/sdcc/trunk/sdcc-extra
+# o svn co https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc-extra
# o Provides the emulators
# * The gbdk-lib package from gbdk.
# o cvs -d cvs.gbdk.sourceforge.net:/cvsroot/gbdk co gbdk-lib
# Each directory under ports/ is used as a port name. Each port is tested.
# Each port must have a spec.mk which describes how to build the object
# files and how to run the emulator.
-ALL_PORTS = $(filter-out .svn xa51 z80 gbz80 pic16,$(notdir $(wildcard $(PORTS_DIR)/*)))
+ALL_PORTS = $(filter-out .svn xa51 z80 gbz80 pic16 pic14 mcs51-common,$(notdir $(wildcard $(PORTS_DIR)/*)))
# These ports will be cleaned with 'make clean'
-CLEAN_PORTS = $(filter-out .svn,$(notdir $(wildcard $(PORTS_DIR)/*)))
+CLEAN_PORTS = $(filter-out .svn mcs51-common,$(notdir $(wildcard $(PORTS_DIR)/*)))
MAKE_LIBRARY =
$(MAKE) test-port PORT=gbz80
# Helper rule for testing the mcs51 port only
-test-mcs51:
- $(MAKE) test-port PORT=mcs51
+test-mcs51: test-mcs51-small test-mcs51-medium test-mcs51-large test-mcs51-stack-auto test-mcs51-xstack-auto
+
+test-mcs51-small:
+ $(MAKE) test-port PORT=mcs51-small
test-mcs51-medium:
$(MAKE) test-port PORT=mcs51-medium
test-pic16:
$(MAKE) test-port PORT=pic16
+# Helper rule for testing the pic14 port only(use gpsim simulator)
+test-pic14:
+ $(MAKE) test-port PORT=pic14
+
### Helper rule for testing the host cc only
test-host:
$(MAKE) test-port PORT=host
# Each test generates a result log file
PORT_RESULTS = $(ALL_TESTS:$(TESTS_DIR)/%.c=$(PORT_RESULTS_DIR)/%.out)
-SDCC_EXTRA_DIR = $(top_builddir)../sdcc-extra
+SDCC_EXTRA_DIR = $(top_builddir)/../sdcc-extra
INC_DIR = $(top_srcdir)/device/include
# Defaults. Override in spec.mk if required.
# Path to SDCC
-SDCC = $(top_builddir)bin/sdcc
+SDCC = $(top_builddir)/bin/sdcc
# Base flags.
-SDCCFLAGS += -DNO_VARARGS
+SDCCFLAGS += --fverbose-asm -DNO_VARARGS
# Extension of object intermediate files
OBJEXT = .o
# Extension of files that can be run in the emulator