File: rules

package info (click to toggle)
0ad 0.27.0-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 171,928 kB
  • sloc: cpp: 194,011; javascript: 19,098; ansic: 15,066; python: 6,328; sh: 1,695; perl: 1,575; java: 533; xml: 415; php: 192; makefile: 99
file content (64 lines) | stat: -rwxr-xr-x 2,240 bytes parent folder | download | duplicates (3)
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
#!/usr/bin/make -f

# mozjs' build process does not seem to be compatible with other shells
# like zsh
export SHELL = /bin/sh

export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk

include /usr/share/dpkg/architecture.mk

PARALLEL = $(or $(subst parallel=,-j,$(filter parallel=%,${DEB_BUILD_OPTIONS})), -j$(shell getconf _NPROCESSORS_ONLN))

%:
	dh $@

override_dh_auto_clean:
	# TODO: building twice in a row will fail, this is insufficient to delete all cruft
	# cleanup cruft from unpacking embedded libraries
	rm -rf libraries/source/cxxtest-4.4/cxxtest-4.4/
	rm -rf libraries/source/fcollada/fcollada-28209/
	rm -rf libraries/source/nvtt/nvtt-28209/
	rm -rf libraries/source/premake-core/premake-core-5.0.0-beta3/
	rm -rf libraries/source/spidermonkey/mozjs-115.16.1/
	rm -rf libraries/source/spirv-reflect/SPIRV-Reflect-vulkan-sdk-1.3.290.0/
	# cleanup all other cruft
	find binaries/system/ -type f ! -name readme.txt -delete
	rm -f build/premake/.*.tmp
	rm -f libraries/source/cxxtest-4.4/python/cxxtest/*.pyc
	rm -rf libraries/source/cxxtest-4.4/python/cxxtest/__pycache__
	rm -f libraries/source/cxxtest-4.4/python/python3/cxxtest/*.pyc
	rm -rf libraries/source/cxxtest-4.4/python/python3/cxxtest/__pycache__
	rm -f source/ps/tests/stub_impl_hack.cpp
	dh_auto_clean

override_dh_auto_build:
	libraries/build-source-libs.sh $(PARALLEL)
	build/workspaces/update-workspaces.sh \
		--bindir=/usr/games \
		--libdir=/usr/lib/games/0ad \
		--datadir=/usr/share/games/0ad \
		$(PARALLEL)
	
	$(MAKE) config=release verbose=1 -C build/workspaces/gcc \
		$(PARALLEL)

override_dh_auto_test:
	# Note: Avoid running tests from root dir of build, otherwise certain
	# tests (i.e. in testsuite MeshManager) may not work as intended and
	# create spurious directories above root dir (../data/mods).
ifeq (,$(filter armhf arm64 kfreebsd-amd64 kfreebsd-i386, $(DEB_HOST_ARCH)))
	cd binaries/system/ && LD_LIBRARY_PATH=. ./test
endif

override_dh_auto_install:
	install -Dm 0755 build/resources/0ad.sh $(CURDIR)/debian/tmp/usr/games/0ad
	dh_auto_install

override_dh_makeshlibs:
	dh_makeshlibs -Xusr/lib/games/0ad

override_dh_dwz:
	dh_dwz -Xlibmozjs115-release.so -Xlibmozjs115-debug.so