File: rules

package info (click to toggle)
modutils 2.3.11-13.1
  • links: PTS
  • area: main
  • in suites: potato
  • size: 1,156 kB
  • ctags: 1,038
  • sloc: ansic: 10,567; sh: 2,120; lex: 484; makefile: 479; yacc: 362
file content (132 lines) | stat: -rwxr-xr-x 4,721 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
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
#!/usr/bin/make -f
# debian.rules file for Debian/GNU modutils package
# Adapted from sample file from Ian Jackson, as modified by Christoph Lameter.
#

# Debian package information
package=modutils
docdir=/usr/share/doc/$(package)
tmpdir=$(shell pwd)/debian/tmp/

stamp-config:
	mkdir -p debian/build
	cd debian/build ; ../../configure --sysconfdir=/etc \
		--infodir=/usr/share/info --mandir=/usr/share/man
	touch stamp-config

stamp-build build: stamp-config
	cd debian/build ; $(MAKE)
	touch stamp-build

clean:
	test -d debian
	rm -rf debian/build debian/tmp
	-rm -rf debian/files* debian/substvars
	-rm -f stamp-config stamp-build

binary-indep:
	@echo Nothing to do

binary-arch: checkroot stamp-build
	test -d debian
	-rm -rf debian/tmp
	install -d -m 755 -o root -g root debian/tmp

# Setup directories
	install -d -m 755 -o root -g root debian/tmp/sbin
	install -d -m 755 -o root -g root debian/tmp/usr/share/man/man1
	install -d -m 755 -o root -g root debian/tmp/usr/share/man/man2
	install -d -m 755 -o root -g root debian/tmp/usr/share/man/man5
	install -d -m 755 -o root -g root debian/tmp/usr/share/man/man8
	install -d -m 755 -o root -g root debian/tmp/lib/modules
	install -d -m 755 -o root -g root debian/tmp/var/log/ksymoops

	cd debian/build ; $(MAKE) prefix=$(tmpdir)/usr exec_prefix=$(tmpdir) \
		sysconfdir=$(tmpdir)/etc mandir=$(tmpdir)/usr/share/man install

# Do some changes for Debian
	-strip debian/tmp/sbin/*
	chmod 644 debian/tmp/usr/share/man/*/*
	gzip -9 debian/tmp/usr/share/man/*/*
	install -d -m 755 -o root -g root debian/tmp/etc/cron.daily
	install -p -m 755 -o root -g root debian/cron.daily \
		debian/tmp/etc/cron.daily/modutils

# Install documentation
	install -d -m 755 -o root -g root debian/tmp$(docdir)
	install -p -m 644 -g root -o root CREDITS debian/tmp/$(docdir)
	install -p -m 644 -g root -o root NEWS debian/tmp$(docdir)
	install -p -m 644 -g root -o root README debian/tmp$(docdir)
	install -p -m 644 -g root -o root TODO debian/tmp/$(docdir)
	install -p -m 644 -g root -o root ChangeLog debian/tmp/$(docdir)/changelog
	install -p -g root -m 644 -o root kerneld/README.kerneld \
			debian/tmp/$(docdir)
	gzip -9f debian/tmp/$(docdir)/*

# Install examples
	install -d -m 755 -o root -g root debian/tmp$(docdir)/examples
	install -p -g root -o root debian/examples/* \
			debian/tmp/$(docdir)/examples

# Install Debian-only documentation
	install -p -g root -m 644 -o root debian/modules.5 \
			debian/tmp/usr/share/man/man5
	gzip -9q debian/tmp/usr/share/man/man5/modules.5
	install -p -g root -m 644 -o root debian/module-policy \
			debian/tmp/$(docdir)/module-policy.Debian
	install -p -g root -m 644 -o root debian/changelog \
			debian/tmp/$(docdir)/changelog.Debian
	install -p -g root -m 644 -o root debian/README \
			debian/tmp/$(docdir)/README.Debian
	gzip -9f debian/tmp/$(docdir)/*Debian
	install -p -g root -m 644 -o root debian/copyright debian/tmp/$(docdir)

# Install Debian utils
	install -p -m 755 -o root -g root debian/update-modules debian/tmp/sbin/
	install -p -m 644 -o root -g root debian/update-modules.8 \
			debian/tmp/usr/share/man/man8/
	gzip -9q debian/tmp/usr/share/man/man8/*8

# Install configuration files
	install -d -g root -m 755 -o root debian/tmp/etc
	install -p -g root -m 644 -o root debian/modules debian/tmp/etc/modules

	install -d -g root -m 755 -o root debian/tmp/etc/modutils
	cp -a debian/conf/* debian/tmp/etc/modutils/
	chown -R root.root debian/tmp/etc/modutils

	install -d -g root -m 755 -o root debian/tmp/etc/init.d
	install -p -g root -m 755 -o root debian/rc.modutils \
		debian/tmp/etc/init.d/modutils
	install -p -g root -m 755 -o root debian/rc.kerneld \
		debian/tmp/etc/init.d/kerneld
#	install -p -g root -m 755 -o root debian/rc.modclean \
#		debian/tmp/etc/init.d/modclean
	
# Install Debian system files
	install -d -m 755 -o root -g root debian/tmp/DEBIAN
	install -p -m 644 -o root -g root debian/control debian/tmp/DEBIAN
	install -p -m 644 -o root -g root debian/conffiles debian/tmp/DEBIAN
	install -p -m 755 -o root -g root debian/preinst debian/tmp/DEBIAN
	install -p -m 755 -o root -g root debian/postinst debian/tmp/DEBIAN
	install -p -m 755 -o root -g root debian/prerm debian/tmp/DEBIAN
	install -p -m 755 -o root -g root debian/postrm debian/tmp/DEBIAN

# Some left-over stuff
	install -d -m 755 -o root -g root debian/tmp/usr/bin
	ln -s /sbin/genksyms debian/tmp/usr/bin/genksyms

	dpkg-shlibdeps debian/tmp/sbin/*
	dpkg-gencontrol
	chown -R root.root debian/tmp
	chmod -R go=rX debian/tmp
	dpkg --build debian/tmp ..

# Below here is fairly generic really

binary:		binary-indep binary-arch

checkroot:
	test 0 = "`id -u`"

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