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

Reply via email to