chiark / gitweb /
d9a4a0cb067584aa390aa95a19c985060d1e442e
[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,[ if test -f config.status; then \
34           ./config.status; else\
35           ./configure ${CONFIGURE} ${CONFIGURE_EXTRA}; fi
36 ])m4_dnl
37         $(MAKE) prefix=/usr])m4_dnl
38
39 m4_define([binary], [.PHONY: [binary] [binary]-arch [binary]-indep
40 [binary]: [binary]-arch [binary]-indep
41 [binary]-arch: _archpkgs
42 [binary]-indep: _indeppkgs])
43
44 m4_define([anypkg], [m4_define([_package], $1)m4_dnl
45 m4_define([cleanup], cleanup [cleanpkg-$1])m4_dnl
46 .PHONY: cleanpkg-$1
47 cleanpkg-$1:
48         rm -rf debian/$1
49
50 .PHONY: pkg-$1
51 pkg-$1: [build]
52         rm -rf debian/$1
53         mkdir -p debian/$1
54         mkdir -p debian/$1/DEBIAN
55         mkdir -p debian/$1/usr/share/doc/$1
56         cp debian/copyright \
57                 debian/$1/usr/share/doc/$1/copyright
58         cp debian/changelog \
59                 debian/$1/usr/share/doc/$1/changelog.Debian
60         gzip -9 debian/$1/usr/share/doc/$1/changelog.Debian
61 $2      dpkg-gencontrol -isp -p$1 -Pdebian/$1 -Tdebian/substvars.$1
62         chown -R root:root debian/$1
63         chmod -R g-ws debian/$1
64         dpkg --[build] debian/$1 ..
65 ])
66
67 m4_define([_target],
68         [m4_ifelse([$2],[],[$1],[$2])])
69
70 m4_define([install_usrbin],
71          [$(INSTALL) -m 755 $1 \
72                 debian/_package/usr/bin/_target([$1],[$2])])
73
74 m4_define([install_usrsbin],
75          [$(INSTALL) -m 755 $1 \
76                 debian/_package/usr/sbin/_target([$1],[$2])])
77
78 m4_define([install_bin],
79          [$(INSTALL) -m 755 $1 \
80                 debian/_package/bin/_target([$1],[$2])])
81
82 m4_define([install_sbin],
83          [$(INSTALL) -m 755 $1 \
84                 debian/_package/sbin/_target([$1],[$2])])
85
86 m4_define([_mansect],
87         [m4_patsubst([$1], [^.*\.\([^.]*\)], [\1])])
88
89 m4_define([install_usrman],
90         [$(INSTALL) -m 644 $1 \
91                 debian/_package/usr/share/man/man[]_mansect(_target([$1],[$2]))/_target([$1],[$2])
92         gzip -9 debian/_package/usr/share/man/man[]_mansect(_target([$1],[$2]))/_target([$1],[$2])])
93
94 m4_define([install_manlink],
95         [ln -s ../man[]_mansect([$1])/$1.gz \
96                 debian/_package/usr/man/man[]_mansect([$2])/$2.gz])
97
98 m4_define([archpkg], [m4_define([_archpkgs], _archpkgs pkg-$1)m4_dnl
99 anypkg([$1],[$2])])
100
101 m4_define([indeppkg], [m4_define([_indeppkgs], _indeppkgs pkg-$1)m4_dnl
102 anypkg([$1],[$2])])
103
104 m4_define([clean], [.PHONY: [clean]
105 [clean]: cleanup
106         -$(MAKE) distclean
107         rm -f config.cache
108         rm -f debian/files
109         rm -f debian/substvars.*])
110
111 m4_define([cleanup], [])
112
113 m4_define([_archpkgs], [])
114
115 m4_define([_indeppkgs], [])
116
117 m4_define([regenerate], [debian/rules: debian/autorules.m4 debian/rules.m4
118         rm -f debian/rules.tmp
119         cd debian && \
120                 m4 -P autorules.m4 rules.m4 > rules.tmp
121         chmod 555 debian/rules.tmp
122         mv -f debian/rules.tmp debian/rules
123 ])
124
125 m4_divert(0)m4_dnl