Package: ntp
Version: 1:4.2.6.p5+dfsg-3
Severity: normal
Tags: patch pending

Dear maintainer,

ntp is one of hundreds of packages which does not build on new
architectures (such as arm64, mips64el, ppc64el, or1k) because its
autoconf files are out of date.

The existing package did try to fix this by updating config.sub/guess,
but it only did one of the two copies in the package - the ones in
sntp subdir were still out of date, and break the build.

Discussion about why this is best fixed for the general case by
reautoconfing is here: https://wiki.debian.org/Autoreconf

Here is a patch to do this for ntp. Also attached is a patch for the
less-intrusive autotools-dev only update of config.{sub,guess} which
updates all the config.sub/guess copies, and fixes this for arm64, but
possibly not the other architectures.

The patch is generally straightforward but there are a couple of
caveats:

For some reason this package defines the various tools as ':' to stop
them running. I don't know what the purpose of this was, and after
autoreconfing the package the build is fine and the same files are
produced as before so there is no obvious reason why there might be a
problem, but it is possible there there is some subtle issue here.
It's proably just old cruft, but maybe you know different?

I also had to delete Makefile and sntp/Makefile explicitly to avoid a
failure in recursive-clean. I expect there is a neater, upstream, way,
but this works.

Because of the above issues, I have included the simpler and totally
clean autotools-dev patch in case you prefer to use that, but as the
above page explains autoreconfing is generally best, and as I can't
see any actual problems, that's what I've NMued.

Oddly, no bug about this has already been filed (that I could find) so
I'm filing this now, whilst also uploading a fixed package to
delayed/7. Please feel free to tell me if I should delay it longer.

The NMU is versioned as 1:4.2.6.p5+dfsg-3.1). 

Regards.
-- 
Wookey
diff -Nru ntp-4.2.6.p5+dfsg/debian/changelog ntp-4.2.6.p5+dfsg/debian/changelog
--- ntp-4.2.6.p5+dfsg/debian/changelog	2013-05-20 15:18:52.000000000 +0100
+++ ntp-4.2.6.p5+dfsg/debian/changelog	2014-07-16 17:49:08.000000000 +0100
@@ -1,3 +1,10 @@
+ntp (1:4.2.6.p5+dfsg-3.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Use dh-autoreconf to ensure configurey is updated for new architectures
+
+ -- Wookey <woo...@debian.org>  Tue, 15 Jul 2014 11:54:21 +0800
+
 ntp (1:4.2.6.p5+dfsg-3) unstable; urgency=low
 
   * Look for <openssl/opensslv.h> rather than <openssl/opensslconf.h>, which
diff -Nru ntp-4.2.6.p5+dfsg/debian/control ntp-4.2.6.p5+dfsg/debian/control
--- ntp-4.2.6.p5+dfsg/debian/control	2013-05-20 15:13:34.000000000 +0100
+++ ntp-4.2.6.p5+dfsg/debian/control	2014-07-16 17:49:08.000000000 +0100
@@ -3,7 +3,7 @@
 Priority: optional
 Maintainer: Debian NTP Team <pkg-ntp-maintain...@lists.alioth.debian.org>
 Uploaders: Bdale Garbee <bd...@gag.com>, Peter Eisentraut <pet...@debian.org>, Kurt Roeckx <k...@roeckx.be>
-Build-Depends: autotools-dev, debhelper (>= 6), libedit-dev, libcap2-dev [linux-any], libssl-dev (>= 1.0.0e-1), autogen (>= 1:5.11)
+Build-Depends: dh-autoreconf, debhelper (>= 6), libedit-dev, libcap2-dev [linux-any], libssl-dev (>= 1.0.0e-1), autogen (>= 1:5.11)
 Build-Conflicts: libavahi-compat-libdnssd-dev, libwww-dev, libwww-ssl-dev
 Standards-Version: 3.9.3
 Homepage: http://support.ntp.org/
diff -Nru ntp-4.2.6.p5+dfsg/debian/rules ntp-4.2.6.p5+dfsg/debian/rules
--- ntp-4.2.6.p5+dfsg/debian/rules	2013-05-20 15:13:34.000000000 +0100
+++ ntp-4.2.6.p5+dfsg/debian/rules	2014-07-16 17:49:08.000000000 +0100
@@ -1,11 +1,5 @@
 #!/usr/bin/make -f
 
-# hacks to avoid running these things during the build
-export ACLOCAL    = : aclocal
-export AUTOCONF   = : autoconf
-export AUTOMAKE   = : automake
-export AUTOHEADER = : autoheader
-
 DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
 
 CPPFLAGS = $(shell dpkg-buildflags --get CPPFLAGS) -D_GNU_SOURCE
@@ -18,7 +12,7 @@
 	# hurd does not provided the system calls needed for ntpd to work.
 	exit 1
 endif
-	cp /usr/share/misc/config.guess /usr/share/misc/config.sub .
+	dh_autoreconf
 	./configure CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' \
 		--prefix=/usr \
 		--enable-all-clocks --enable-parse-clocks --enable-SHM \
@@ -44,7 +38,8 @@
 	dh_testroot
 	rm -f build-stamp 
 	[ ! -f Makefile ] || $(MAKE) -k distclean
-	rm -f config.guess config.sub
+	dh_autoreconf_clean
+	rm -f Makefile sntp/Makefile
 	dh_clean
 
 install: build-stamp
diff -Nru ntp-4.2.6.p5+dfsg/debian/changelog ntp-4.2.6.p5+dfsg/debian/changelog
--- ntp-4.2.6.p5+dfsg/debian/changelog	2013-05-20 14:18:52.000000000 +0000
+++ ntp-4.2.6.p5+dfsg/debian/changelog	2014-07-14 18:32:05.000000000 +0000
@@ -1,3 +1,10 @@
+ntp (1:4.2.6.p5+dfsg-3.1) unstable; urgency=low
+
+  * Non-maintainer upload.
+  * Use autotools-dev to ensure configurey is updated for new architectures
+
+ -- Chen Baozi <baoz...@gmail.com>  Fri, 13 Jun 2014 11:54:21 +0800
+
 ntp (1:4.2.6.p5+dfsg-3) unstable; urgency=low
 
   * Look for <openssl/opensslv.h> rather than <openssl/opensslconf.h>, which
diff -Nru ntp-4.2.6.p5+dfsg/debian/rules ntp-4.2.6.p5+dfsg/debian/rules
--- ntp-4.2.6.p5+dfsg/debian/rules	2013-05-20 14:13:34.000000000 +0000
+++ ntp-4.2.6.p5+dfsg/debian/rules	2014-07-14 18:29:12.000000000 +0000
@@ -18,7 +18,7 @@
 	# hurd does not provided the system calls needed for ntpd to work.
 	exit 1
 endif
-	cp /usr/share/misc/config.guess /usr/share/misc/config.sub .
+	dh_autotools-dev_updateconfig
 	./configure CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' \
 		--prefix=/usr \
 		--enable-all-clocks --enable-parse-clocks --enable-SHM \
@@ -44,7 +44,7 @@
 	dh_testroot
 	rm -f build-stamp 
 	[ ! -f Makefile ] || $(MAKE) -k distclean
-	rm -f config.guess config.sub
+	dh_autotools-dev_restoreconfig
 	dh_clean
 
 install: build-stamp

Reply via email to