summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Beckmann <anbe@debian.org>2014-05-22 19:25:22 +0200
committerAndreas Beckmann <anbe@debian.org>2014-05-22 19:25:22 +0200
commitcf269a6bb776c1f8521d9c488374ab6f019abc98 (patch)
treec6764f10e77ba8f28dcfc62c71b6df7036f68006
parent9484a447e740a770434ed553e0c3e63f0a3504d7 (diff)
downloadsendmail-cf269a6bb776c1f8521d9c488374ab6f019abc98.tar.gz
improve debian/control handling
move control.m4.in to a more sane location abort a build if debian/control gets updated
-rw-r--r--debian/changelog1
-rw-r--r--debian/configure.ac15
-rw-r--r--debian/control.m4.in (renamed from debian/build/debian/control.m4.in)0
-rwxr-xr-xdebian/rules8
4 files changed, 16 insertions, 8 deletions
diff --git a/debian/changelog b/debian/changelog
index e144f0e..ac7ddaf 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -10,6 +10,7 @@ sendmail (8.14.4-6) UNRELEASED; urgency=medium
* Apply manpage corrections from Ubuntu. (Closes: #747551)
* Remove outdated documentation and other cruft.
* Don't re-generate d/changelog during build.
+ * Abort build if debian/control got regenerated and differs.
* Create directories during 'd/rules install' instead of using .dirs.
-- Andreas Beckmann <anbe@debian.org> Tue, 22 Apr 2014 17:01:07 +0200
diff --git a/debian/configure.ac b/debian/configure.ac
index df94fc4..b5625c1 100644
--- a/debian/configure.ac
+++ b/debian/configure.ac
@@ -1671,10 +1671,17 @@ AC_CONFIG_FILES([build/update_chaos],[
chmod ug+x ./build/update_chaos;
(cd ../ && ./debian/build/update_chaos);])
AC_CONFIG_FILES([build/site.config.m4])
-AC_CONFIG_FILES([build/debian/control.m4],[
- echo 'creating ./control';
- m4 ./build/debian/control.m4 > ./build/debian/control;
- cp ./build/debian/control ./;])
+AC_CONFIG_FILES([control.m4],[
+ m4 control.m4 > control.new;
+ if cmp control control.new; then
+ echo "*** debian/control was up-to-date ***";
+ rm -f control.new;
+ else
+ echo "*** debian/control was updated, aborting, please restart your build ***";
+ mv control.new control;
+ exit 1;
+ fi;
+ ])
AC_CONFIG_FILES([libmilter${sm_libmilter_version}.dirs:libmilter.dirs.in])
AC_CONFIG_FILES([libmilter${sm_libmilter_version}.lintian-overrides:libmilter.lintian-overrides.in])
AC_CONFIG_FILES([libmilter${sm_libmilter_version}.preinst:libmilter.preinst.in])
diff --git a/debian/build/debian/control.m4.in b/debian/control.m4.in
index 46ea6ec..46ea6ec 100644
--- a/debian/build/debian/control.m4.in
+++ b/debian/control.m4.in
diff --git a/debian/rules b/debian/rules
index 0993c5a..2bb21bb 100755
--- a/debian/rules
+++ b/debian/rules
@@ -132,7 +132,7 @@ configure:: common-configure-arch common-configure-indep
#-------------
-# Maintainer only rule... refresh debian/configure and debian/*/Makefile.in
+# Maintainer only rule... refresh debian/configure, debian/*/Makefile.in, and debian/control
AUTOFOODUMMY = debian/AUTHORS debian/COPYING debian/ChangeLog debian/INSTALL debian/NEWS debian/README
AUTOMAKEARGS ?= --force
AUTOMAKEARGS ?= --force --force-missing --add-missing --copy
@@ -144,9 +144,9 @@ refresh-debian-configure:
cd debian && aclocal -I ./build
cd debian && autoconf
cd debian && automake $(AUTOMAKEARGS)
- # regenerate more
+ # regenerate more, run twice in case debian/control gets updated
$(RM) debian/stamp-autotools
- debian/rules configure
+ debian/rules configure || debian/rules configure
# cleanup
fakeroot debian/rules clean
$(RM) debian/aclocal.m4
@@ -257,7 +257,7 @@ clean::
debian/config.log \
debian/config.status \
debian/*.debhelper \
- debian/build/debian/control \
+ debian/control.new \
;
for file in tmp ${DEB_PACKAGES};do \
$(RM) -r debian/$$file; \