Control: -1 severity important

On Tue, Aug 12, 2014 at 11:34:47AM -0300, Breno Leitao wrote:
> Source: popt
> Version: 1.16-8
> Severity: normal
> Tags: patch
> User: [email protected]
> Usertags: ppc64el
> 
> Dear Maintainer,
> 
> Currently popt fails to build on ppc64el platform because it fails to 
> recognize
> that ppc64el supports ppc64el platform.  The root cause is that libtool and
> configure is outdated in the package, and needs to be updated. Take a look at
> the build log:
> 
> http://ftp.unicamp.br/pub/ppc64el/debian/buildd-upstream/build_logs/logs/popt_1.16-8_ppc64el.build
> 
> I tried to update this package using dh-autoreconf, but it is failing hard, 
> so,
> I took a sinpler way and create a patch to add ppc64el bits into configure and
> libtool files.
> 

Alternatively, please find attached a patch that uses dh-autoreconf,
after fixing configure.ac and Makefile.am. I had to also fix the patch
from #757935, so it looks like it was not used correctly before.

Please also note that we are currently bootstrapping the ppc64el port in
Debian, and that this package will become a blocker very soon (that's
why I increased the severity of the bug). Therefore it would be nice if
you can upload popt with this fix asap. Thanks in advance.

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
[email protected]                 http://www.aurel32.net
diff -Nru popt-1.16/debian/control popt-1.16/debian/control
--- popt-1.16/debian/control	2013-11-03 21:27:44.000000000 +0100
+++ popt-1.16/debian/control	2014-08-19 13:52:29.000000000 +0200
@@ -2,7 +2,7 @@
 Section: devel
 Priority: optional
 Maintainer: Paul Martin <[email protected]>
-Build-Depends: debhelper (>> 9), gettext (>= 0.18.1.1-8), autotools-dev
+Build-Depends: debhelper (>> 9), gettext (>= 0.18.1.1-8), dh-autoreconf
 Homepage: http://rpm5.org/
 Standards-Version: 3.9.3
 
diff -Nru popt-1.16/debian/patches/728596-secure-getenv.patch popt-1.16/debian/patches/728596-secure-getenv.patch
--- popt-1.16/debian/patches/728596-secure-getenv.patch	2013-11-03 21:07:03.000000000 +0100
+++ popt-1.16/debian/patches/728596-secure-getenv.patch	2014-08-19 13:22:43.000000000 +0200
@@ -38,7 +38,7 @@
 +#if !defined(__LCLINT__)
 +#if defined(HAVE_SECURE_GETENV)
 +#define	getenv(_s)	secure_getenv(_s)
-+#elseif defined(HAVE___SECURE_GETENV)
++#elif defined(HAVE___SECURE_GETENV)
  #define	getenv(_s)	__secure_getenv(_s)
  #endif
 +#endif
diff -Nru popt-1.16/debian/patches/757935-autoreconf.patch popt-1.16/debian/patches/757935-autoreconf.patch
--- popt-1.16/debian/patches/757935-autoreconf.patch	1970-01-01 01:00:00.000000000 +0100
+++ popt-1.16/debian/patches/757935-autoreconf.patch	2014-08-19 14:02:14.000000000 +0200
@@ -0,0 +1,27 @@
+AM_C_PROTOTYPES was only useful for very ancient C compilers that were 
+not ANSI C compliant. It has been removed from automake, this commit 
+shows the removal and details about the macro:
+
+http://git.savannah.gnu.org/cgit/automake.git/commit/?id=0cbcf393dbdaa2ff36b11cf2516675e78eada49f
+
+--- popt-1.16.orig/Makefile.am
++++ popt-1.16/Makefile.am
+@@ -37,7 +37,7 @@ noinst_SCRIPTS = testit.sh
+ TESTS_ENVIRONMENT = \
+ test1="$(top_builddir)/test1"
+ 
+-TESTS = $(top_srcdir)/testit.sh
++TESTS = testit.sh
+ 
+ include_HEADERS = popt.h
+ 
+--- popt-1.16.orig/configure.ac
++++ popt-1.16/configure.ac
+@@ -46,7 +46,6 @@ AC_GCC_TRADITIONAL
+ AC_SYS_LARGEFILE
+ 
+ AC_ISC_POSIX
+-AM_C_PROTOTYPES
+ 
+ AC_CHECK_HEADERS(float.h fnmatch.h glob.h langinfo.h libintl.h mcheck.h unistd.h)
+ 
diff -Nru popt-1.16/debian/patches/series popt-1.16/debian/patches/series
--- popt-1.16/debian/patches/series	2013-11-03 20:51:19.000000000 +0100
+++ popt-1.16/debian/patches/series	2014-08-19 13:22:11.000000000 +0200
@@ -4,3 +4,4 @@
 217602.patch
 356669.patch
 728596-secure-getenv.patch
+757935-autoreconf.patch
diff -Nru popt-1.16/debian/rules popt-1.16/debian/rules
--- popt-1.16/debian/rules	2013-11-03 21:30:28.000000000 +0100
+++ popt-1.16/debian/rules	2014-08-19 13:54:39.000000000 +0200
@@ -43,27 +43,27 @@
 objdir = $(CURDIR)/obj-$(DEB_HOST_GNU_TYPE)
 objdir_udeb = $(objdir)-udeb
 
+autoreconf-stamp:
+	dh_autoreconf
+	touch $@
+
 configure: configure-deb-stamp configure-udeb-stamp
-configure-deb-stamp:
+configure-deb-stamp: autoreconf-stamp
 	dh_testdir
-	dh_autotools-dev_updateconfig
 	# make build dir
 	mkdir $(objdir)
 	# Add here commands to configure the package.
 	cd $(objdir) && \
 	../configure --libdir=/usr/lib/$(DEB_HOST_MULTIARCH) --prefix=/usr --mandir=/usr/share/man --enable-shared $(CROSS)
-	dh_autotools-dev_restoreconfig
 	touch $@
 
-configure-udeb-stamp:
+configure-udeb-stamp: autoreconf-stamp
 	dh_testdir
-	dh_autotools-dev_updateconfig
 	# make build dir
 	mkdir $(objdir_udeb)
 	# Add here commands to configure the package.
 	cd $(objdir_udeb) && \
 	../configure --prefix=/usr --mandir=/usr/share/man --enable-shared $(CROSS)
-	dh_autotools-dev_restoreconfig
 	touch $@
 
 build: build-arch build-indep
@@ -85,7 +85,7 @@
 clean:
 	dh_testdir
 	dh_testroot
-	rm -f build-stamp configure-stamp config.log
+	rm -f autoreconf-stamp uild-stamp configure-stamp config.log
 	rm -f config.log
 	rm -f build-arch-deb-stamp build-arch-udeb-stamp
 	rm -f configure-deb-stamp configure-udeb-stamp
@@ -105,6 +105,7 @@
 	# Add here commands to clean up after the build process.
 	[ ! -f Makefile ] || $(MAKE) distclean
 
+	dh_autoreconf_clean
 	dh_clean
 	rm -rf $(CURDIR)/tmp
 

Reply via email to