[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#599082: unblock: neverball/1.5.4-3



Package: release.debian.org
Severity: normal
User: release.debian.org@packages.debian.org
Usertags: freeze-exception


Hi!

Would you please unblock neverball/1.5.4-3 as it "fixes" #598614, a FTBFS on mips?

I tried to keep the changes (full debdiff attached) minimal:

$ debdiff neverball_1.5.4-2.dsc neverball_1.5.4-3.dsc |diffstat
 debian/patches/sepperate-data-and-bin |   13 ++++++++++
 debian/patches/series                 |    1 
 neverball-1.5.4/debian/changelog      |    8 ++++++
 neverball-1.5.4/debian/control        |    2 -
 neverball-1.5.4/debian/rules          |   44
++++++++++++++++++++++++++--------
 5 files changed, 57 insertions(+), 11 deletions(-)


I should mention, that this upload doesn't really fix the FTBFS.  Building
neverball on mips works, but upstream doesn't allow sepperation of builind
the data files and the actuall binaries, and building the data files does
take ages on mips.  I could successfully build 1.5.4-2  on gabrielli, but
it more than two days.  During the build, nothing get's printed, so recent
last binNMU got terminated.

The fix now sepperates the build of the executables and the data; allthough
the resulting debian/rules looks strange, I tested it quite carefully and
it works.

Best regards,
  Alexander


-- System Information:
Debian Release: 5.0.6
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-2-xen-686 (SMP w/1 CPU core)
Locale: LANG=de_DE@euro, LC_CTYPE=de_DE@euro (charmap=ISO-8859-15) (ignored: LC_ALL set to de_DE@euro)
Shell: /bin/sh linked to /bin/bash
diff -u neverball-1.5.4/debian/rules neverball-1.5.4/debian/rules
--- neverball-1.5.4/debian/rules
+++ neverball-1.5.4/debian/rules
@@ -4,6 +4,8 @@
 # Uncomment this to turn on verbose mode.
 #export DH_VERBOSE=1
 
+include /usr/share/quilt/quilt.make
+
 CFLAGS = -Wall -g
 
 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
@@ -16,39 +18,61 @@
 	INSTALL_PROGRAM += -s
 endif
 
-build: build-stamp
-build-stamp:
+build: build-arch build-indep
+
+build-arch: build-arch-stamp
+build-arch-stamp: patch
 	dh_testdir
 	# Set HOME to an existent directory as a workaround for #544835. Note that
 	# HOME isn't actually used, but some buildds set it to a non-existent
 	# directory, and PhysicsFS currently fails if the directory doesn't exist
 	# (see #553174).
 	$(MAKE) DATADIR=/usr/share/games/neverball LOCALEDIR=/usr/share/locale \
-	        HOME=$(CURDIR)
+	        HOME=$(CURDIR) executables
 	# Rename icons for .desktop files.
 	cp dist/neverball_128.png dist/neverball.png
 	cp dist/neverputt_128.png dist/neverputt.png
 	touch $@
 
-clean:
+build-indep: build-indep-stamp
+build-indep-stamp: patch
+	dh_testdir
+	# we build in binary-indep, as "dpkg-buildpackage -B" insist on
+	# calling the general build target
+	touch $@
+
+clean: unpatch
 	dh_testdir
 	dh_testroot
-	rm -f build-stamp
+	rm -f build-arch-stamp build-indep-stamp
 	[ ! -f Makefile ] || $(MAKE) clean
 	rm -f dist/neverball.png dist/neverputt.png
 	dh_clean
 
-install: build
+install: install-arch
+
+install-arch:
 	dh_testdir
 	dh_testroot
 	dh_clean -k
-	dh_installdirs
-	dh_install
+	dh_installdirs -a
+	dh_install -a
 
 # Build architecture-independent files here.
-binary-indep: build install
+binary-indep: build-indep
 	dh_testdir -i
 	dh_testroot -i
+	# Set HOME to an existent directory as a workaround for #544835. Note that
+	# HOME isn't actually used, but some buildds set it to a non-existent
+	# directory, and PhysicsFS currently fails if the directory doesn't exist
+	# (see #553174).
+	$(MAKE) DATADIR=/usr/share/games/neverball LOCALEDIR=/usr/share/locale \
+	        HOME=$(CURDIR) data
+	dh_testdir
+	dh_testroot
+	dh_clean -k
+	dh_installdirs -i
+	dh_install -i
 	dh_installchangelogs -i CHANGES
 	dh_installdocs -i
 	dh_link -i
@@ -60,7 +84,7 @@
 	dh_builddeb -i
 
 # Build architecture-dependent files here.
-binary-arch: build install
+binary-arch: build-arch install-arch
 	dh_testdir -a
 	dh_testroot -a
 	dh_installchangelogs -a CHANGES
diff -u neverball-1.5.4/debian/control neverball-1.5.4/debian/control
--- neverball-1.5.4/debian/control
+++ neverball-1.5.4/debian/control
@@ -5,7 +5,7 @@
 Uploaders: Alexander Reichle-Schmehl <tolimar@debian.org>,
  Jordà Polo <jorda@ettin.org>, Tamas SZERB <toma@rulez.org>
 Build-Depends: debhelper (>= 5), libsdl1.2-dev, libsdl-ttf2.0-dev,
- libvorbis-dev, libpng12-dev, libjpeg62-dev, libphysfs-dev
+ libvorbis-dev, libpng12-dev, libjpeg62-dev, libphysfs-dev, quilt
 Standards-Version: 3.8.3
 Homepage: http://neverball.org/
 Vcs-Svn: svn://svn.debian.org/svn/pkg-games/packages/trunk/neverball/
diff -u neverball-1.5.4/debian/changelog neverball-1.5.4/debian/changelog
--- neverball-1.5.4/debian/changelog
+++ neverball-1.5.4/debian/changelog
@@ -1,3 +1,11 @@
+neverball (1.5.4-3) unstable; urgency=low
+
+  * Don't build data files every time (Closes: #598614)
+    * Patch upstram Makefile to provide seppereta rules for data and executables
+    * Use them to build arch:all and arch:any packages
+
+ -- Alexander Reichle-Schmehl <tolimar@debian.org>  Mon, 04 Oct 2010 08:22:25 +0000
+
 neverball (1.5.4-2) unstable; urgency=low
 
   * debian/rules: Set HOME to an existing directory as a temporary workaround
only in patch2:
unchanged:
--- neverball-1.5.4.orig/debian/patches/series
+++ neverball-1.5.4/debian/patches/series
@@ -0,0 +1 @@
+sepperate-data-and-bin
only in patch2:
unchanged:
--- neverball-1.5.4.orig/debian/patches/sepperate-data-and-bin
+++ neverball-1.5.4/debian/patches/sepperate-data-and-bin
@@ -0,0 +1,13 @@
+--- a/Makefile
++++ b/Makefile
+@@ -311,6 +311,10 @@ DESKTOPS := $(basename $(wildcard dist/*
+ 
+ all : $(BALL_TARG) $(PUTT_TARG) $(MAPC_TARG) sols locales desktops
+ 
++data : sols locales
++
++executables: $(BALL_TARG) $(PUTT_TARG) $(MAPC_TARG) desktops
++
+ $(BALL_TARG) : $(BALL_OBJS)
+ 	$(CC) $(ALL_CFLAGS) -o $(BALL_TARG) $(BALL_OBJS) $(LDFLAGS) $(ALL_LIBS)
+ 

Reply to: