File: rules

package info (click to toggle)
elvis-tiny 1.4-7
  • links: PTS
  • area: main
  • in suites: slink
  • size: 688 kB
  • ctags: 1,045
  • sloc: ansic: 13,730; makefile: 220; sh: 17
file content (63 lines) | stat: -rwxr-xr-x 1,547 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
#! /usr/bin/make -f
#
#	debian/rules file for elvis-tiny
#

# Name.
package = elvis-tiny
tmp     = $(shell pwd)/debian/tmp

define checkdir
	test -f cmd1.c
endef

build:
# Builds the binary package.
	$(checkdir)
	make
	touch build

# Architecture independant files.
binary-indep:   build
	$(checkdir)

# Make a binary package (.deb file)
binary-arch:	build checkroot
	-rm -rf $(tmp)
	install -d -g root -m 755 -o root $(tmp)
	install -d -g root -m 755 -o root $(tmp)/{DEBIAN,usr}
	install -d -g root -m 755 -o root $(tmp)/usr/{doc,bin,man}
	install -d -g root -m 755 -o root $(tmp)/usr/man/man1
	install -d -g root -m 755 -o root $(tmp)/usr/doc/$(package)
	install -g root -s -m 755 elvis $(tmp)/usr/bin/elvis-tiny
	install -g root -m 644 debian/changelog \
		$(tmp)/usr/doc/$(package)/changelog.Debian
	install -g root -m 644 KNOWN.BUGS \
		$(tmp)/usr/doc/$(package)/changelog
	install -g root -m 644 debian/elvis-tiny.1 $(tmp)/usr/man/man1
	gzip -9f $(tmp)/usr/man/man1/*
	gzip -9f $(tmp)/usr/doc/$(package)/*

	install -g root -m 644 README $(tmp)/usr/doc/$(package)/copyright

	install -g root -m 755 debian/postinst $(tmp)/DEBIAN
	install -g root -m 755 debian/prerm $(tmp)/DEBIAN

	dpkg-shlibdeps elvis
	dpkg-gencontrol
	dpkg --build $(tmp) ..
	rm -rf $(tmp)

clean:	checkroot
	-make clobber
	rm -f build debian/{files,substvars}
	rm -rf $(tmp)
	find . -name '*.bak' -o -name '*~' | xargs -r rm -f --

binary: binary-indep binary-arch

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

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