summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app-cdr/cdrdao/ChangeLog14
-rw-r--r--app-cdr/cdrdao/cdrdao-1.2.2-r3.ebuild90
-rw-r--r--app-cdr/cdrdao/files/cdrdao-1.2.2-cdtext.patch28
-rw-r--r--app-cdr/cdrdao/files/cdrdao-1.2.2-device.patch21
-rw-r--r--app-cdr/cdrdao/files/cdrdao-1.2.2-toc2cue.patch12
-rw-r--r--app-cdr/cdrdao/files/cdrdao-1.2.2-tocparser.patch30
6 files changed, 193 insertions, 2 deletions
diff --git a/app-cdr/cdrdao/ChangeLog b/app-cdr/cdrdao/ChangeLog
index c6a0c0bb554d..d24f54a2ea2e 100644
--- a/app-cdr/cdrdao/ChangeLog
+++ b/app-cdr/cdrdao/ChangeLog
@@ -1,6 +1,16 @@
# ChangeLog for app-cdr/cdrdao
-# Copyright 2002-2008 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-cdr/cdrdao/ChangeLog,v 1.121 2008/12/05 13:23:15 ssuominen Exp $
+# Copyright 2002-2009 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/cdrdao/ChangeLog,v 1.122 2009/02/01 01:42:56 loki_val Exp $
+
+*cdrdao-1.2.2-r3 (01 Feb 2009)
+
+ 01 Feb 2009; Peter Alfredsen <loki_val@gentoo.org>
+ +files/cdrdao-1.2.2-cdtext.patch, +files/cdrdao-1.2.2-device.patch,
+ +files/cdrdao-1.2.2-toc2cue.patch, +files/cdrdao-1.2.2-tocparser.patch,
+ +cdrdao-1.2.2-r3.ebuild:
+ EAPI-2, fix bug 238891, CDTEXT and toc2cue problems. Import patches from
+ Debian for a few issues. Remove RESTRICT=strip, which seems to be
+ left-overs from a user-submitted ebuild in bug 43003.
05 Dec 2008; <ssuominen@gentoo.org> cdrdao-1.2.2-r2.ebuild:
Block cue2toc because cdrdao also installs cue2toc application wrt
diff --git a/app-cdr/cdrdao/cdrdao-1.2.2-r3.ebuild b/app-cdr/cdrdao/cdrdao-1.2.2-r3.ebuild
new file mode 100644
index 000000000000..2bac570bc574
--- /dev/null
+++ b/app-cdr/cdrdao/cdrdao-1.2.2-r3.ebuild
@@ -0,0 +1,90 @@
+# Copyright 1999-2009 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/cdrdao/cdrdao-1.2.2-r3.ebuild,v 1.1 2009/02/01 01:42:56 loki_val Exp $
+
+EAPI=2
+
+inherit eutils flag-o-matic eutils
+
+DESCRIPTION="Burn CDs in disk-at-once mode -- with optional GUI frontend"
+HOMEPAGE="http://cdrdao.sourceforge.net/"
+SRC_URI="mirror://sourceforge/cdrdao/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd"
+IUSE="gcdmaster debug encode pccts"
+
+RDEPEND="virtual/cdrtools
+ encode? ( >=media-sound/lame-3.90 )
+ gcdmaster? ( >=dev-cpp/gtkmm-2.4
+ >=dev-cpp/libgnomemm-2.6
+ >=dev-cpp/libgnomecanvasmm-2.6
+ >=dev-cpp/gconfmm-2.6
+ >=dev-cpp/libgnomeuimm-2.6
+ media-libs/libao )"
+DEPEND="${RDEPEND}
+ pccts? ( >=dev-util/pccts-1.33.24-r1 )
+ !app-cdr/cue2toc"
+
+src_prepare() {
+ # Use O_EXCL to avoid conflict with HAL, bug 193603.
+ epatch "${FILESDIR}"/${PN}-1.2.2-excl.patch
+
+ # fixes bug #212530
+ epatch "${FILESDIR}"/${PN}-1.2.2-use-new-sigc++-API.patch
+
+ # FreeBSD needs this patch
+ # I think the correct define should be linux, but this will maintain
+ # the status quo for the time being.
+ # Upstream bug #1596097
+ epatch "${FILESDIR}"/${PN}-1.2.2-nonlinux.patch
+
+ # GCC 4.3 patch. Should be fixed in next version.
+ epatch "${FILESDIR}"/${PN}-1.2.2-gcc43.patch
+
+ # Fix ERROR: CD/cdda.toc:36: Invalid CD-TEXT item for a track.
+ # Bug 238891
+ epatch "${FILESDIR}"/${PN}-1.2.2-toc2cue.patch
+
+ # Fix cdrdao: Track.cc:1415: void Track::addCdTextItem(CdTextItem*): Assertion
+ # `CdTextItem::isTrackPack(item->packType())' failed.
+ # Bug 238891
+ epatch "${FILESDIR}"/${PN}-1.2.2-cdtext.patch
+
+ # Let default device be /dev/cdrw
+ # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=452123
+ epatch "${FILESDIR}"/${PN}-1.2.2-device.patch
+
+ # Undo upstream removal of automatic reading of the track lengths in TOC
+ # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=440419
+ epatch "${FILESDIR}"/${PN}-1.2.2-tocparser.patch
+
+ # Display better SCSI messages (advise from Bug 43003)
+ cd scsilib/include
+ sed -i -e 's:HAVE_SCANSTACK:NO_FRIGGING_SCANSTACK:g' xmconfig.h
+ sed -i -e 's:HAVE_SCANSTACK:NO_FRIGGING_SCANSTACK:g' mconfig.h
+}
+
+src_configure() {
+ # A few CFLAGS do not work see bug #99998
+ strip-flags
+ append-flags "-fno-inline"
+
+ econf \
+ $(use_enable debug) \
+ $(use_with gcdmaster xdao) \
+ $(use_with encode lame) \
+ $(use_with pccts pcctsbin /usr/bin) \
+ $(use_with pccts pcctsinc /usr/include/pccts) \
+ --disable-dependency-tracking || die "configure failed"
+}
+
+src_compile() {
+ emake -j1 || die "could not compile"
+}
+
+src_install() {
+ emake -j1 DESTDIR="${D}" install
+ dodoc AUTHORS CREDITS ChangeLog NEWS README*
+}
diff --git a/app-cdr/cdrdao/files/cdrdao-1.2.2-cdtext.patch b/app-cdr/cdrdao/files/cdrdao-1.2.2-cdtext.patch
new file mode 100644
index 000000000000..680df685314f
--- /dev/null
+++ b/app-cdr/cdrdao/files/cdrdao-1.2.2-cdtext.patch
@@ -0,0 +1,28 @@
+
+#!/bin/sh /usr/share/dpatch/dpatch-run
+## 07-cdtext.dpatch by Anonymous
+##
+## DP: Adds missing entries to TOC output when using CdText (Closes: #458357).
+
+@DPATCH@
+
+diff -Naurp cdrdao-1.2.2.orig/trackdb/CdTextItem.cc cdrdao-1.2.2/trackdb/CdTextItem.cc
+--- cdrdao-1.2.2.orig/trackdb/CdTextItem.cc 2004-04-28 00:46:05.000000000 +0000
++++ cdrdao-1.2.2/trackdb/CdTextItem.cc 2007-12-30 16:35:40.000000000 +0000
+@@ -320,6 +320,15 @@ int CdTextItem::isTrackPack(PackType typ
+ int ret;
+
+ switch (type) {
++ case CDTEXT_DISK_ID:
++ case CDTEXT_GENRE:
++ case CDTEXT_TOC_INFO1:
++ case CDTEXT_TOC_INFO2:
++ case CDTEXT_RES1:
++ case CDTEXT_RES2:
++ case CDTEXT_RES3:
++ case CDTEXT_RES4:
++ case CDTEXT_SIZE_INFO:
+ case CDTEXT_TITLE:
+ case CDTEXT_PERFORMER:
+ case CDTEXT_SONGWRITER:
+
diff --git a/app-cdr/cdrdao/files/cdrdao-1.2.2-device.patch b/app-cdr/cdrdao/files/cdrdao-1.2.2-device.patch
new file mode 100644
index 000000000000..10f7cb3b2856
--- /dev/null
+++ b/app-cdr/cdrdao/files/cdrdao-1.2.2-device.patch
@@ -0,0 +1,21 @@
+
+#!/bin/sh /usr/share/dpatch/dpatch-run
+## 04-device.dpatch by Free Ekanayaka <free@64studio.com>
+##
+## DP: Change default device to /dev/cdrw (Closes: #452123).
+
+@DPATCH@
+
+diff -Naur cdrdao-1.2.2.orig/dao/main.cc cdrdao-1.2.2/dao/main.cc
+--- cdrdao-1.2.2.orig/dao/main.cc 2006-09-19 09:07:11.000000000 +0000
++++ cdrdao-1.2.2/dao/main.cc 2006-10-06 20:24:57.000000000 +0000
+@@ -140,7 +140,7 @@
+
+ #elif defined(__linux__)
+
+-static const char *SCSI_DEVICE = "/dev/cdrecorder";
++static const char *SCSI_DEVICE = "/dev/cdrw";
+ static int FIFO_BUFFERS = 32;
+
+ #else
+
diff --git a/app-cdr/cdrdao/files/cdrdao-1.2.2-toc2cue.patch b/app-cdr/cdrdao/files/cdrdao-1.2.2-toc2cue.patch
new file mode 100644
index 000000000000..288f42fd6ca6
--- /dev/null
+++ b/app-cdr/cdrdao/files/cdrdao-1.2.2-toc2cue.patch
@@ -0,0 +1,12 @@
+diff -Naur cdrdao-1.2.2/trackdb/TocParser.g cdrdao-1.2.2-cclpatch/trackdb/TocParser.g
+--- cdrdao-1.2.2/trackdb/TocParser.g 2008-10-06 08:50:48.000000000 -0700
++++ cdrdao-1.2.2-cclpatch/trackdb/TocParser.g 2008-10-06 08:50:48.000000000 -0700
+@@ -774,7 +774,7 @@
+ << if (item != NULL) {
+ int type = item->packType();
+
+- if (isTrack && ((type >= 0x86 && type <= 0x89) || type == 0x8f)) {
++ if (isTrack && ((type > 0x86 && type <= 0x89) || type == 0x8f)) {
+ message(-2, "%s:%d: Invalid CD-TEXT item for a track.",
+ filename_, lineNr);
+ error_ = 1;
diff --git a/app-cdr/cdrdao/files/cdrdao-1.2.2-tocparser.patch b/app-cdr/cdrdao/files/cdrdao-1.2.2-tocparser.patch
new file mode 100644
index 000000000000..9554de51c942
--- /dev/null
+++ b/app-cdr/cdrdao/files/cdrdao-1.2.2-tocparser.patch
@@ -0,0 +1,30 @@
+Snatched from Debian
+
+#!/bin/sh /usr/share/dpatch/dpatch-run
+## 06-tocparser.dpatch by Florian Forster <octo@verplant.org>
+##
+## DP: Undo upstream removal of automatic reading of the track lengths in TOC
+## DP: files (Closes: #440419).
+
+@DPATCH@
+
+diff -Naurp cdrdao-1.2.2.orig/trackdb/TocParser.g cdrdao-1.2.2/trackdb/TocParser.g
+--- cdrdao-1.2.2.orig/trackdb/TocParser.g 2005-11-03 01:08:16.000000000 +0000
++++ cdrdao-1.2.2/trackdb/TocParser.g 2007-09-24 11:58:34.000000000 +0000
+@@ -496,6 +496,15 @@ subTrack < [ TrackData::Mode trackType,
+ }
+ >>
+ )
++ << if ($st != NULL && $st->length() == 0) {
++ // try to determine length
++ if ($st->determineLength() != 0) {
++ message(-2, "%s:%d: Cannot determine length of track data specification.",
++ filename_, $lineNr);
++ error_ = 1;
++ }
++ }
++ >>
+ ;
+ // fail action
+ << delete $st, $st = NULL;
+