LIBC_INC_DIR = $(PRJDIR)/device/include/pic16
-COMPILE_FLAGS += $(MODELFLAGS) --pomit-config-words --pomit-ivt --denable-peeps --optimize-goto --obanksel=2 --i-code-in-asm
-CFLAGS = -I$(LIBC_INC_DIR)
+#OPT_FLAGS += --pstack-model=large
+#OPT_FLAGS += --stack-auto
+
+COMPILE_FLAGS += $(MODELFLAGS) $(OPT_FLAGS)
+
+
+CFLAGS = $(CSTD) -I$(LIBC_INC_DIR)
CFILES = $(patsubst %,%.c,$(SRCS))
-OFILES = $(patsubst %.c,%.o,$(CFILES))
+COFILES = $(patsubst %.c,%.o,$(CFILES))
+
+ASFLAGS = -I$(LIBC_INC_DIR) -p18f452 -D__18F452
-%.o: %.c
+SFILES = $(patsubst %,%.S,$(S_SRCS))
+SOFILES = $(patsubst %.S,%.o,$(SFILES))
+
+OFILES = $(COFILES) $(SOFILES)
+
+.c.o:
$(CC) $(CFLAGS) $(COMPILE_FLAGS) -c $<
+.S.o:
+ $(AS) $(ASFLAGS) -c $<
-all: build-library
+all: build-library clean-intermediate-no-asm
clean-intermediate:
$(RM) -f *.lst *.asm *.dump* *.p *.d *.adb
+clean-intermediate-no-asm:
+ $(RM) -f *.lst *.dump* *.p *.d *.adb
+
clean: clean-intermediate
$(RM) -f $(LIB) *.o