summaryrefslogtreecommitdiff
path: root/xdelta3/Makefile
blob: 6cac09e0fcb36cb3980f3137cf3a704747ceedbf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
##
PYTHON = python
PYTGT = build/temp.linux-i686-2.3/xdelta3.so

TARGETS = xdelta3 xdelta3-2 xdelta3-64 xdelta3-everything \
	  xdelta3-Opg xdelta3-64-O xdelta3-Op xdelta3-O \
	  xdelta3-decoder xdelta3-decoder-nomain.o \
	  $(PYTGT) \
	  xdelta3-nosec.o xdelta3-all.o xdelta3-fgk.o xdelta3-djw.o \
	  xdelta3-noext xdelta3-tools xdelta3-tune \
	  xdelta3-notools

SOURCES = xdelta3.c xdelta3.h xdelta3-fgk.h xdelta3-djw.h xdelta3-list.h xdelta3-test.h \
	  xdelta3-main.h xdelta3-cfgs.h xdelta3-second.h xdelta3-python.h

PYFILES = xdelta3-regtest.py setup.py

EXTRA = Makefile COPYING linkxd3lib.c badcopy.c www RELEASE.NOTES

REL = 0f
RELDIR = xdelta3$(REL)

all: $(TARGETS)

tar:
	tar -czf /tmp/$(RELDIR)-tmp.tar.gz $(SOURCES) $(PYFILES) $(EXTRA)
	rm -rf /tmp/$(RELDIR)
	mkdir /tmp/$(RELDIR)
	(cd /tmp/$(RELDIR) && tar -xzf ../$(RELDIR)-tmp.tar.gz)
	tar -czf ./$(RELDIR).tar.gz -C /tmp $(RELDIR)
	+tar -tzf ./$(RELDIR).tar.gz
	rm -rf /tmp/$(RELDIR)

clean:
	rm -f $(TARGETS) xdtest.* core *.flc

$(PYTGT): $(SOURCES)
	$(PYTHON) setup.py install --compile --force

xdelta3: $(SOURCES)
	$(CC) -g -Wall -Wshadow xdelta3.c -o xdelta3 -DXD3_MAIN=1 -DGENERIC_ENCODE_TABLES=1 \
		-DXD3_USE_LARGEFILE64=1 -DREGRESSION_TEST=1 -DXD3_DEBUG=1 -DSECONDARY_DJW=1 -lm

xdelta3-2: $(SOURCES)
	$(CC) -g -Wall -Wshadow xdelta3.c -o xdelta3-2 -DXD3_MAIN=1 -DGENERIC_ENCODE_TABLES=1 \
		-DXD3_USE_LARGEFILE64=1 -DREGRESSION_TEST=1 -DXD3_DEBUG=2 -DSECONDARY_DJW=1 -lm

xdelta3-decoder: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow xdelta3.c \
	    -DXD3_ENCODER=0 -DXD3_MAIN=1 -DSECONDARY_FGK=0 -DSECONDARY_DJW=0 \
	    -DXD3_POSIX=0 -DEXTERNAL_COMPRESSION=0 -DVCDIFF_TOOLS=0 \
	    -o xdelta3-decoder
	strip xdelta3-decoder

xdelta3-decoder-nomain.o: $(SOURCES) linkxd3lib.c
	$(CC) -O2 -Wall -Wshadow xdelta3.c linkxd3lib.c \
	    -DXD3_ENCODER=0 -DSECONDARY_FGK=0 -DSECONDARY_DJW=0 \
	    -o xdelta3-decoder-nomain.o
	strip xdelta3-decoder-nomain.o

xdelta3-O: $(SOURCES)
	$(CC) -g -O2 -Wall -Wshadow xdelta3.c -o xdelta3-O -DXD3_MAIN=1 -DSECONDARY_DJW=1 -DREGRESSION_TEST=1 -lm

xdelta3-O++: $(SOURCES)
	$(CXX) -g -O2 -Wall -Wshadow xdelta3.c -o xdelta3-O++ -DXD3_MAIN=1 -DSECONDARY_DJW=1 -DREGRESSION_TEST=1 -lm

xdelta3-Op: $(SOURCES)
	$(CC) -g -O2 -Wall -Wshadow xdelta3.c -o xdelta3-Op -DXD3_POSIX=1 -DXD3_MAIN=1 -DREGRESSION_TEST=1 -lm

xdelta3-64: $(SOURCES)
	$(CC) -g -Wall -Wshadow xdelta3.c -o xdelta3-64 -DXD3_POSIX=1 -DXD3_MAIN=1 -DREGRESSION_TEST=1 \
					-DXD3_DEBUG=0 -DXD3_USE_LARGEFILE64=1 -lm

xdelta3-64-O: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow xdelta3.c -o xdelta3-64-O -DXD3_POSIX=1 -DXD3_MAIN=1 \
					-DXD3_USE_LARGEFILE64=1 -lm

xdelta3-everything: $(SOURCES)
	$(CC) -g -Wall -Wshadow xdelta3.c -o xdelta3-everything \
					-DXD3_MAIN=1 -DVCDIFF_TOOLS=1 -DREGRESSION_TEST=1 \
					-DSECONDARY_FGK=1 -DSECONDARY_DJW=1 \
					-DGENERIC_ENCODE_TABLES=1 \
					-DGENERIC_ENCODE_TABLES_COMPUTE=1 \
					-DXD3_POSIX=1 \
					-DEXTERNAL_COMPRESSION=1 \
					-DXD3_DEBUG=1 -lm

xdelta3-tune: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow xdelta3.c -o xdelta3-tune -DXD3_MAIN=1 \
		-DSECONDARY_FGK=1 -DSECONDARY_DJW=1 -DTUNE_HUFFMAN=1

xdelta3-Opg: $(SOURCES)
	$(CC) -pg -g -O3 -Wall -Wshadow xdelta3.c -o xdelta3-Opg -DXD3_MAIN=1 \
		-DSECONDARY_DJW=1 -DXD3_POSIX=1 -DXD3_USE_LARGEFILE64=1

xdelta3-nosec.o: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow -c xdelta3.c -DSECONDARY_FGK=0 -DSECONDARY_DJW=0 -o xdelta3-nosec.o

xdelta3-all.o: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow -c xdelta3.c -DSECONDARY_FGK=1 -DSECONDARY_DJW=1 -o xdelta3-all.o

xdelta3-fgk.o: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow -c xdelta3.c -DSECONDARY_FGK=1 -DSECONDARY_DJW=0 -o xdelta3-fgk.o

xdelta3-djw.o: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow -c xdelta3.c -DSECONDARY_FGK=0 -DSECONDARY_DJW=1 -o xdelta3-djw.o

xdelta3-noext: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow xdelta3.c -DXD3_MAIN=1 -DEXTERNAL_COMPRESSION=0 -o xdelta3-noext

xdelta3-tools: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow xdelta3.c -DXD3_MAIN=1 -o xdelta3-tools

xdelta3-notools: $(SOURCES)
	$(CC) -O2 -Wall -Wshadow xdelta3.c -DXD3_MAIN=1 -DVCDIFF_TOOLS=0 -o xdelta3-notools