From 6dbad9dda426725e7e29f1e22a6c2a8ea4ae65d4 Mon Sep 17 00:00:00 2001 From: ghost Date: Tue, 4 Aug 2009 11:16:26 +0200 Subject: packages/dvd+rw-tools: update to dvd+rw-tools 7.1 with debian 7.1-4 patches --- packages/dvd+rw-tools/dvd+rw-tools_7.1.bb | 18 +++++++++++++++ .../dvd+rw-tools/files/01-growisofs-pioneer.patch | 26 ++++++++++++++++++++++ .../dvd+rw-tools/files/03-growisofs-dvd-dl.patch | 17 ++++++++++++++ packages/dvd+rw-tools/files/05-beeping.patch | 23 +++++++++++++++++++ packages/dvd+rw-tools/files/08-includes.patch | 14 ++++++++++++ packages/dvd+rw-tools/files/09-wctomb.patch | 15 +++++++++++++ 6 files changed, 113 insertions(+) create mode 100644 packages/dvd+rw-tools/dvd+rw-tools_7.1.bb create mode 100644 packages/dvd+rw-tools/files/01-growisofs-pioneer.patch create mode 100644 packages/dvd+rw-tools/files/03-growisofs-dvd-dl.patch create mode 100644 packages/dvd+rw-tools/files/05-beeping.patch create mode 100644 packages/dvd+rw-tools/files/08-includes.patch create mode 100644 packages/dvd+rw-tools/files/09-wctomb.patch diff --git a/packages/dvd+rw-tools/dvd+rw-tools_7.1.bb b/packages/dvd+rw-tools/dvd+rw-tools_7.1.bb new file mode 100644 index 0000000000..43985acf13 --- /dev/null +++ b/packages/dvd+rw-tools/dvd+rw-tools_7.1.bb @@ -0,0 +1,18 @@ +DESCRIPTION = "dvd+rw-tools makes it possible to burn DVD images" +MAINTAINER = "Felix Domke +LICENSE = "GPL" +SECTION = "optional" + +#patches are based of debian version 7.1-4 + +SRC_URI = "http://fy.chalmers.se/~appro/linux/DVD+RW/tools/${PN}-${PV}.tar.gz \ + file://01-growisofs-pioneer.patch;patch=1;pnum=1 \ + file://03-growisofs-dvd-dl.patch;patch=1;pnum=1 \ + file://05-beeping.patch;patch=1;pnum=1 \ + file://08-includes.patch;patch=1;pnum=1 \ + file://09-wctomb.patch" + +inherit autotools + +EXTRA_OEMAKE = "'CC=${CC}' 'CXX=${CXX}' \ + 'CFLAGS=${CFLAGS} ${LDFLAGS}' 'prefix=${D}'" diff --git a/packages/dvd+rw-tools/files/01-growisofs-pioneer.patch b/packages/dvd+rw-tools/files/01-growisofs-pioneer.patch new file mode 100644 index 0000000000..d4b3543d82 --- /dev/null +++ b/packages/dvd+rw-tools/files/01-growisofs-pioneer.patch @@ -0,0 +1,26 @@ +Author: n/a +Description: Fixes to fail closing session on some PIONEER DVD-RW drives + +diff -Naurp dvd+rw-tools.orig/growisofs_mmc.cpp dvd+rw-tools/growisofs_mmc.cpp +--- dvd+rw-tools.orig/growisofs_mmc.cpp 2008-03-04 17:47:49.000000000 +0000 ++++ dvd+rw-tools/growisofs_mmc.cpp 2008-04-01 09:01:20.000000000 +0000 +@@ -1743,8 +1743,17 @@ void plus_rw_finalize () + cmd[1] = 0x01; // "IMMED" + cmd[2] = 0x02; // "Close session" + cmd[9] = 0; +- if ((err=cmd.transport())) +- sperror ("CLOSE SESSION",err); ++ ++ // it seems, that pioneer is a bit crappy ++ while (err=cmd.transport()) { ++ if (SK(err)==0x2 && ASC(err)==0x04 && ASCQ(err)==0x07) { ++ sperror ("CLOSE SESSION (but try to continue)",err); ++ usleep(10000); ++ } else { ++ sperror ("CLOSE SESSION",err); ++ break; ++ } ++ } + + if (wait_for_unit (cmd)) break; + diff --git a/packages/dvd+rw-tools/files/03-growisofs-dvd-dl.patch b/packages/dvd+rw-tools/files/03-growisofs-dvd-dl.patch new file mode 100644 index 0000000000..77af8521c2 --- /dev/null +++ b/packages/dvd+rw-tools/files/03-growisofs-dvd-dl.patch @@ -0,0 +1,17 @@ +Author: Joe Shaw +Description: Don't abort when a DVD-DL disk is underful (Closes: #340698). + +diff -Naurp dvd+rw-tools.orig/growisofs_mmc.cpp dvd+rw-tools/growisofs_mmc.cpp +--- dvd+rw-tools.orig/growisofs_mmc.cpp 2008-04-01 09:01:20.000000000 +0000 ++++ dvd+rw-tools/growisofs_mmc.cpp 2008-04-01 09:02:59.000000000 +0000 +@@ -1640,9 +1640,7 @@ static void plus_r_dl_split (Scsi_Comman + 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; diff --git a/packages/dvd+rw-tools/files/05-beeping.patch b/packages/dvd+rw-tools/files/05-beeping.patch new file mode 100644 index 0000000000..84600babbe --- /dev/null +++ b/packages/dvd+rw-tools/files/05-beeping.patch @@ -0,0 +1,23 @@ +Author: Matt Zimmerman +Description: Disable obnoxious beeping. + +diff -Naurp dvd+rw-tools.orig/growisofs.c dvd+rw-tools/growisofs.c +--- dvd+rw-tools.orig/growisofs.c 2008-04-01 09:04:51.000000000 +0000 ++++ dvd+rw-tools/growisofs.c 2008-04-01 09:08:58.000000000 +0000 +@@ -3453,14 +3453,14 @@ int main (int argc, char *argv[]) + printf ("'\n"); + fflush (stdout); + +- if ((warn_for_isofs&2) && !dry_run && !no_tty_check) ++/* if ((warn_for_isofs&2) && !dry_run && !no_tty_check) + { fprintf (stderr,"Sleeping for 5 sec...\a"), poll (NULL,0,1000); + fprintf (stderr,"\b\b\b\b\b\b\b\b4 sec...\a"), poll (NULL,0,1000); + fprintf (stderr,"\b\b\b\b\b\b\b\b3 sec...\a"), poll (NULL,0,1000); + fprintf (stderr,"\b\b\b\b\b\b\b\b2 sec...\a"), poll (NULL,0,1000); + fprintf (stderr,"\b\b\b\b\b\b\b\b1 sec...\a"), poll (NULL,0,1000); + fprintf (stderr,"\b\b\b\b\b\b\b\b0 sec...\r"); +- } ++ } */ + + #if defined(__unix) || defined(__unix__) + diff --git a/packages/dvd+rw-tools/files/08-includes.patch b/packages/dvd+rw-tools/files/08-includes.patch new file mode 100644 index 0000000000..9dd68cad87 --- /dev/null +++ b/packages/dvd+rw-tools/files/08-includes.patch @@ -0,0 +1,14 @@ +Author: Daniel Schepler +Description: Add missing include in transport.hxx, fixes FTBFS with gcc-4.2 and gcc-4.3 (Closes: #455276, #456551). + +diff -Naurp dvd+rw-tools.orig/transport.hxx dvd+rw-tools/transport.hxx +--- dvd+rw-tools.orig/transport.hxx 2008-04-01 09:04:51.000000000 +0000 ++++ dvd+rw-tools/transport.hxx 2008-04-01 09:23:09.000000000 +0000 +@@ -16,6 +16,7 @@ + #include + #include + #include ++#include + + inline long getmsecs() + { struct timeval tv; diff --git a/packages/dvd+rw-tools/files/09-wctomb.patch b/packages/dvd+rw-tools/files/09-wctomb.patch new file mode 100644 index 0000000000..0b82ba927c --- /dev/null +++ b/packages/dvd+rw-tools/files/09-wctomb.patch @@ -0,0 +1,15 @@ +Author: Kees Cook +Description: wctomb called with too small a buffer, patch originally taken from fedora (Closes: #497833). + +diff -Naurp dvd-rw-tools.orig/transport.hxx dvd-rw-tools/transport.hxx +--- dvd-rw-tools.orig/transport.hxx 2009-02-05 09:01:23.000000000 +0000 ++++ dvd-rw-tools/transport.hxx 2009-02-05 09:01:35.000000000 +0000 +@@ -124,7 +124,7 @@ class autofree { + 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)'±'); -- cgit 1.2.3-korg