49 lines
1.3 KiB
Makefile
49 lines
1.3 KiB
Makefile
# ----------------------------
|
|
# Makefile Options
|
|
# ----------------------------
|
|
|
|
CC = clang
|
|
CONVERT = convert
|
|
PRINTF = printf
|
|
|
|
NAME = TRANSFER
|
|
ICON = icon/transfer.png
|
|
DESCRIPTION = "Variable Transfer Program"
|
|
COMPRESSED = YES
|
|
ARCHIVED = YES
|
|
|
|
CFLAGS = -Wall -Wextra -Oz
|
|
CXXFLAGS = -Wall -Wextra -Oz
|
|
|
|
ICON_COLORS = 16
|
|
ICON_SIZES = 32 64
|
|
|
|
GEN_CSOURCES = src/ti83pce_icon.c src/ti84pce_icon.c src/font.c
|
|
EXTRA_CSOURCES = $(filter-out $(wildcard $(GEN_CSOURCES)),$(GEN_CSOURCES))
|
|
EXTRA_USERHEADERS = src/ti83pce_icon.h src/ti84pce_icon.h src/ti84pceg.inc src/font.h
|
|
EXTRA_CLEAN = $(GEN_CSOURCES) $(patsubst %.c,%.h,$(GEN_CSOURCES)) icon/ti83pce.ico icon/ti84pce.ico font/genfont
|
|
|
|
# ----------------------------
|
|
|
|
ifndef CEDEV
|
|
$(error CEDEV environment path variable is not set)
|
|
endif
|
|
|
|
include $(CEDEV)/meta/makefile.mk
|
|
|
|
icon/%.ico: $(patsubst %,icon/\%-%.ico,$(ICON_SIZES))
|
|
@$(CONVERT) $^ -colors $(ICON_COLORS) $@
|
|
|
|
src/%_icon.h: icon/%.ico
|
|
@$(PRINTF) "#ifndef $*_icon_h\n#define $*_icon_h\n\n#define $*_icon_uncompressed_size `wc -c < $<`\nextern const unsigned char $*_icon[];\n\n#endif\n" > $@
|
|
|
|
src/%_icon.c: icon/%.ico
|
|
@$(CONVBIN) --iformat bin --input $< --compress zx7 --name $*_icon --oformat c --output $@
|
|
|
|
src/font.h src/font.c: font/genfont
|
|
@$<
|
|
|
|
font/genfont: font/genfont.c
|
|
@$(CC) -O3 -flto $< `pkg-config --cflags --libs freetype2` -o $@
|
|
|
|
.SECONDARY: $(EXTRA_CLEAN)
|