git.y1.nz

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.