Commit | Line | Data |
---|---|---|
426e7833 | 1 | #!/usr/bin/make -f |
2 | # | |
0fde1ce3 | 3 | # Copyright 2004,2005,2008 by Stefan Hornburg (Racke) <racke@linuxia.de> |
426e7833 | 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, | |
11 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
13 | # GNU General Public License for more details. | |
14 | # | |
15 | # You should have received a copy of the GNU General Public | |
16 | # License along with this program; if not, write to the Free | |
17 | # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, | |
18 | # MA 02111-1307 USA. | |
19 | ||
20 | BUILD=$(shell pwd)/debian/tmp | |
21 | RELUP=$(shell dpkg-parsechangelog | perl -ne 'print $$1 if /^Version: (.*?)-(.*)$$/') | |
22 | ||
23 | # Uncomment this to turn on verbose mode. | |
24 | # export DH_VERBOSE=1 | |
25 | ||
426e7833 | 26 | # This has to be exported to make some magic below work. |
27 | export DH_OPTIONS | |
28 | ||
29 | # Common configuration options | |
30 | NONSSL_CONFOPTS=--without-certdb --without-authpgsql | |
31 | ||
940be80e SHR |
32 | CFLAGS = `dpkg-buildflags --get CFLAGS` |
33 | LDFLAGS = `dpkg-buildflags --get LDFLAGS` | |
34 | LDFLAGS += -lcrypt | |
35 | CPPFLAGS = `dpkg-buildflags --get CPPFLAGS` | |
36 | ||
426e7833 | 37 | COMMON_CONFOPTS=--prefix=/usr --mandir=\$${prefix}/share/man \ |
38 | --with-authdaemonvar=/var/run/courier/authdaemon \ | |
940be80e | 39 | CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \ |
426e7833 | 40 | --sysconfdir=/etc/courier \ |
41 | --with-pkgconfdir=/etc/courier \ | |
42 | --libexecdir=\$${prefix}/lib/courier \ | |
43 | --datadir=\$${prefix}/lib/courier \ | |
44 | --localstatedir=/var/lib/courier \ | |
45 | --sbindir=\$${exec_prefix}/sbin \ | |
46 | --with-mailuser=daemon \ | |
47 | --with-mailgroup=daemon \ | |
48 | --without-socks \ | |
49 | --with-authpam \ | |
50 | --with-authpipe \ | |
51 | --without-authpwd \ | |
52 | --with-authmysql \ | |
53 | --with-mysql-includes=/usr/include/mysql \ | |
54 | --with-mysql-libs=/usr/lib \ | |
55 | --with-authmysqlrc=/etc/courier/authmysqlrc \ | |
56 | --with-authpgsql \ | |
57 | --with-pgsql-includes=`pg_config --includedir` \ | |
58 | --with-pgsql-libs=/usr/lib \ | |
59 | --with-authpgsqlrc=/etc/courier/authpgsqlrc \ | |
60 | --without-authshadow \ | |
426e7833 | 61 | --with-authdaemonvar=/var/run/courier/authdaemon \ |
62 | --with-authldap \ | |
63 | --with-authldaprc=/etc/courier/authldaprc \ | |
64 | --with-authcram \ | |
65 | --with-db=gdbm \ | |
66 | --without-fcgi \ | |
67 | --with-htmllibdir=/usr/share/sqwebmail \ | |
68 | --with-ispell=/usr/bin/ispell \ | |
69 | --enable-userdb \ | |
70 | --enable-syslog=1 \ | |
71 | --disable-root-check | |
72 | ||
73 | check: | |
74 | dh_testdir | |
426e7833 | 75 | chmod +x debian/courier_perms |
76 | ||
77 | build: check | |
78 | # create a list of files that currently exists | |
79 | if [ ! -f stamp-build ]; then \ | |
80 | if [ -d /usr/include/postgresql/8.0/libpq_fe.h ]; then \ | |
940be80e | 81 | ./configure $(COMMON_CONFOPTS) \ |
426e7833 | 82 | --with-postgresql-includes=/usr/include/postgresql/8.0 \ |
83 | && $(MAKE) && touch stamp-build; \ | |
84 | else \ | |
940be80e | 85 | ./configure $(COMMON_CONFOPTS) \ |
426e7833 | 86 | --with-postgresql-includes=/usr/include/postgresql \ |
87 | && $(MAKE) && touch stamp-build; \ | |
88 | fi \ | |
89 | fi | |
90 | ||
91 | stamp-build: build | |
92 | ||
93 | clean: check | |
94 | dh_testroot | |
95 | rm -f stamp-build stamp-install | |
96 | ||
97 | # Add here commands to clean up after the build process. | |
940be80e | 98 | [ ! -f Makefile ] || $(MAKE) distclean |
426e7833 | 99 | dh_clean |
100 | ||
101 | install: check stamp-build | |
102 | dh_testroot | |
103 | dh_clean -k | |
104 | dh_installdirs | |
105 | ||
106 | # Add here commands to install the package into debian/tmp. | |
940be80e SHR |
107 | $(MAKE) DESTDIR=$(BUILD) install |
108 | ||
109 | sed -i "/dependency_libs/ s/'.*'/''/" `find $(BUILD) -name '*.la'` | |
426e7833 | 110 | |
111 | # (cd $(BUILD)/usr/lib/courier/courier-authlib/changepwd; ln -fs ../../authsystem.passwd ./authsystem.passwd) | |
112 | ||
113 | # Install authentification test program | |
114 | # mv $(BUILD)/usr/sbin/authtest $(BUILD)/usr/sbin/courierauthtest | |
115 | ||
116 | # Additional manpages | |
117 | pod2man --center='Debian GNU/Linux Documentation' --release='Debian GNU/Linux '`cat /etc/debian_version` --section=8 debian/authenumerate.pod > $(BUILD)/usr/share/man/man8/authenumerate.8 | |
118 | # pod2man --center='Debian GNU/Linux Documentation' --release='Debian GNU/Linux '`cat /etc/debian_version` --section=8 debian/courierauthtest.pod > $(BUILD)/usr/share/man/man8/courierauthtest.8 | |
119 | ||
120 | # Symlinks for userdb manpages | |
0fde1ce3 | 121 | (cd $(BUILD)/usr/share/man/man8 && ln -s makeuserdb.8.gz pw2userdb.8.gz) |
426e7833 | 122 | |
123 | dh_installdocs | |
124 | # - change authentification default settings | |
125 | perl -pe 's/^authmodulelist=".*?"/authmodulelist="authpam"/' $(BUILD)/etc/courier/authdaemonrc.dist > $(BUILD)/etc/courier/authdaemonrc | |
126 | # - change default LDAP server | |
127 | perl -pe 's/^(LDAP_SERVER\s+)ldap.example.com/$$1localhost/' $(BUILD)/etc/courier/authldaprc.dist > $(BUILD)/etc/courier/authldaprc | |
128 | # - change default MySQL server | |
129 | perl -pe 's/^(MYSQL_SERVER\s+)mysql.example.com/$$1localhost/;s%^(#?\s*MYSQL_SOCKET\s+)/.*%$$1/var/run/mysqld/mysqld.sock%' $(BUILD)/etc/courier/authmysqlrc.dist > $(BUILD)/etc/courier/authmysqlrc | |
130 | mv $(BUILD)/etc/courier/authpgsqlrc.dist $(BUILD)/etc/courier/authpgsqlrc | |
131 | rm $(BUILD)/etc/courier/*.dist | |
132 | ||
940be80e SHR |
133 | # Lintian overrides |
134 | mkdir -p $(BUILD)/usr/share/lintian/overrides | |
135 | for package in courier-authdaemon courier-authlib-ldap courier-authlib-mysql courier-authlib-postgresql; do \ | |
136 | cp debian/$$package.lintian $(BUILD)/usr/share/lintian/overrides/$$package; \ | |
137 | done | |
138 | ||
426e7833 | 139 | # This seems to be necessary for building in fakeroot |
140 | # environment (otherwise dh_strip fails) | |
141 | # set all binaries to 755, by checking if user has x-bit | |
142 | # debian/courier_perms will set the right permissions | |
143 | find $(BUILD) -perm -u+x -type f | xargs chmod u+rwx,go+rx | |
144 | ||
145 | dh_movefiles | |
146 | ||
147 | # Check if all files have moved out | |
148 | if [ `find $(BUILD) -not -type d | wc -l` -ne 0 ]; then find $(BUILD) -not -type d; echo "File(s) found not belonging to any package, please contact maintainer"; exit 1; fi | |
149 | ||
150 | touch stamp-install | |
151 | ||
152 | stamp-install: install | |
153 | ||
154 | # Build architecture-independent files here. | |
155 | binary-indep: stamp-build stamp-install | |
156 | dh_testdir | |
157 | dh_testroot | |
158 | # dh_installdebconf -i | |
159 | dh_installexamples -i | |
160 | dh_installmenu -i | |
161 | dh_installinit -i | |
162 | dh_installinfo -i | |
163 | dh_installchangelogs -i | |
164 | dh_strip -i | |
165 | dh_link -i | |
166 | dh_compress -i | |
167 | dh_fixperms -i | |
168 | debian/courier_perms -i | |
169 | dh_installdeb -i | |
170 | dh_perl -i | |
171 | dh_shlibdeps -i | |
172 | dh_gencontrol -i | |
173 | dh_md5sums -i | |
174 | dh_builddeb -i | |
175 | ||
940be80e SHR |
176 | calibdir = debian/courier-authlib/usr/lib/courier-authlib |
177 | ||
426e7833 | 178 | # Build architecture-dependent files here. |
179 | binary-arch: stamp-build stamp-install | |
180 | dh_testdir | |
181 | dh_testroot | |
182 | # dh_installdebconf -a | |
183 | dh_installexamples -a | |
184 | dh_installmenu -a | |
185 | dh_installinit -a | |
186 | dh_installcron -a | |
187 | dh_installinfo -a | |
188 | dh_installchangelogs -a | |
189 | dh_strip -a | |
190 | dh_link -a | |
191 | dh_compress -a | |
192 | dh_fixperms -a | |
193 | debian/courier_perms -a | |
426e7833 | 194 | dh_perl -a |
940be80e SHR |
195 | dh_makeshlibs -pcourier-authlib -- -Pdebian/courier-authlib -e$(calibdir)/libcourier*.so |
196 | dh_shlibdeps -a -l$(calibdir) | |
197 | dh_installdeb -a | |
426e7833 | 198 | dh_gencontrol -- -VRELUP="$(RELUP)" |
199 | dh_md5sums -a | |
200 | dh_builddeb -a | |
201 | ||
202 | binary: binary-arch | |
203 | ||
204 | .PHONY: check build clean binary-arch binary install |