tags 397902 patch
thanks
On Fri, Nov 10, 2006 at 12:03:37PM +0100, Lucas Nussbaum wrote:
> Package: seq24
> Version: 0.8.6-1
> Severity: serious
> Justification: FTBFS on i386, very likely to fail everywhere else
> Usertags: grid5000
> During a rebuild of all packages in etch, I discovered that your package
> failed to build on i386.
> Making all in src
> make[2]: Entering directory
> `/build/root/seq24-0.8.6/build-tree/seq24-0.8.6/src'
> Makefile:312: *** missing separator. Stop.
In the case when this fails, the contents of src/Makefile are (lines 311
ff.):
.cpp.o:
@am__fastdepCXX_TRUE@ if $(CXXCOMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo"
-c -o $@ $<; \
@am__fastdepCXX_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else
rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
[EMAIL PROTECTED]@ source='$<' object='$@' libtool=no
[EMAIL PROTECTED]@ DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp)
@am__fastdepCXX_FALSE@ $(CXXCOMPILE) -c -o $@ $<
The syntax error here is obvious. Why does it happen? Well, debian/rules
is set up to explicitly call automake-1.9, but not autoconf, which means the
configure script is out of sync with the generated Makefile.in's that it's
asked to act upon. In fact, cdbs gives a warning about this in the log:
debian/rules build
/usr/share/cdbs/1/rules/buildcore.mk:68: Parsing seq24-0.8.6.tar.gz...
/usr/share/cdbs/1/class/autotools-files.mk:32: WARNING:
DEB_AUTO_UPDATE_AUTOMAKE will eventualy stop impliing DEB_AUTO_UPDATE_ACLOCAL.
If you meant aclocal.m4 to be re-generated, please use DEB_AUTO_UPDATE_ACLOCAL.
/usr/share/cdbs/1/class/autotools-files.mk:45: WARNING: DEB_AUTO_UPDATE_ACLOCAL
requires DEB_AUTO_UPDATE_AUTOCONF.
So the only way you end up with usable Makefiles is if something *else*
causes autoconf to be rerun, which makes the build of seq24 depend entirely
on timestamps of the files as they're unpacked.
The attached patch should address this.
Cheers,
--
Steve Langasek Give me a lever long enough and a Free OS
Debian Developer to set it on, and I can move the world.
[EMAIL PROTECTED] http://www.debian.org/
diff -u seq24-0.8.6/debian/changelog seq24-0.8.6/debian/changelog
--- seq24-0.8.6/debian/changelog
+++ seq24-0.8.6/debian/changelog
@@ -1,3 +1,14 @@
+seq24 (0.8.6-1.1) unstable; urgency=high
+
+ * Non-maintainer upload.
+ * High-urgency upload for RC bugfix.
+ * Call autoconf *explicitly* when building, to ensure that our
+ configure script is built from macros that are reliably consistent
+ with the Makefile.in's generated by automake. Closes: #397902.
+ * Add autoconf to the build-depends for the above.
+
+ -- Steve Langasek <[EMAIL PROTECTED]> Fri, 10 Nov 2006 21:10:19 -0800
+
seq24 (0.8.6-1) unstable; urgency=low
* New upstream version
diff -u seq24-0.8.6/debian/control seq24-0.8.6/debian/control
--- seq24-0.8.6/debian/control
+++ seq24-0.8.6/debian/control
@@ -2,7 +2,7 @@
Section: sound
Priority: optional
Maintainer: Guenter Geiger (Debian/GNU) <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>> 4.0.0), automake1.9, autotools-dev, cdbs,
libgtkmm-2.4-dev, libasound2-dev, libjack0.100.0-dev | libjack-dev
+Build-Depends: debhelper (>> 4.0.0), automake1.9, autoconf, autotools-dev,
cdbs, libgtkmm-2.4-dev, libasound2-dev, libjack0.100.0-dev | libjack-dev
Standards-Version: 3.6.2
Package: seq24
diff -u seq24-0.8.6/debian/rules seq24-0.8.6/debian/rules
--- seq24-0.8.6/debian/rules
+++ seq24-0.8.6/debian/rules
@@ -6,6 +6,8 @@
build-tree/$(DEB_TAR_SRCDIR)/RTC
DEB_AUTO_UPDATE_AUTOMAKE := 1.9
+DEB_AUTO_UPDATE_ACLOCAL := 1.9
+DEB_AUTO_UPDATE_AUTOCONF := 2.50
include /usr/share/cdbs/1/rules/tarball.mk
include /usr/share/cdbs/1/rules/simple-patchsys.mk