gbdk-2020 | GameBoy Development Kit |
| download: https://git.y1.nz/archives/gbdk.tar.gz | |
| README | Files | Log | Refs | LICENSE |
gbdk-support/gbcompress/Makefile
1 # gbcompress makefile
2
3 ifndef TARGETDIR
4 TARGETDIR = /opt/gbdk
5 endif
6
7 ifeq ($(OS),Windows_NT)
8 BUILD_OS := Windows_NT
9 else
10 BUILD_OS := $(shell uname -s)
11 endif
12
13 # Target older macOS version than whatever build OS is for better compatibility
14 ifeq ($(BUILD_OS),Darwin)
15 export MACOSX_DEPLOYMENT_TARGET=10.10
16 endif
17
18 CC = $(TOOLSPREFIX)gcc
19 CFLAGS = -ggdb -O -Wno-incompatible-pointer-types -DGBDKLIBDIR=\"$(TARGETDIR)\"
20 OBJ = main.o gbcompress.o rlecompress.o files.o files_c_source.o
21 ZX_OBJ = zx0_expand.o zx0_matchfinder.o zx0_shrink.o
22 ZX_LIB_OBJ = trsort.o divsufsort.o divsufsort_utils.o sssort.o
23 BIN = gbcompress
24
25
26 all: $(BIN)
27
28 %.o: %.c
29 $(CC) $(CFLAGS) -c -o $@ $<
30
31 %.o: zx0/%.c
32 $(CC) $(CFLAGS) -c -o $@ $<
33
34 %.o: zx0/libdivsufsort/%.c
35 $(CC) $(CFLAGS) -c -o $@ $<
36
37 $(BIN): $(OBJ) $(ZX_OBJ) $(ZX_LIB_OBJ)
38
39 clean:
40 rm -f *.o $(BIN) *~
41 rm -f tmp.*
42 rm -f *.exe
43
44 # round trip the executable through compression and de-compression as a brief test
45 test:
46 # Compression test on the executable itself
47 @echo "----- Test: GB Compress -----"
48 rm -f tmp.cmp; rm -f tmp.dcmp
49 cp $(BIN) tmp.in; ./gbcompress -v tmp.in tmp.cmp; ./gbcompress -v -d tmp.cmp tmp.dcmp; diff -s tmp.in tmp.dcmp
50 rm -f tmp.cmp.c; rm -f tmp.dcmp.c; rm -f tmp.cmp; rm -f tmp.dcmp
51 cp $(BIN) tmp.in; ./gbcompress -v --cout --varname=some_array tmp.in tmp.cmp.c; ./gbcompress -v -d --cin tmp.cmp.c tmp.dcmp; diff -s tmp.in tmp.dcmp
52 @echo "----- Test: RLE Compress -----"
53 rm tmp.*
54 rm -f tmp.cmp; rm -f tmp.dcmp
55 cp $(BIN) tmp.in; ./gbcompress --alg=rle -v tmp.in tmp.cmp; ./gbcompress --alg=rle -v -d tmp.cmp tmp.dcmp; diff -s tmp.in tmp.dcmp
56 rm -f tmp.cmp.c; rm -f tmp.dcmp.c; rm -f tmp.cmp; rm -f tmp.dcmp
57 cp $(BIN) tmp.in; ./gbcompress --alg=rle -v --cout --varname=some_array tmp.in tmp.cmp.c; ./gbcompress --alg=rle -v -d --cin tmp.cmp.c tmp.dcmp; diff -s tmp.in tmp.dcmp
58 @echo "----- Test: ZX0 Compress -----"
59 rm tmp.*
60 rm -f tmp.cmp; rm -f tmp.dcmp
61 cp $(BIN) tmp.in; ./gbcompress --alg=zx0 -v tmp.in tmp.cmp; ./gbcompress --alg=zx0 -v -d tmp.cmp tmp.dcmp; diff -s tmp.in tmp.dcmp
62 rm -f tmp.cmp.c; rm -f tmp.dcmp.c; rm -f tmp.cmp; rm -f tmp.dcmp
63 cp $(BIN) tmp.in; ./gbcompress --alg=zx0 -v --cout --varname=some_array tmp.in tmp.cmp.c; ./gbcompress --alg=zx0 -v -d --cin tmp.cmp.c tmp.dcmp; diff -s tmp.in tmp.dcmp
64 rm -f tmp.*
65 # test_no_u16_align_end_of_buf.c
66 @echo ""
67 @echo "----- Test: GB Compress -----"
68 rm -f tmp.*
69 cp test_data/test_no_u16_align_end_of_buf.c tmp.in.c; ./gbcompress --cin -v --cout tmp.in.c tmp.cmp.c; ./gbcompress -v -d --cin --cout tmp.cmp.c tmp.dcmp.c; diff --ignore-blank-lines --ignore-space-change -s tmp.in.c tmp.dcmp.c
70 @echo "----- Test: RLE Compress -----"
71 rm -f tmp.*
72 cp test_data/test_no_u16_align_end_of_buf.c tmp.in.c; ./gbcompress --alg=rle --cin -v --cout tmp.in.c tmp.cmp.c; ./gbcompress --alg=rle -v -d --cin --cout tmp.cmp.c tmp.dcmp.c; diff --ignore-blank-lines --ignore-space-change -s tmp.in.c tmp.dcmp.c
73 rm -f tmp.*
74 @echo "----- Test: ZX0 Compress -----"
75 rm -f tmp.*
76 cp test_data/test_no_u16_align_end_of_buf.c tmp.in.c; ./gbcompress --alg=zx0 --cin -v --cout tmp.in.c tmp.cmp.c; ./gbcompress --alg=zx0 -v -d --cin --cout tmp.cmp.c tmp.dcmp.c; diff --ignore-blank-lines --ignore-space-change -s tmp.in.c tmp.dcmp.c
77 rm -f tmp.*
78
79
80
This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.