Date: Sunday, September 11, 2011 @ 07:02:28 Author: pierre Revision: 137802
Add patches from Gentoo to fix FS#25960 Added: dvd+rw-tools/trunk/dvd+rw-tools-7.0-dvddl.patch dvd+rw-tools/trunk/dvd+rw-tools-7.0-glibc2.6.90.patch dvd+rw-tools/trunk/dvd+rw-tools-7.0-wctomb.patch dvd+rw-tools/trunk/dvd+rw-tools-7.0-wexit.patch Modified: dvd+rw-tools/trunk/PKGBUILD Deleted: dvd+rw-tools/trunk/buildpatch-7.0-3-20080108-karolina.patch ------------------------------------------+ PKGBUILD | 21 ++++++++++++++++----- buildpatch-7.0-3-20080108-karolina.patch | 22 ---------------------- dvd+rw-tools-7.0-dvddl.patch | 13 +++++++++++++ dvd+rw-tools-7.0-glibc2.6.90.patch | 11 +++++++++++ dvd+rw-tools-7.0-wctomb.patch | 11 +++++++++++ dvd+rw-tools-7.0-wexit.patch | 11 +++++++++++ 6 files changed, 62 insertions(+), 27 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2011-09-11 10:04:02 UTC (rev 137801) +++ PKGBUILD 2011-09-11 11:02:28 UTC (rev 137802) @@ -3,21 +3,32 @@ pkgname=dvd+rw-tools pkgver=7.1 -pkgrel=3 +pkgrel=4 pkgdesc="dvd burning tools" arch=('i686' 'x86_64') license=('GPL') url="http://fy.chalmers.se/~appro/linux/DVD+RW" depends=('cdrkit' 'gcc-libs') source=("http://fy.chalmers.se/~appro/linux/DVD+RW/tools/${pkgname}-${pkgver}.tar.gz" - 'buildpatch-7.0-3-20080108-karolina.patch') + 'dvd+rw-tools-7.0-dvddl.patch' + 'dvd+rw-tools-7.0-glibc2.6.90.patch' + 'dvd+rw-tools-7.0-wctomb.patch' + 'dvd+rw-tools-7.0-wexit.patch') md5sums=('8acb3c885c87f6838704a0025e435871' - '54b4dc52f5380216d4d9fc2dd2086d31') + '65d30aa98ff314f256d0a1afb9e3edf6' + '1be5401035ca850edb7e522f22aead4b' + '3ba1af063b30f942e1cd2004044702d3' + 'b2c66b6c6243b207fbe4f6ae34fa6cba') build() { cd "${srcdir}/${pkgname}-${pkgver}" - # fix build, thank you Karolina - patch -Np1 -i "${srcdir}/buildpatch-7.0-3-20080108-karolina.patch" + # patches from Gentoo/Fedora + # see https://bugs.gentoo.org/257360, https://bugzilla.redhat.com/show_bug.cgi?id=426068 + # and https://bugzilla.redhat.com/show_bug.cgi?id=243036 + patch -p0 -i "${srcdir}/dvd+rw-tools-7.0-dvddl.patch" + patch -p1 -i "${srcdir}/dvd+rw-tools-7.0-glibc2.6.90.patch" + patch -p0 -i "${srcdir}/dvd+rw-tools-7.0-wctomb.patch" + patch -p1 -i "${srcdir}/dvd+rw-tools-7.0-wexit.patch" make } Deleted: buildpatch-7.0-3-20080108-karolina.patch =================================================================== --- buildpatch-7.0-3-20080108-karolina.patch 2011-09-11 10:04:02 UTC (rev 137801) +++ buildpatch-7.0-3-20080108-karolina.patch 2011-09-11 11:02:28 UTC (rev 137802) @@ -1,22 +0,0 @@ -diff -Naur dvd+rw-tools-7.0/growisofs.c dvd+rw-tools-7.0_new/growisofs.c ---- dvd+rw-tools-7.0/growisofs.c 2006-09-24 19:28:53.000000000 +0200 -+++ dvd+rw-tools-7.0_new/growisofs.c 2008-01-08 00:56:57.000000000 +0100 -@@ -418,6 +418,7 @@ - #include <sys/types.h> - #include <sys/stat.h> - #include <assert.h> -+#include <limits.h> - #include "mp.h" - - #if defined(__unix) || defined(__unix__) -diff -Naur dvd+rw-tools-7.0/transport.hxx dvd+rw-tools-7.0_new/transport.hxx ---- dvd+rw-tools-7.0/transport.hxx 2006-09-23 13:29:07.000000000 +0200 -+++ dvd+rw-tools-7.0_new/transport.hxx 2008-01-08 00:57:36.000000000 +0100 -@@ -137,6 +137,7 @@ - #include <sys/wait.h> - #include <sys/utsname.h> - #include <scsi/sg.h> -+#include <limits.h> - #if !defined(SG_FLAG_LUN_INHIBIT) - # if defined(SG_FLAG_UNUSED_LUN_INHIBIT) - # define SG_FLAG_LUN_INHIBIT SG_FLAG_UNUSED_LUN_INHIBIT Added: dvd+rw-tools-7.0-dvddl.patch =================================================================== --- dvd+rw-tools-7.0-dvddl.patch (rev 0) +++ dvd+rw-tools-7.0-dvddl.patch 2011-09-11 11:02:28 UTC (rev 137802) @@ -0,0 +1,13 @@ +--- ./growisofs_mmc.cpp.joe 2006-04-27 20:45:00.788446635 +0200 ++++ ./growisofs_mmc.cpp 2006-04-27 20:46:01.666824300 +0200 +@@ -1412,9 +1412,7 @@ + blocks += 15, blocks &= ~15; + + if (blocks <= split) +- fprintf (stderr,":-( more than 50%% of space will be *wasted*!\n" +- " use single layer media for this recording\n"), +- exit (FATAL_START(EMEDIUMTYPE)); ++ fprintf (stderr,":-? more than 50%% of space will be *wasted*!\n"); + + blocks /= 16; + blocks += 1; Added: dvd+rw-tools-7.0-glibc2.6.90.patch =================================================================== --- dvd+rw-tools-7.0-glibc2.6.90.patch (rev 0) +++ dvd+rw-tools-7.0-glibc2.6.90.patch 2011-09-11 11:02:28 UTC (rev 137802) @@ -0,0 +1,11 @@ +diff -up dvd+rw-tools-7.0/transport.hxx.glibc2.6.90 dvd+rw-tools-7.0/transport.hxx +--- dvd+rw-tools-7.0/transport.hxx.glibc2.6.90 2007-08-15 12:56:17.000000000 +0200 ++++ dvd+rw-tools-7.0/transport.hxx 2007-08-15 12:56:42.000000000 +0200 +@@ -11,6 +11,7 @@ + #include <stdlib.h> + #include <unistd.h> + #include <string.h> ++#include <limits.h> + #include <sys/types.h> + #include <sys/stat.h> + #include <fcntl.h> Added: dvd+rw-tools-7.0-wctomb.patch =================================================================== --- dvd+rw-tools-7.0-wctomb.patch (rev 0) +++ dvd+rw-tools-7.0-wctomb.patch 2011-09-11 11:02:28 UTC (rev 137802) @@ -0,0 +1,11 @@ +--- transport.hxx~ 2008-03-25 21:24:47.000000000 -0400 ++++ transport.hxx 2008-03-25 21:25:36.000000000 -0400 +@@ -116,7 +116,7 @@ + extern "C" char *plusminus_locale() + { static class __plusminus { + private: +- char str[4]; ++ char str[MB_LEN_MAX]; + public: + __plusminus() { setlocale(LC_CTYPE,ENV_LOCALE); + int l = wctomb(str,(wchar_t)(unsigned char)'�'); Added: dvd+rw-tools-7.0-wexit.patch =================================================================== --- dvd+rw-tools-7.0-wexit.patch (rev 0) +++ dvd+rw-tools-7.0-wexit.patch 2011-09-11 11:02:28 UTC (rev 137802) @@ -0,0 +1,11 @@ +--- dvd+rw-tools-7.0/dvd+rw-format.cpp.wexit 2007-06-21 12:42:30.000000000 +0200 ++++ dvd+rw-tools-7.0/dvd+rw-format.cpp 2007-06-21 12:44:13.000000000 +0200 +@@ -245,7 +245,7 @@ int main (int argc, char *argv[]) + alarm(1); + while ((waitpid(pid,&i,0) != pid) && !WIFEXITED(i)) ; + if (WEXITSTATUS(i) == 0) fprintf (stderr,"\n"); +- exit (0); ++ exit (WEXITSTATUS(i)); + } + #endif +