123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- #
- # Makefile for Fraise PiedUsb
- #
- CHIP=18f2550
- # make /usr if you want released tools /home/rick/in/sdcc
- # MY_BASE=/home/rick/in/sdcc
- #MY_BASE=/usr
- #SDCC_HOME=$(MY_BASE)/share/sdcc
- SDCCHOME = ../../bin
- SDCC = $(SDCCHOME)/bin/sdcc
- SDCCFLAGS = -mpic16 -p18f2550 --disable-warning 85 --std-sdcc99 --obanksel=3 --use-non-free \
- -I$(SDCCHOME)/share/include/pic16 -I$(SDCCHOME)/share/non-free/include/pic16 \
- -L$(SDCCHOME)/share/non-free/lib/pic16 -L$(SDCCHOME)/share/lib/pic16
- CDCACM=usbcdcacm1.1/
- SRCS= $(CDCACM)/usbcdc.c $(CDCACM)/printft.c fraisemaster/fraisemaster.c main.c
-
- HDRS= fraisemaster/fraisemaster.h config.h prj_usb_config.h \
- $(CDCACM)/usbcdc_defs.h $(CDCACM)/usb_defs.h $(CDCACM)/usbcdc.h $(CDCACM)/usbpic_defs.h
- OBJS = $(SRCS:%.c=%.o)
- ASMS = $(SRCS:%.c=%.asm)
- LSTS = $(SRCS:%.c=%.lst)
- CRT = crt0iz-rloc
- #PROJ=PiedUsb
- PROJ=Project
- CC=$(SDCC)
- DIS = gpdasm
- FSUSB = fsusb
- #OPTS= --model-small --vc --denable-peeps --optimize-cmp --optimize-df --obanksel=9 --opt-code-size --fommit-frame-pointer --ivt-loc=0x0800 --use-crt=$(CRT).o
- OPTS= --vc --denable-peeps --optimize-cmp --optimize-df --obanksel=9 --opt-code-size --fomit-frame-pointer
- #--use-crt=$(CRT).o
- #--optimize-goto
- #OPTS= --no-peep --fstack
- CFLAGS= -I. -I$(CDCACM) -Ifraisemaster $(OPTS) $(SDCCFLAGS)
- #--std-c99
- LINKER_SCRIPT= sd$(CHIP)-full.lkr
- #sdcc 1.8 and before
- #LIBS= libsdcc.lib libc18f.lib libio$(CHIP).lib pic$(CHIP).lib
- #sdcc 1.9
- LIBS= libsdcc.lib libc18f.lib libio$(CHIP).lib libdev$(CHIP).lib
- # .SUFFIXES: .c .asm .o .hex
- all: $(PROJ).hex
- $(OBJS): %.o: %.c Makefile $(HDRS)
- $(CC) $(CFLAGS) -c $< -o $@
- $(PROJ).hex: $(OBJS) $(LINKER_SCRIPT) $(CRT).o
- $(CC) $(CFLAGS) -L $(SDCC_HOME)/lib/pic16 -Wl,"-m -w -s $(LINKER_SCRIPT)" -o $(PROJ) $(OBJS) $(LIBS)
- disass:
- $(DIS) -p p$(CHIP) $(PROJ).hex > $(PROJ).lis
- prog: all
- # su root -c " $(FSUSB) --program $(PROJ).hex "
- $(FSUSB) --program $(PROJ).hex
- progpk2: all
- pk2cmd -f$(PROJ).hex -p /m /e /j /r
- clean:
- rm -f $(OBJS) $(ASMS) $(LSTS) core .depend depend $(PROJ).cod $(PROJ).hex $(PROJ).lst *.o *.asm *.lst *.map
- $(CRT).o: %.o: %.c
- $(CC) $(CFLAGS) -c $< -o $@
- #depend .depend dep:
- # for file in $(SRCS); do DIR=`dirname $$file`; echo -n $$DIR/ >> $@; $(CC) $(CFLAGS) -M $$file >> $@; done
- dummy:
- # include a dependency file if one exists
- #ifeq (.depend,$(wildcard .depend))
- #include .depend
- #endif
|