diff options
-rw-r--r-- | app-cdr/cdrdao/ChangeLog | 14 | ||||
-rw-r--r-- | app-cdr/cdrdao/cdrdao-1.2.2-r3.ebuild | 90 | ||||
-rw-r--r-- | app-cdr/cdrdao/files/cdrdao-1.2.2-cdtext.patch | 28 | ||||
-rw-r--r-- | app-cdr/cdrdao/files/cdrdao-1.2.2-device.patch | 21 | ||||
-rw-r--r-- | app-cdr/cdrdao/files/cdrdao-1.2.2-toc2cue.patch | 12 | ||||
-rw-r--r-- | app-cdr/cdrdao/files/cdrdao-1.2.2-tocparser.patch | 30 |
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; + |