File: rules

package info (click to toggle)
tla 1.3.5%2Bdfsg1-2
  • links: PTS
  • area: main
  • in suites: bullseye, buster, stretch
  • size: 22,292 kB
  • ctags: 11,952
  • sloc: ansic: 149,771; sh: 16,009; xml: 2,689; lisp: 1,927; makefile: 1,064; cpp: 363; tcl: 230; awk: 48; sed: 25
file content (138 lines) | stat: -rwxr-xr-x 4,264 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
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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
#!/usr/bin/make -f

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

DEB_HOST_GNU_TYPE   := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE  := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
DEB_BUILD_ARCH      := $(shell dpkg-architecture -qDEB_BUILD_ARCH)
ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
  CROSS = --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
else
  CROSS = --build $(DEB_BUILD_GNU_TYPE)
endif

CFLAGS              := $(shell dpkg-buildflags --get CFLAGS)
CPPFLAGS            := $(shell dpkg-buildflags --get CPPFLAGS)
LDFLAGS             := $(shell dpkg-buildflags --get LDFLAGS)
CFLAGS	            += -Wall

configure-stamp:
	dh_testdir
	dh_autotools-dev_updateconfig
	rm -rf debian/build
	rm -rf src/expat/  # Let's play safe
	rm -f src/libneon/PLUGIN/REQ
	mkdir debian/build
	cd debian/build && \
	 CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' \
	 AUTOCONF_CROSS='$(CROSS)' AUTOCONF_CFLAGS='$(CFLAGS)' \
	 AUTOCONF_CPPFLAGS='$(CPPFLAGS)' AUTOCONF_LDFLAGS='$(LDFLAGS)' \
	  ../../src/configure --prefix=/usr --with cc gcc
	touch configure-stamp

build-indep:
build-arch: build-stamp
build: build-stamp
build-stamp: configure-stamp
	dh_testdir

	$(MAKE) -j1 -C debian/build CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)'

	# Temporary skipping arm where the testsuite is know to be broken
	# There is a bug somewhere that this causes recompilation of almost everything.
	# Someone might take a look to find it...
	if [ "$(DEB_BUILD_ARCH)" != "arm" ]; \
	then \
		$(MAKE) -j1 CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' -C debian/build test || exit 1; \
	fi

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	dh_autotools-dev_restoreconfig
	rm -f build-stamp configure-stamp
	dh_clean

install: build-stamp
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

	# Installing package
	$(MAKE) -j1 -C debian/build install destdir=$(CURDIR)/debian/tla \
		CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)'
	install -m 0755 src/tla/=gpg-check.awk debian/tla/usr/bin/tla-gpg-check

	# Installing documentation
	install -d -m 0755 debian/tla-doc/usr/share/doc/tla-doc
	cp -a src/docs-tla debian/tla-doc/usr/share/doc/tla-doc/html
	install -d -m 0755 debian/tla-doc/usr/share/doc/tla
	ln -s ../tla-doc/html debian/tla-doc/usr/share/doc/tla/html

	# Removing double files
	rm -f debian/tla-doc/usr/share/doc/tla-doc/html/ChangeLog
	rm -rf debian/tla-doc/usr/share/doc/tla-doc/html/PLUGIN
	find debian/tla-doc/usr/share/doc/tla-doc/html -name "=*" -exec rm -f {} \;

	# Installing lintian overrides
	for LINTIAN in debian/lintian/*; \
	do \
		install -D -m 644 $$LINTIAN debian/`basename $$LINTIAN`/usr/share/lintian/overrides/`basename $$LINTIAN` || exit 1; \
	done

binary-indep: install
	dh_testdir -i
	dh_testroot -i
	dh_installchangelogs -ptla-doc src/docs-tla/ChangeLog
	dh_installdocs -i
	dh_install -i
	dh_link -i
	dh_strip -i
	dh_compress -i -Xusr/share/doc/tla-doc/html
	dh_fixperms -i
	dh_installdeb -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i

binary-arch: install
	dh_testdir -a
	dh_testroot -a
	dh_installchangelogs -ptla src/tla/ChangeLog
	dh_installdocs -a
	dh_install -a
	dh_installman -a
	dh_link -a
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_installdeb -a
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

binary: binary-indep binary-arch
.PHONY: build-arch build-indep build clean binary-indep binary-arch binary install

# Provide a repackaging target
UPSTREAM_VERSION=1.3.5
DFSG=dfsg1
get-orig-source:
	# Download upstream tarball
	wget http://www.atai.org/gnuarch/releases/tla-$(UPSTREAM_VERSION).tar.gz
	tar xaf tla-$(UPSTREAM_VERSION).tar.gz
	# Remove non-free bits from source
	rm -rf tla-$(UPSTREAM_VERSION)/src/docs-hackerlab
	rm tla-$(UPSTREAM_VERSION)/src/hackerlab/libhackerlab/libhackerlab.doc
	rm tla-$(UPSTREAM_VERSION)/src/build-tools/standards/standards.doc
	# Repackage tarball
	mv tla-$(UPSTREAM_VERSION) tla-$(UPSTREAM_VERSION)+$(DFSG)
	tar caf tla-$(UPSTREAM_VERSION)+$(DFSG).orig.tar.xz tla-$(UPSTREAM_VERSION)+$(DFSG)
	# Clean up temporary files
	rm -rf tla-$(UPSTREAM_VERSION) tla-$(UPSTREAM_VERSION)+$(DFSG) tla-$(UPSTREAM_VERSION).tar.gz
.PHONY: get-orig-source