chiark / gitweb /
4dd49fec1e1c1b53e97d72bafdd0d8a41a83d4e3
[disorder] / debian / autorules.m4
1 #! /usr/bin/make -f
2 #
3 # Copyright (C) 2004, 2005, 2006, 2007 Richard Kettlewell
4 #
5 # This program is free software; you can redistribute it and/or modify
6 # it under the terms of the GNU General Public License as published by
7 # the Free Software Foundation; either version 2 of the License, or
8 # (at your option) any later version.
9 #
10 # This program is distributed in the hope that it will be useful, but
11 # WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13 # General Public License for more details.
14 #
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
18 # USA
19 #
20 # This file was generated automatically - edit rules.m4 instead
21 #
22
23 INSTALL=install
24 CONFIGURE=--prefix=/usr
25
26 m4_divert(-1)m4_dnl
27
28 m4_changequote([,])
29
30 m4_define([build], [.PHONY: [build]
31 [build]:
32 m4_syscmd([test -f ../configure || test -f ../config.status])m4_dnl
33 m4_ifelse(m4_sysval,0,[ ./configure ${CONFIGURE} ${CONFIGURE_EXTRA}
34 ])m4_dnl
35         $(MAKE) prefix=/usr])m4_dnl
36
37 m4_define([binary], [.PHONY: [binary] [binary]-arch [binary]-indep
38 [binary]: [binary]-arch [binary]-indep
39 [binary]-arch: _archpkgs
40 [binary]-indep: _indeppkgs])
41
42 m4_define([anypkg], [m4_define([_package], $1)m4_dnl
43 m4_define([cleanup], cleanup [cleanpkg-$1])m4_dnl
44 .PHONY: cleanpkg-$1
45 cleanpkg-$1:
46         rm -rf debian/$1
47
48 .PHONY: pkg-$1
49 pkg-$1: [build]
50         rm -rf debian/$1
51         mkdir -p debian/$1
52         mkdir -p debian/$1/DEBIAN
53         mkdir -p debian/$1/usr/share/doc/$1
54         cp debian/copyright \
55                 debian/$1/usr/share/doc/$1/copyright
56         cp debian/changelog \
57                 debian/$1/usr/share/doc/$1/changelog.Debian
58         gzip -9 debian/$1/usr/share/doc/$1/changelog.Debian
59 $2      dpkg-gencontrol -isp -p$1 -Pdebian/$1 -Tdebian/substvars.$1
60         chown -R root:root debian/$1
61         chmod -R g-ws debian/$1
62         dpkg --[build] debian/$1 ..
63 ])
64
65 m4_define([_target],
66         [m4_ifelse([$2],[],[$1],[$2])])
67
68 m4_define([install_usrbin],
69          [$(INSTALL) -m 755 $1 \
70                 debian/_package/usr/bin/_target([$1],[$2])])
71
72 m4_define([install_usrsbin],
73          [$(INSTALL) -m 755 $1 \
74                 debian/_package/usr/sbin/_target([$1],[$2])])
75
76 m4_define([install_bin],
77          [$(INSTALL) -m 755 $1 \
78                 debian/_package/bin/_target([$1],[$2])])
79
80 m4_define([install_sbin],
81          [$(INSTALL) -m 755 $1 \
82                 debian/_package/sbin/_target([$1],[$2])])
83
84 m4_define([_mansect],
85         [m4_patsubst([$1], [^.*\.\([^.]*\)], [\1])])
86
87 m4_define([install_usrman],
88         [$(INSTALL) -m 644 $1 \
89                 debian/_package/usr/share/man/man[]_mansect(_target([$1],[$2]))/_target([$1],[$2])
90         gzip -9 debian/_package/usr/share/man/man[]_mansect(_target([$1],[$2]))/_target([$1],[$2])])
91
92 m4_define([install_manlink],
93         [ln -s ../man[]_mansect([$1])/$1.gz \
94                 debian/_package/usr/man/man[]_mansect([$2])/$2.gz])
95
96 m4_define([archpkg], [m4_define([_archpkgs], _archpkgs pkg-$1)m4_dnl
97 anypkg([$1],[$2])])
98
99 m4_define([indeppkg], [m4_define([_indeppkgs], _indeppkgs pkg-$1)m4_dnl
100 anypkg([$1],[$2])])
101
102 m4_define([clean], [.PHONY: [clean]
103 [clean]: cleanup
104         -$(MAKE) distclean
105         rm -f config.cache
106         rm -f debian/files
107         rm -f debian/substvars.*])
108
109 m4_define([cleanup], [])
110
111 m4_define([_archpkgs], [])
112
113 m4_define([_indeppkgs], [])
114
115 m4_define([regenerate], [debian/rules: debian/autorules.m4 debian/rules.m4
116         rm -f debian/rules.tmp
117         cd debian && \
118                 m4 -P autorules.m4 rules.m4 > rules.tmp
119         chmod 555 debian/rules.tmp
120         mv -f debian/rules.tmp debian/rules
121 ])
122
123 m4_divert(0)m4_dnl