summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKacper Kowalik <xarthisius@gentoo.org>2011-04-20 08:34:29 +0000
committerKacper Kowalik <xarthisius@gentoo.org>2011-04-20 08:34:29 +0000
commitd439cbc75054b3bf20ec786ae21e3dcd91d5e627 (patch)
tree86ff41800692ed064036876ecbef5dcab1cf18c3 /app-cdr
parentWork around build failure w/ GCC 4.6 (bug #346825). (diff)
downloadgentoo-2-d439cbc75054b3bf20ec786ae21e3dcd91d5e627.tar.gz
gentoo-2-d439cbc75054b3bf20ec786ae21e3dcd91d5e627.tar.bz2
gentoo-2-d439cbc75054b3bf20ec786ae21e3dcd91d5e627.zip
Apply upstream patches wrt #346571 by Daniel Pielmeier <billie@gentoo.org>
(Portage version: 2.2.0_alpha30/cvs/Linux x86_64)
Diffstat (limited to 'app-cdr')
-rw-r--r--app-cdr/xcdroast/ChangeLog11
-rw-r--r--app-cdr/xcdroast/files/cdda2wav_version.patch54
-rw-r--r--app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch45
-rw-r--r--app-cdr/xcdroast/xcdroast-0.98_alpha16-r1.ebuild68
4 files changed, 176 insertions, 2 deletions
diff --git a/app-cdr/xcdroast/ChangeLog b/app-cdr/xcdroast/ChangeLog
index dcfa4ff03680..f5bea1f6c1ff 100644
--- a/app-cdr/xcdroast/ChangeLog
+++ b/app-cdr/xcdroast/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for app-cdr/xcdroast
-# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-cdr/xcdroast/ChangeLog,v 1.67 2009/06/01 16:21:33 nixnut Exp $
+# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/xcdroast/ChangeLog,v 1.68 2011/04/20 08:34:29 xarthisius Exp $
+
+*xcdroast-0.98_alpha16-r1 (20 Apr 2011)
+
+ 20 Apr 2011; Kacper Kowalik <xarthisius@gentoo.org>
+ +files/cdda2wav_version.patch, +xcdroast-0.98_alpha16-r1.ebuild,
+ +files/fix_cddb_hidden_tracks.patch:
+ Apply upstream patches wrt #346571 by Daniel Pielmeier <billie@gentoo.org>
01 Jun 2009; nixnut <nixnut@gentoo.org> xcdroast-0.98_alpha16.ebuild:
ppc stable #269032
diff --git a/app-cdr/xcdroast/files/cdda2wav_version.patch b/app-cdr/xcdroast/files/cdda2wav_version.patch
new file mode 100644
index 000000000000..cd001e0ee7bf
--- /dev/null
+++ b/app-cdr/xcdroast/files/cdda2wav_version.patch
@@ -0,0 +1,54 @@
+diff -urNad xcdroast-0.98+0alpha16~/src/io.c xcdroast-0.98+0alpha16/src/io.c
+--- xcdroast-0.98+0alpha16~/src/io.c 2008-08-21 15:11:40.000000000 +0200
++++ xcdroast-0.98+0alpha16/src/io.c 2009-12-29 22:54:08.571188849 +0100
+@@ -10062,6 +10062,7 @@
+
+ gint check_version_cdda2wav(gchar *match, gchar *found) {
+ gchar line[MAXLINE];
++gchar vline[MAXLINE];
+ gchar ver[MAXLINE];
+ FILE *fpin;
+ gchar *p;
+@@ -10076,32 +10077,38 @@
+ }
+
+ strcpy(line,"");
++ strcpy(vline,"");
+ for (;;) {
+ if (fgets(line,MAXLINE,fpin) == NULL)
+ break;
+ dodebug(10,"got: %s",line);
++
++ /* only get first line */
++ if (strcmp(vline,"") == 0) {
++ strncpy(vline, line, MAXLINE);
++ }
+ }
+
+ if (pclose(fpin) == -1) {
+ g_error("pclose error\n");
+ }
+
+- if (strcmp(line,"") == 0 || strstr(line,"sh:") != NULL) {
++ if (strcmp(vline,"") == 0 || strstr(vline,"sh:") != NULL) {
+ /* failed to open - permission denied */
+ return 2;
+ }
+
+- /* now line contains the version string of cdda2wav */
++ /* now vline contains the version string of cdda2wav */
+ /* try to extract the version number */
+
+- p = strstr(line,"version");
++ p = strstr(vline,"version");
+ if (p != NULL) {
+ p = strtok(p+8, " _");
+ if (p != NULL) {
+ strcpy(ver,p);
+ }
+ } else {
+- p = strstr(line,"cdda2wav");
++ p = strstr(vline,"cdda2wav");
+ if (p != NULL) {
+ p = strtok(p+9, " ");
+ if (p != NULL) {
diff --git a/app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch b/app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch
new file mode 100644
index 000000000000..d2e15ef54c69
--- /dev/null
+++ b/app-cdr/xcdroast/files/fix_cddb_hidden_tracks.patch
@@ -0,0 +1,45 @@
+--- src/io.c
++++ src/io.c
+@@ -2665,6 +2665,8 @@
+ g_error("Unexpected output in cdda2wav toc-output\n");
+ }
+ trackinfo[tocnr]->track_nr = atoi(p1);
++ if (trackinfo[tocnr]->track_nr == 0)
++ cdinfo.nr_tracks++;
+ trackinfo[tocnr]->isosize = -1;
+
+ /* reststring into tmp2 - strip to remove leading spaces */
+@@ -8401,6 +8403,9 @@
+ if (extract_quoted(tmp) != 0)
+ return;
+
++ if (matchnr == 0 && trackinfo[matchnr]->track_nr == 0)
++ matchnr++;
++
+ if (mode == 0) {
+ if (matchnr >= cdinfo.nr_tracks) {
+ g_warning("invalid track count from cddb-server\n");
+@@ -8482,14 +8487,20 @@
+
+ /* build of command line */
+ if (mode == 0 || mode == 2) {
++ gint ntr = cdinfo.nr_tracks;
++
++ if (ntr > 0 && trackinfo[0]->track_nr == 0)
++ ntr--;
+ g_snprintf(tmp,MAXLINE,"cddb query %s %d ",
+- cdinfo.cddb_discid, cdinfo.nr_tracks);
++ cdinfo.cddb_discid, ntr);
+ for (i = 0; i < cdinfo.nr_tracks; i++) {
++ if (trackinfo[i]->track_nr == 0)
++ continue;
+ g_snprintf(tmp2,MAXLINE,"%d ",
+ trackinfo[i]->start_sec + 150);
+ strcat(tmp,tmp2);
+ }
+- g_snprintf(tmp2,MAXLINE,"%d",cdinfo.total_size / 75);
++ g_snprintf(tmp2,MAXLINE,"%d",(cdinfo.leadout + 150) / 75);
+ strcat(tmp,tmp2);
+ } else {
+ /* get data from toc file */
+
diff --git a/app-cdr/xcdroast/xcdroast-0.98_alpha16-r1.ebuild b/app-cdr/xcdroast/xcdroast-0.98_alpha16-r1.ebuild
new file mode 100644
index 000000000000..b096fbc9ea18
--- /dev/null
+++ b/app-cdr/xcdroast/xcdroast-0.98_alpha16-r1.ebuild
@@ -0,0 +1,68 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-cdr/xcdroast/xcdroast-0.98_alpha16-r1.ebuild,v 1.1 2011/04/20 08:34:29 xarthisius Exp $
+
+EAPI=2
+inherit gnome2-utils eutils
+
+DESCRIPTION="Lightweight cdrtools front-end for CD and DVD writing"
+HOMEPAGE="http://www.xcdroast.org/"
+SRC_URI="mirror://sourceforge/xcdroast/${P/_/}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="nls"
+
+RDEPEND=">=x11-libs/gtk+-2:2
+ app-cdr/cdrtools"
+DEPEND="${RDEPEND}
+ dev-util/pkgconfig"
+
+S=${WORKDIR}/${P/_/}
+
+src_prepare() {
+ epatch "${FILESDIR}"/cdda2wav_version.patch \
+ "${FILESDIR}"/fix_cddb_hidden_tracks.patch \
+ "${FILESDIR}"/io_compile.patch
+
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ --enable-gtk2 \
+ --disable-dependency-tracking \
+ --mandir=/usr/share/man \
+ --sysconfdir=/etc
+}
+
+src_compile() {
+ emake PREFIX=/usr || die
+}
+
+src_install() {
+ emake PREFIX=/usr DESTDIR="${D}" install || die
+
+ dodoc AUTHORS ChangeLog README doc/* doc/manual/README.txt
+
+ insinto /usr/share/doc/${PF}/manual
+ doins doc/manual/xcdroast-manual.pdf
+
+ insinto /usr/share/icons/hicolor/48x48/apps
+ newins xpms/xcdricon.xpm xcdroast.xpm
+
+ make_desktop_entry xcdroast "X-CD-Roast" xcdroast "AudioVideo;DiscBurning"
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}