File: rules

package info (click to toggle)
openarena-data 0.8.5split-2
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 191,764 kB
  • sloc: ansic: 4,254; makefile: 88; perl: 22
file content (112 lines) | stat: -rwxr-xr-x 3,644 bytes parent folder | download | duplicates (6)
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
#!/usr/bin/make -f

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

clean install binary-arch binary-indep binary:
	dh $@

source := $(shell sed -ne 's/^Source: *//p' < debian/control)
sourceversion := $(shell dpkg-parsechangelog | sed -ne 's/^Version: *//p')
upstreamversion := $(firstword $(subst -, ,$(sourceversion)))
tarball := $(source)_$(upstreamversion).orig.tar.bz2
tardir := $(source)-$(upstreamversion).orig
paks := $(shell cat debian/$(source).paks)

build: \
	$(patsubst %,build/%,$(paks)) \
	$(patsubst %,check/%,$(paks)) \
	debian/openarena-data.README.Debian \
	debian/openarena-085-data.README.Debian

build/%:
	set -e && sed -n -e 's/#.*//; s/\.qvm$$//p;' < debian/$*.pk3.contents | \
		while read crc filename; do \
			test -f $*-$$crc.qvm || \
			$(MAKE) -f debian/rules QVMPREFIX=$(*F) QVMCRC=$$crc \
				debian/$(*F)-$$crc.qvm; \
			install -d $*/vm; \
			install -v -m644 debian/$(*F)-$$crc.qvm $*/$$filename.qvm; \
		done
	rm -f $*.pk3
	sed -n -e 's/#.*//; s/.*\t//p;' < debian/$*.pk3.contents | \
		( cd $* && zip -q -9 $(CURDIR)/$*.pk3 -@ )
	perl debian/list-pk3.pl $*.pk3 | diff -u debian/$*.pk3.contents -

check/pak0: build/pak0
	grep "NTVEpak0" pak0/vm/cgame.qvm
	grep "NTVEpak0" pak0/vm/qagame.qvm
	grep "NTVEpak0" pak0/vm/ui.qvm

check/mp-pak0: build/mp-pak0
	grep "NTVEmp-pak0" mp-pak0/vm/cgame.qvm
	grep "NTVEmp-pak0" mp-pak0/vm/qagame.qvm
	grep "NTVEmp-pak0" mp-pak0/vm/ui.qvm

check/pak6-patch085: build/pak6-patch085
	grep "NTVEpak6-patch085" pak6-patch085/vm/cgame.qvm
	grep "NTVEpak6-patch085" pak6-patch085/vm/qagame.qvm
	grep "NTVEpak6-patch085" pak6-patch085/vm/ui.qvm

# otherwise there's nothing to check
check/%: build/%
	:

debian/openarena-085-data.README.Debian: debian/qvms.README.Debian
	install -m644 $< $@

debian/openarena-data.README.Debian: debian/qvms.README.Debian
	install -m644 $< $@

DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)

# order-only dependency: once we've generated it, no need to waste time
# generating it again, it'll come out the same
debian/$(QVMPREFIX)-$(QVMCRC).qvm: | debian/qvmbrute
	./debian/qvmbrute 0x$(QVMCRC) $@ $(QVMPREFIX)

debian/qvmbrute: | debian/qvmbrute.c
	$(DEB_BUILD_GNU_TYPE)-gcc $(CFLAGS) -Wall -o debian/qvmbrute debian/qvmbrute.c $(LDFLAGS) -lz

import-orig: pre-import-orig $(patsubst %,import-orig/%,$(paks))
pre-import-orig:
	rm -rf ./source
import-orig/%: pre-import-orig
	@if ! test -f $*.pk3; then \
		echo "Copy upstream pk3 file to $*.pk3";\
		exit 1;\
	fi
	rm -f debian/$*.pk3.contents
	rm -rf ./$*
	install -d $*
	perl debian/list-pk3.pl $*.pk3 > debian/$*.pk3.contents
	unzip -q $*.pk3 -x '*.qvm' '../*' -d $*
	set -e && if test mp-pak0 = $*; then \
		unzip -o -j mp-pak0.pk3 ../COPYING ../CREDITS; \
	fi
	# r901 is 0.8.1; r931 is 0.8.5 (despite the commit message)
	# source/assets/textures/trak/ are not GPL-compatible
	set -e && for r in 901 931; do \
		install -d debian/svn-r$$r/source; \
		test -d debian/svn-r$$r/source/assets || svn export -r$$r \
			http://www.openarena.ws/svn/source/assets \
			debian/svn-r$$r/source/assets; \
		rm -rf debian/svn-r$$r/source/assets/textures/trak/; \
		if test -e debian/$*.svn$$r; then \
			while read s; do \
				rsync --link-dest=debian/svn-r$$r \
					--files-from=debian/$*.svn$$r -r \
					debian/svn-r$$r/ ./; \
			done < debian/$*.svn$$r; \
		fi; \
	done

export-orig:
	rm -rf $(tardir)
	install -d $(tardir)
	set -e && for x in $(paks) source; do \
		cp -al $$x $(tardir)/$$x; \
	done
	install -m644 CHANGES COPYING CREDITS CREDITS-0.8.5 LINUXNOTES README WENEED readme_085.txt $(tardir)
	tar -jvcf ../$(tarball) $(tardir)
	rm -rf $(tardir)