50 lines
1.5 KiB
Makefile
50 lines
1.5 KiB
Makefile
MCUTYPE ?= "MCUTYPE_ZKL3000_RC"
|
|
|
|
ifeq ($(MCUTYPE),MCUTYPE_ZKL3000)
|
|
PROJECT_NAME=zkl
|
|
else
|
|
ifeq ($(MCUTYPE),MCUTYPE_TRT3000)
|
|
PROJECT_NAME=trt
|
|
else
|
|
PROJECT_NAME=zklrc
|
|
endif
|
|
endif
|
|
|
|
ifeq ($(DEBUG),1)
|
|
BUILD_TYPE=DEBUG
|
|
else
|
|
BUILD_TYPE=RELEASE
|
|
endif
|
|
|
|
CC=/usr/bin/wine $(HOME)/.wine/drive_c/Microchip-MPLAB-C30/bin/pic30-gcc.exe
|
|
AS=/usr/bin/wine $(HOME)/.wine/drive_c/Microchip-MPLAB-C30/bin/pic30-gcc.exe
|
|
LD=/usr/bin/wine $(HOME)/.wine/drive_c/Microchip-MPLAB-C30/bin/pic30-gcc.exe
|
|
BIN2HEX=/usr/bin/wine $(HOME)/.wine/drive_c/Microchip-MPLAB-C30/bin/pic30-bin2hex.exe
|
|
|
|
LDFLAGS=-mcpu=33FJ128MC506
|
|
CFLAGS=-mcpu=33FJ128MC506 -x c -I"mtinfo-common\include" -D__$(BUILD_TYPE) -g -Wall -D__MCUTYPE__=$(MCUTYPE) -Os -Wformat -Wformat-security -D_FORTIFY_SOURCE=2
|
|
AFLAGS=-mcpu=33FJ128MC506 -I"mtinfo-common\include" -Wa,--defsym=__$(BUILD_TYPE)=1,--defsym=__MCUTYPE__=$(MCUTYPE),-g
|
|
|
|
SOURCES=$(wildcard src/*.c)
|
|
OBJECTS=$(addprefix obj/, $(SOURCES:.c=.c.o))
|
|
ASSOURCES=$(wildcard src/*.s)
|
|
ASOBJECTS=$(addprefix obj/, $(ASSOURCES:.s=.s.o))
|
|
|
|
$(PROJECT_NAME).hex: $(OBJECTS) $(ASOBJECTS)
|
|
$(LD) $(LDFLAGS) $(OBJECTS) $(ASOBJECTS) -o obj/$(PROJECT_NAME).cof -Wl,-L$(HOME)/.wine/drive_c/Microchip-MPLAB-C30/lib,--script="src/zkl.gld",--defsym=__MPLAB_BUILD=1,--defsym=__MPLAB_DEBUG=1,-Map="obj/$(PROJECT_NAME).map",--report-mem
|
|
$(BIN2HEX) obj/$(PROJECT_NAME).cof
|
|
|
|
obj/%.c.o: %.c obj
|
|
@mkdir -p $(shell dirname $@)
|
|
$(CC) -c $(CFLAGS) $< -o $@
|
|
|
|
obj/%.s.o: %.s obj
|
|
@mkdir -p $(shell dirname $@)
|
|
$(AS) -c $(AFLAGS) $< -o $@
|
|
|
|
obj:
|
|
mkdir -p obj
|
|
|
|
clean:
|
|
rm -rf obj
|