File: rules

package info (click to toggle)
uruk 20240930-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,232 kB
  • sloc: sh: 1,910; makefile: 155; xml: 51
file content (106 lines) | stat: -rwxr-xr-x 3,930 bytes parent folder | download
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
#!/usr/bin/make -f

# Made with the aid of debmake, by Christoph Lameter,
# based on the sample debian/rules file for GNU hello by Ian Jackson.

# Copyright (C) 2003, 2004, 2005, 20011 Joost van Baal-Ilić
#
# This file is part of the Debian uruk package.  This script is free
# software; you can redistribute it and/or modify it under the terms
# of the GNU GPL, available on-line at
# http://www.gnu.org/copyleft/gpl.html .

# debmake includes deb-make(1).  We don't use dh_make: let's see if
# we can get rid of build-depending on debhelper (and on debmake too,
# when we're at it).

package=uruk
docdir = debian/$(package)/usr/share/doc/$(package)
BUILD_DATE := $(shell dpkg-parsechangelog --show-field Date)

DPKG_DEB_OPTS ?= -Zgzip
#  DPKG_DEB_OPTS='-Zxz' debuild --preserve-envvar DPKG_DEB_OPTS -uc -us
# yields
#  dpkg-deb -Zxz --build [...]

define checkdir
	test -f debian/rules
endef

build: build-arch build-indep

build-arch:

build-indep:
	$(checkdir)
	./configure --prefix=/usr --exec-prefix=/usr --datarootdir=/usr/share \
          --sysconfdir=/etc --localstatedir=/var '--libexecdir=$${prefix}/lib'
	$(MAKE)
	touch build

clean:
	$(checkdir)
	rm -f build
	[ ! -f Makefile ] || $(MAKE) clean
	rm -f `find . -name "*~"`
	rm -rf debian/$(package) debian/files* debian/substvars

binary-indep: checkroot build
	$(checkdir)
	rm -rf debian/$(package)
	install -d debian/$(package)
#       # /libexec/uruk/init/{autodetect-ips,enable-ipv6}
#       # should end up in /lib/uruk/init/
	$(MAKE) install DESTDIR=$(CURDIR)/debian/$(package)
	mkdir -p debian/$(package)/etc/uruk
	mkdir -p debian/$(package)/etc/default
	mkdir -p debian/$(package)/usr/share/lintian/overrides
	cp -a debian/rc debian/$(package)/etc/uruk
#       # /libexec will contain uruk/lsb/*, not needed on Debian
	rm -r debian/$(package)/usr/lib/uruk/lsb
	cp -a debian/lintian-overrides debian/$(package)/usr/share/lintian/overrides/$(package)
	mv $(CURDIR)/debian/$(package)/usr/share/doc/$(package)/examples/default debian/$(package)/etc/default/uruk
	rm $(CURDIR)/debian/$(package)/usr/share/doc/$(package)/COPYING
	rm $(CURDIR)/debian/$(package)/usr/share/doc/$(package)/ChangeLog
	rm $(CURDIR)/debian/$(package)/usr/share/doc/$(package)/uruk*.azm
	rm $(CURDIR)/debian/$(package)/usr/share/doc/$(package)/uruk*.ps
	rm $(CURDIR)/debian/$(package)/usr/share/doc/$(package)/uruk*.txt
	cp -a NEWS debian/copyright $(docdir)
	cp -a debian/changelog $(docdir)/changelog.Debian
	cp -a debian/NEWS $(docdir)/NEWS.Debian
	cp -a debian/README $(docdir)/README.Debian
	cp -a debian/TODO $(docdir)/TODO.Debian
	cp -a ChangeLog $(docdir)/changelog
	cd $(docdir) && gzip -9n changelog changelog.Debian ChangeLog.2003 NEWS.Debian
	gzip -r9n debian/$(package)/usr/share/man
	mkdir debian/$(package)/DEBIAN
#       # generate md5sums.  pathnames should not have leading /.
#       # conffiles should be excluded.  for now, assume conffiles are precisely
#       # the files in /etc/ .  use sort for reproducible builds
	cd debian/$(package); \
          find . -type f ! -path './etc*' ! -regex '.*/DEBIAN/.*' -printf '%P\0' | \
          LC_ALL=C sort -z | xargs -r0 md5sum > DEBIAN/md5sums
#       # generate binary package control file
	dpkg-gencontrol -isp -Pdebian/$(package)
	cp -a debian/conffiles debian/$(package)/DEBIAN
	for f in postinst prerm postrm; do \
          cp -a debian/$$f debian/$(package)/DEBIAN; \
          chmod a+x debian/$(package)/DEBIAN/$$f; \
        done
	# for reproducible builds
	find debian/$(package) -newermt '$(BUILD_DATE)' -print0 | \
          xargs -r0 touch --no-dereference --date='$(BUILD_DATE)'
	chown -R root:root debian/$(package)
	chmod -R go=rX debian/$(package)
	#
	dpkg-deb $(DPKG_DEB_OPTS) --build debian/$(package) ..

binary-arch: checkroot build

binary: binary-indep binary-arch

checkroot:
	$(checkdir)
	test root = "`whoami`"

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