INSTALL = @INSTALL@
CP = @CP@
-ifeq ($(shell uname -s),SunOS)
-CP_U = $(CP)
-else
+ifeq ($(shell uname -s),Linux)
CP_U = $(CP) -u
+else
+CP_U = $(CP)
endif
PRJDIR = ../..
# Compiling entire program or any subproject
# ------------------------------------------
-all: checkconf models model-ds390 model-ds400 model-z80 model-gbz80 model-hc08 model-pic16
+all: checkconf models model-ds390 model-ds400 model-z80 model-gbz80 model-hc08 model-pic16 model-pic14
objects: build-dir $(OBJECTS) port-specific-objects lib-files clean_intermediate
objects-pic16: build-dir port-specific-objects-pic16 clean_intermediate-pic16
cd $(PORTDIR); ls *$(OEXT) > $(PORT).lib
+# yes, we do reuse the *-pic16 rules for pic14
+model-pic14:
+ if [ "`grep pic ../../ports.build | grep -v pic16`" = pic ]; then \
+ $(MAKE) MODELFLAGS="-mpic14" PORT=pic OEXT=.lib objects-pic16; \
+ fi
build-dir: $(PORTDIR)
# ---------------------------------------------------
install: all installdirs
$(CP_U) -r $(BUILDDIR)/* $(sdcc_libdir)
- $(CP_U) -r ds390 ds400 gbz80 z80 hc08 *.c $(sdcc_libdir)/src
- rm -r `find $(sdcc_libdir)/src -name '*.rel' -or -name '*.dump*' -or -name '*.sym' -or -name '*.o' -or -name '*.lst' -or -name '*.asm' -or -name 'CVS'`
+ $(CP_U) -r ds390 ds400 mcs51 small medium large gbz80 z80 hc08 pic pic16 *.c $(sdcc_libdir)/src
+ find $(sdcc_libdir)/src -name '*.rel' -o -name '*.dump*' -o -name '*.sym' -o -name '*.o' -o -name '*.lst' -o -name '*.asm' -o -name 'CVS' -exec rm -f {} \;
# Deleting all the installed files
# --------------------------------
[ -d $(sdcc_libdir)/ds400 ] || mkdir -p $(sdcc_libdir)/ds400
[ -d $(sdcc_libdir)/hc08 ] || mkdir -p $(sdcc_libdir)/hc08
[ -d $(sdcc_libdir)/pic16 ] || mkdir -p $(sdcc_libdir)/pic16
+ [ -d $(sdcc_libdir)/pic ] || mkdir -p $(sdcc_libdir)/pic
mkdir -p $(sdcc_libdir)/src
# Creating dependencies