1CC=cc 2CFLAGS=-O3 -Wall -Wextra 3 4 5pigz: pigz.o yarn.o zopfli/deflate.o zopfli/blocksplitter.o zopfli/tree.o zopfli/lz77.o zopfli/cache.o zopfli/hash.o zopfli/util.o zopfli/squeeze.o zopfli/katajainen.o 6 $(CC) $(LDFLAGS) -o pigz $^ -lpthread -lz -lm 7 ln -f pigz unpigz 8 9pigz.o: pigz.c yarn.h zopfli/deflate.h zopfli/util.h 10 11yarn.o: yarn.c yarn.h 12 13zopfli/deflate.o: zopfli/deflate.c zopfli/deflate.h zopfli/blocksplitter.h zopfli/lz77.h zopfli/squeeze.h zopfli/tree.h zopfli/zopfli.h zopfli/cache.h zopfli/hash.h zopfli/util.h 14 15zopfli/blocksplitter.o: zopfli/blocksplitter.c zopfli/blocksplitter.h zopfli/deflate.h zopfli/lz77.h zopfli/squeeze.h zopfli/tree.h zopfli/util.h zopfli/zopfli.h zopfli/cache.h zopfli/hash.h 16 17zopfli/tree.o: zopfli/tree.c zopfli/tree.h zopfli/katajainen.h zopfli/util.h 18 19zopfli/lz77.o: zopfli/lz77.h zopfli/util.h zopfli/cache.h zopfli/hash.h zopfli/zopfli.h 20 21zopfli/cache.o: zopfli/cache.c zopfli/cache.h zopfli/util.h 22 23zopfli/hash.o: zopfli/hash.c zopfli/hash.h zopfli/util.h 24 25zopfli/util.o: zopfli/util.c zopfli/util.h 26 27zopfli/squeeze.o: zopfli/squeeze.c zopfli/squeeze.h zopfli/blocksplitter.h zopfli/deflate.h zopfli/tree.h zopfli/util.h zopfli/zopfli.h zopfli/lz77.h zopfli/cache.h zopfli/hash.h 28 29zopfli/katajainen.o: zopfli/katajainen.c zopfli/katajainen.h 30 31dev: pigz pigzt pigzn 32 33pigzt: pigzt.o yarnt.o zopfli/deflate.o zopfli/blocksplitter.o zopfli/tree.o zopfli/lz77.o zopfli/cache.o zopfli/hash.o zopfli/util.o zopfli/squeeze.o zopfli/katajainen.o 34 $(CC) $(LDFLAGS) -o pigzt $^ -lpthread -lz -lm 35 36pigzt.o: pigz.c yarn.h 37 $(CC) $(CFLAGS) -DDEBUG -g -c -o pigzt.o pigz.c 38 39yarnt.o: yarn.c yarn.h 40 $(CC) $(CFLAGS) -DDEBUG -g -c -o yarnt.o yarn.c 41 42pigzn: pigzn.o zopfli/deflate.o zopfli/blocksplitter.o zopfli/tree.o zopfli/lz77.o zopfli/cache.o zopfli/hash.o zopfli/util.o zopfli/squeeze.o zopfli/katajainen.o 43 $(CC) $(LDFLAGS) -o pigzn $^ -lz -lm 44 45pigzn.o: pigz.c 46 $(CC) $(CFLAGS) -DDEBUG -DNOTHREAD -g -c -o pigzn.o pigz.c 47 48test: pigz 49 ./pigz -kf pigz.c ; ./pigz -t pigz.c.gz 50 ./pigz -kfb 32 pigz.c ; ./pigz -t pigz.c.gz 51 ./pigz -kfp 1 pigz.c ; ./pigz -t pigz.c.gz 52 ./pigz -kfz pigz.c ; ./pigz -t pigz.c.zz 53 ./pigz -kfK pigz.c ; ./pigz -t pigz.c.zip 54 printf "" | ./pigz -cdf | wc -c | test `cat` -eq 0 55 printf "x" | ./pigz -cdf | wc -c | test `cat` -eq 1 56 printf "xy" | ./pigz -cdf | wc -c | test `cat` -eq 2 57 printf "xyz" | ./pigz -cdf | wc -c | test `cat` -eq 3 58 (printf "w" | gzip ; printf "x") | ./pigz -cdf | wc -c | test `cat` -eq 2 59 (printf "w" | gzip ; printf "xy") | ./pigz -cdf | wc -c | test `cat` -eq 3 60 (printf "w" | gzip ; printf "xyz") | ./pigz -cdf | wc -c | test `cat` -eq 4 61 -@if test "`whereis compress | grep /`" != ""; then \ 62 echo 'compress -f < pigz.c | ./unpigz | cmp - pigz.c' ;\ 63 compress -f < pigz.c | ./unpigz | cmp - pigz.c ;\ 64 fi 65 @rm -f pigz.c.gz pigz.c.zz pigz.c.zip 66 67tests: dev test 68 ./pigzn -kf pigz.c ; ./pigz -t pigz.c.gz 69 @rm -f pigz.c.gz 70 71docs: pigz.pdf 72 73pigz.pdf: pigz.1 74 groff -mandoc -f H -T ps pigz.1 | ps2pdf - pigz.pdf 75 76clean: 77 @rm -f *.o zopfli/*.o pigz unpigz pigzn pigzt pigz.c.gz pigz.c.zz pigz.c.zip 78