2 # Makefile.rules - Common Makefile rules to build pic16 C Library
4 # This file is part of the GNU PIC Library.
7 # The GNU PIC Library is maintained by,
8 # Vangelis Rokas <vrokas@otenet.gr>
15 include ../../Makefile.common
17 PRJDIR = ../../../../..
19 LIBC_INC_DIR = $(PRJDIR)/device/include/pic16
21 #OPT_FLAGS += --pstack-model=large
22 #OPT_FLAGS += --stack-auto
24 COMPILE_FLAGS += $(MODELFLAGS)
25 COMPILE_FLAGS += $(OPT_FLAGS)
26 COMPILE_FLAGS += $(CSTD)
29 CFLAGS = -I$(LIBC_INC_DIR)
31 CFILES = $(patsubst %,%.c,$(SRCS))
32 COFILES = $(patsubst %.c,%.o,$(CFILES))
34 ASFLAGS = -I$(LIBC_INC_DIR) -p18f452 -D__18F452
36 SFILES = $(patsubst %,%.S,$(S_SRCS))
37 SOFILES = $(patsubst %.S,%.o,$(SFILES))
39 OFILES = $(COFILES) $(SOFILES)
42 $(CC) $(CFLAGS) $(COMPILE_FLAGS) -c $<
45 $(AS) $(ASFLAGS) -c $<
47 all: build-library clean-intermediate-no-asm
50 $(RM) -f *.lst *.asm *.dump* *.p *.d *.adb
52 clean-intermediate-no-asm:
53 $(RM) -f *.lst *.dump* *.p *.d *.adb
56 clean: clean-intermediate
61 for temp in $(CFILES); do \
62 $(CPP) $(MM) $(CFLAGS) $$temp > .tmpdepend; \
63 $(SED) s/.rel/.o/g .tmpdepend >> .depend; \
64 $(RM) -f .tmpdepend; \
66 if [ ! -e .depend ]; then touch .depend; fi;