For the latter two options, please see a patch at
http://launchpadlibrarian.net/222938828/boats_201307-1build2_201307-1ubuntu1.diff.gz
I went to apply your patch in raspbian but I found further work was
needed to get a sucessful build. Launchpad shows it also failing in ubuntu.
The first failure I got was a "no targets specified and no makefile
found" error.
Further investigation showed that your patch had an unexplained new file
debian/boats.debhelper.log . I presume this was caused by a broken clean
target. I added a line to debian/rules to remove it in the clean target.
The build then failed with
gifwriter.cpp:49:28: error: cannot convert ‘const char*’ to
‘GifFileType*’ for argument ‘1’ to ‘void EGifSetGifVersion(GifFileType*,
bool)’
EGifSetGifVersion("89a");
I changed it to
EGifSetGifVersion(fileType,true);
Which I think is probablly correct but i'm not an expert on the API
changes in giflib
After making that change I got a succesful build, debdiff attatched, no
intent to NMU in Debian.
diff -Nru boats-201307/debian/changelog boats-201307/debian/changelog
--- boats-201307/debian/changelog 2013-07-23 16:48:20.000000000 +0000
+++ boats-201307/debian/changelog 2015-12-22 23:45:12.000000000 +0000
@@ -1,3 +1,12 @@
+boats (201307-1+rpi1) stretch-staging; urgency=medium
+
+ * Apply patch by doko to partially fix build with giflib 5 (closes: 803298)
+ * Fix call to EGifSetGifVersion for giflib 5
+ * Remove debian/boats.debhelper.log in clean target to avoid
+ no targets specified and no makefile found errors.
+
+ -- Peter Michael Green <plugw...@raspbian.org> Tue, 22 Dec 2015 23:10:24
+0000
+
boats (201307-1) unstable; urgency=low
* New upstream release.
diff -Nru boats-201307/debian/patches/giflib5.diff
boats-201307/debian/patches/giflib5.diff
--- boats-201307/debian/patches/giflib5.diff 1970-01-01 00:00:00.000000000
+0000
+++ boats-201307/debian/patches/giflib5.diff 2015-12-22 23:57:56.000000000
+0000
@@ -0,0 +1,48 @@
+Giflib 5 fixes by doko and plugwash
+
+Index: boats-201307/gifwriter.cpp
+===================================================================
+--- boats-201307.orig/gifwriter.cpp
++++ boats-201307/gifwriter.cpp
+@@ -45,11 +45,11 @@ bool GifWriter::write(QList<QImage*> ima
+ int retrn;
+ QImage *image = imageList.first();
+
+- fileType = EGifOpen((void*) this, myOutputFunc);
+- EGifSetGifVersion("89a");
++ fileType = EGifOpen((void*) this, myOutputFunc, NULL);
++ EGifSetGifVersion(fileType,true);
+
+ int colors = 256;
+- ColorMapObject * cmap = MakeMapObject(colors, NULL);
++ ColorMapObject * cmap = GifMakeMapObject(colors, NULL);
+ for (int i = 0; i< qMin(colors, m_colormap.size()); i++) {
+ QRgb color = m_colormap[i];
+ cmap->Colors[i].Blue = qBlue(color);
+@@ -58,13 +58,14 @@ bool GifWriter::write(QList<QImage*> ima
+ }
+
+ retrn = EGifPutScreenDesc(fileType, image->width(), image->height(), 8,
0, cmap);
+- FreeMapObject(cmap);
++ GifFreeMapObject(cmap);
+
+ char nameExtension[11] = { 'N','E','T','S','C','A','P','E','2','.','0' };
+ char loopExtension[3] = { 1, 0, 0 };
+- retrn = EGifPutExtensionFirst(fileType, 0xFF, 11, &nameExtension);
+- retrn = EGifPutExtensionNext(fileType, 0xFF, 3, &loopExtension);
+- retrn = EGifPutExtensionLast(fileType, 0xFF, 0, NULL);
++
++ retrn = EGifPutExtensionLeader(fileType, 0xFF);
++ retrn = EGifPutExtensionBlock(fileType, 3, &loopExtension);
++ retrn = EGifPutExtensionTrailer(fileType);
+ retrn = EGifPutComment(fileType, "Boat Scenario http://boats.berlios.de");
+
+ char gifExtension[4] = { 0, 8, 0, 0 };
+@@ -80,6 +81,6 @@ bool GifWriter::write(QList<QImage*> ima
+ }
+ }
+
+- retrn = EGifCloseFile(fileType);
++ retrn = EGifCloseFile(fileType, NULL);
+ return true;
+ }
diff -Nru boats-201307/debian/patches/series boats-201307/debian/patches/series
--- boats-201307/debian/patches/series 1970-01-01 00:00:00.000000000 +0000
+++ boats-201307/debian/patches/series 2015-12-22 23:04:44.000000000 +0000
@@ -0,0 +1 @@
+giflib5.diff
diff -Nru boats-201307/debian/rules boats-201307/debian/rules
--- boats-201307/debian/rules 2013-07-23 16:48:20.000000000 +0000
+++ boats-201307/debian/rules 2015-12-22 23:58:35.000000000 +0000
@@ -11,6 +11,7 @@
override_dh_clean:
qmake boats.pro $(QMAKE_OPT)
$(MAKE) distclean
+ rm -f debian/boats.debhelper.log
override_dh_install:
dh_install