Hi! What will be with poor xcdroast?
Here is the patch.
>From 2d68e164c9847eb773f679d3ccbee25904232543 Mon Sep 17 00:00:00 2001 From: kikadf <[email protected]> Date: Wed, 21 Apr 2010 16:33:42 +0200 Subject: [PATCH] New package: xcdroast --- source/xmultimedia-extra/xcdroast/FrugalBuild | 34 ++++++++++++ .../xcdroast/cdda2wav_version.patch | 54 ++++++++++++++++++++ source/xmultimedia-extra/xcdroast/io_compile.patch | 21 ++++++++ .../xmultimedia-extra/xcdroast/parse_version.patch | 11 ++++ 4 files changed, 120 insertions(+), 0 deletions(-) create mode 100644 source/xmultimedia-extra/xcdroast/FrugalBuild create mode 100644 source/xmultimedia-extra/xcdroast/cdda2wav_version.patch create mode 100644 source/xmultimedia-extra/xcdroast/io_compile.patch create mode 100644 source/xmultimedia-extra/xcdroast/parse_version.patch diff --git a/source/xmultimedia-extra/xcdroast/FrugalBuild b/source/xmultimedia-extra/xcdroast/FrugalBuild new file mode 100644 index 0000000..32ba11c --- /dev/null +++ b/source/xmultimedia-extra/xcdroast/FrugalBuild @@ -0,0 +1,34 @@ +# Compiling Time: 0.08 SBU +# Maintainer: somebody +# Contributor: kikadf <[email protected]> + +pkgname=xcdroast +pkgver=0.98alpha16 +pkgrel=1 +pkgdesc="Lightweight cdrtools front-end for CD and DVD writing" +url="http://www.xcdroast.org" +Finclude sourceforge +Fconfopts="--enable-gtk2 --bindir=/usr/bin --datadir=/usr/share" +depends=('cdrtools' 'gtk+2') +groups=('xmultimedia-extra') +archs=('i686' 'x86_64') +source=(http://${_F_sourceforge_mirror}.sourceforge.net/sourceforge/${_F_sourceforge_dirname}/"${_F_sourceforge_name}"${_F_sourceforge_sep}${_F_sourceforge_pkgver}${_F_sourceforge_ext} \ + parse_version.patch \ + io_compile.patch \ + cdda2wav_version.patch) +sha1sums=('bbb3184a7e2bfd80d931698002dc9f74f136241d' \ + 'b4f85e53d050f355a162e9ca94b6b928f10fc5a8' \ + '03149229d3a09015a32cc9c4b8490efcae456271' \ + '0367568a2ed3e773c10279e52101fb70a8adf133') + +build() { + Fpatchall + Fmake + Fmakeinstall DESTDIR=$Fdestdir + Fmkdir usr/share/applications + Fcp $pkgname-$pkgver/extra/$pkgname.desktop usr/share/applications/$pkgname.desktop + echo "Categories=Application;AudioVideo;" >> $Fdestdir/usr/share/applications/$pkgname.desktop +} + + +# optimization OK diff --git a/source/xmultimedia-extra/xcdroast/cdda2wav_version.patch b/source/xmultimedia-extra/xcdroast/cdda2wav_version.patch new file mode 100644 index 0000000..cd001e0 --- /dev/null +++ b/source/xmultimedia-extra/xcdroast/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/source/xmultimedia-extra/xcdroast/io_compile.patch b/source/xmultimedia-extra/xcdroast/io_compile.patch new file mode 100644 index 0000000..7285bd3 --- /dev/null +++ b/source/xmultimedia-extra/xcdroast/io_compile.patch @@ -0,0 +1,21 @@ +--- src/io.c.org 2009-02-24 09:38:27.000000000 +0100 ++++ src/io.c 2009-02-24 09:45:18.000000000 +0100 +@@ -1903,7 +1903,8 @@ + } + + strcpy(str,""); +- fgets(str,MAXLINE,fpin); ++ if (fgets(str,MAXLINE,fpin) == NULL) ++ g_error("fgets error\n"); + + if (pclose(fpin) == -1) { + g_error("pclose error\n"); +@@ -4720,7 +4721,7 @@ + dolog(3, "Saving extended output to %s\n", fname); + + /* write to file */ +- fd = open(fname,O_WRONLY | O_CREAT); ++ fd = open(fname, O_WRONLY | O_CREAT, S_IRUSR | S_IWUSR); + if (fd < 0) { + g_warning("Can't open file %s for writing\n",fname); + return 1; diff --git a/source/xmultimedia-extra/xcdroast/parse_version.patch b/source/xmultimedia-extra/xcdroast/parse_version.patch new file mode 100644 index 0000000..d117120 --- /dev/null +++ b/source/xmultimedia-extra/xcdroast/parse_version.patch @@ -0,0 +1,11 @@ +--- src/xtools.c.bak 2008-08-20 18:10:28.000000000 +0200 ++++ src/xtools.c 2008-09-23 20:22:01.000000000 +0200 +@@ -3086,7 +3086,7 @@ + gchar tmp[MAXLINE]; + gchar *p,*q,*r; + +- ver->major = ver->minor = ver->patch = 0; ++ ver->major = ver->minor = ver->patch = ver->branch = 0; + ver->devel='h'; + + strncpy(tmp, str, MAXLINE); -- 1.7.0.5
_______________________________________________ Frugalware-devel mailing list [email protected] http://frugalware.org/mailman/listinfo/frugalware-devel
