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) $(OPT_FLAGS)
27 CFLAGS = $(CSTD) -I$(LIBC_INC_DIR)
29 CFILES = $(patsubst %,%.c,$(SRCS))
30 COFILES = $(patsubst %.c,%.o,$(CFILES))
32 ASFLAGS = -I$(LIBC_INC_DIR) -p18f452 -D__18F452
34 SFILES = $(patsubst %,%.S,$(S_SRCS))
35 SOFILES = $(patsubst %.S,%.o,$(SFILES))
37 OFILES = $(COFILES) $(SOFILES)
40 $(CC) $(CFLAGS) $(COMPILE_FLAGS) -c $<
43 $(AS) $(ASFLAGS) -c $<
45 all: build-library clean-intermediate-no-asm
48 $(RM) -f *.lst *.asm *.dump* *.p *.d *.adb
50 clean-intermediate-no-asm:
51 $(RM) -f *.lst *.dump* *.p *.d *.adb
54 clean: clean-intermediate
59 for temp in $(CFILES); do \
60 $(CPP) $(MM) $(CFLAGS) $$temp > .tmpdepend; \
61 $(SED) s/.rel/.o/g .tmpdepend >> .depend; \
62 $(RM) -f .tmpdepend; \
64 if [ ! -e .depend ]; then touch .depend; fi;