rpms/xcdroast/devel xcdroast-0.98alpha15-01_upstream_configure.patch, NONE, 1.1 xcdroast-0.98alpha15-02_upstream_gtk2locale.patch, NONE, 1.1 xcdroast-0.98alpha15-03_upstream_64bit_gsize.patch, NONE, 1.1 xcdroast-0.98alpha15-04_upstream_read_eagain.patch, NONE, 1.1 xcdroast-0.98alpha15-05_upstream_wav.patch, NONE, 1.1 xcdroast-0.98alpha15-06_man.patch, NONE, 1.1 xcdroast-0.98alpha15-07_case_cmp.patch, NONE, 1.1 xcdroast-0.98alpha15-08_desktop.patch, NONE, 1.1 xcdroast-0.98alpha15-09_share_dir.patch, NONE, 1.1 xcdroast-0.98alpha15-10_cddbtool.patch, NONE, 1.1 xcdroast-0.98alpha15-11_mkisofs_options.patch, NONE, 1.1 xcdroast-0.98alpha15-12_cdrecord_versions.patch, NONE, 1.1 xcdroast-0.98alpha15-13_cdrecord_to_wodim.patch, NONE, 1.1 xcdroast-0.98alpha15-14_atapi_to_oldatapi.patch, NONE, 1.1 xcdroast-0.98alpha15-15_no_readcd_version.patch, NONE, 1.1 xcdroast-0.98alpha15-prodvd.patch, 1.2, 1.3 xcdroast-0.98alpha15-scan.patch, 1.3, 1.4 xcdroast.spec, 1.29, 1.30 xcdroast-0.98alpha15-64bit_gsize.patch, 1.1, NONE xcdroast-0.98alpha15-conf.patch, 1.1, NONE
Harald Hoyer (harald)
fedora-extras-commits at redhat.com
Mon Aug 13 14:18:25 UTC 2007
Author: harald
Update of /cvs/pkgs/rpms/xcdroast/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv26475
Modified Files:
xcdroast-0.98alpha15-prodvd.patch
xcdroast-0.98alpha15-scan.patch xcdroast.spec
Added Files:
xcdroast-0.98alpha15-01_upstream_configure.patch
xcdroast-0.98alpha15-02_upstream_gtk2locale.patch
xcdroast-0.98alpha15-03_upstream_64bit_gsize.patch
xcdroast-0.98alpha15-04_upstream_read_eagain.patch
xcdroast-0.98alpha15-05_upstream_wav.patch
xcdroast-0.98alpha15-06_man.patch
xcdroast-0.98alpha15-07_case_cmp.patch
xcdroast-0.98alpha15-08_desktop.patch
xcdroast-0.98alpha15-09_share_dir.patch
xcdroast-0.98alpha15-10_cddbtool.patch
xcdroast-0.98alpha15-11_mkisofs_options.patch
xcdroast-0.98alpha15-12_cdrecord_versions.patch
xcdroast-0.98alpha15-13_cdrecord_to_wodim.patch
xcdroast-0.98alpha15-14_atapi_to_oldatapi.patch
xcdroast-0.98alpha15-15_no_readcd_version.patch
Removed Files:
xcdroast-0.98alpha15-64bit_gsize.patch
xcdroast-0.98alpha15-conf.patch
Log Message:
- more cdrkit compat patches
xcdroast-0.98alpha15-01_upstream_configure.patch:
--- NEW FILE xcdroast-0.98alpha15-01_upstream_configure.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 01_upstream_configure.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/configure trunk/configure
--- trunk~/configure 2006-01-20 13:34:14.000000000 +0100
+++ trunk/configure 2006-01-20 13:51:55.000000000 +0100
@@ -4361,55 +4361,6 @@
LIBS="$LIBS $PKGCONFIG_LIBS"
CFLAGS="$CFLAGS $PKGCONFIG_CFLAGS"
- # Extract the first word of "pcre-config", so it can be a program name with args.
-set dummy pcre-config; ac_word=$2
-echo "$as_me:$LINENO: checking for $ac_word" >&5
-echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-if test "${ac_cv_path_PCRE_CONFIG+set}" = set; then
- echo $ECHO_N "(cached) $ECHO_C" >&6
-else
- case $PCRE_CONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PCRE_CONFIG="$PCRE_CONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-for as_dir in $PATH
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PCRE_CONFIG="$as_dir/$ac_word$ac_exec_ext"
- echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
-done
-
- test -z "$ac_cv_path_PCRE_CONFIG" && ac_cv_path_PCRE_CONFIG="no"
- ;;
-esac
-fi
-PCRE_CONFIG=$ac_cv_path_PCRE_CONFIG
-
-if test -n "$PCRE_CONFIG"; then
- echo "$as_me:$LINENO: result: $PCRE_CONFIG" >&5
-echo "${ECHO_T}$PCRE_CONFIG" >&6
-else
- echo "$as_me:$LINENO: result: no" >&5
-echo "${ECHO_T}no" >&6
-fi
-
- if test "x$PCRE_CONFIG" = "xno" ; then
- { { echo "$as_me:$LINENO: error: pcre-config not found please install libpcre3-dev or similar" >&5
-echo "$as_me: error: pcre-config not found please install libpcre3-dev or similar" >&2;}
- { (exit 1); exit 1; }; }
- else
- LIBS="$LIBS `$PCRE_CONFIG --libs`"
- CFLAGS="$CFLAGS `$PCRE_CONFIG --cflags`"
- fi
-
else
@@ -9249,7 +9200,6 @@
s, at PKG_CONFIG@,$PKG_CONFIG,;t t
s, at PKGCONFIG_CFLAGS@,$PKGCONFIG_CFLAGS,;t t
s, at PKGCONFIG_LIBS@,$PKGCONFIG_LIBS,;t t
-s, at PCRE_CONFIG@,$PCRE_CONFIG,;t t
s, at GLIB_CONFIG@,$GLIB_CONFIG,;t t
s, at GLIB_CFLAGS@,$GLIB_CFLAGS,;t t
s, at GLIB_LIBS@,$GLIB_LIBS,;t t
diff -urNad trunk~/configure.in trunk/configure.in
--- trunk~/configure.in 2006-01-20 13:34:14.000000000 +0100
+++ trunk/configure.in 2006-01-20 13:51:58.000000000 +0100
@@ -105,14 +105,6 @@
LIBS="$LIBS $PKGCONFIG_LIBS"
CFLAGS="$CFLAGS $PKGCONFIG_CFLAGS"
- AC_PATH_PROG(PCRE_CONFIG, pcre-config, no)
- if test "x$PCRE_CONFIG" = "xno" ; then
- AC_MSG_ERROR(pcre-config not found please install libpcre3-dev or similar)
- else
- LIBS="$LIBS `$PCRE_CONFIG --libs`"
- CFLAGS="$CFLAGS `$PCRE_CONFIG --cflags`"
- fi
-
else
dnl pure plain GTK+-1.2.x support
xcdroast-0.98alpha15-02_upstream_gtk2locale.patch:
--- NEW FILE xcdroast-0.98alpha15-02_upstream_gtk2locale.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 02_upstream_gtk2locale.patch.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/src/xtools.c trunk/src/xtools.c
--- trunk~/src/xtools.c 2006-01-20 16:07:46.000000000 +0100
+++ trunk/src/xtools.c 2006-01-20 16:08:06.000000000 +0100
@@ -3662,9 +3662,13 @@
if (c_locale_is_utf8)
return str;
- /* should be logical to use g_filename_from_utf8() here, but
- somehow this works not correctly on my testsystem */
+#ifdef BROKEN_GTK2_LOCALE
+ /* on my redhat 7.3 system it does only work that way, but
+ on other systems the correct way is in the #else branch */
locstr = g_locale_from_utf8(str, strlen(str), &in, &out, NULL);
+#else
+ locstr = g_filename_from_utf8(str, strlen(str), &in, &out, NULL);
+#endif
if (locstr) {
strncpy(str, locstr, MAXLINE);
}
xcdroast-0.98alpha15-03_upstream_64bit_gsize.patch:
--- NEW FILE xcdroast-0.98alpha15-03_upstream_64bit_gsize.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 03_upstream_64bit_gsize.patch.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/src/xtools.c trunk/src/xtools.c
--- trunk~/src/xtools.c 2006-01-20 16:07:46.000000000 +0100
+++ trunk/src/xtools.c 2006-01-20 16:10:23.000000000 +0100
@@ -3635,7 +3635,7 @@
return str;
#else
gchar *locstr;
-gint in, out;
+gsize in, out;
locstr = g_locale_from_utf8(str, strlen(str), &in, &out, NULL);
if (locstr) {
@@ -3655,7 +3655,7 @@
return str;
#else
gchar *locstr;
-gint in, out;
+gsize in, out;
/* ok, if your filesystem is already UTF8 we are not
allowed to change the filenames here. */
xcdroast-0.98alpha15-04_upstream_read_eagain.patch:
--- NEW FILE xcdroast-0.98alpha15-04_upstream_read_eagain.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 04_upstream_read_eagain.patch.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/src/tools.c trunk/src/tools.c
--- trunk~/src/tools.c 2006-01-20 16:15:30.000000000 +0100
+++ trunk/src/tools.c 2006-01-20 16:25:51.000000000 +0100
@@ -559,6 +559,33 @@
}
+/* read a single char from a file descriptor. If the descriptor
+ says that it is not available, then try again up to 5 times,
+ before giving up.
+ Required for Mac OS 10.3
+*/
+
+static gint read_char(gint fd, gchar *c) {
+gint rc;
+gint retries;
+
+ retries = 5;
+
+ while (retries) {
+ rc = read(fd, c, 1);
+
+ /* all ok, read one char or EOF */
+ if (rc != -1) {
+ return rc;
+ }
+
+ /* error code, try again after a little while */
+ usleep(100);
+ retries--;
+ }
+ return rc;
+}
+
/*
* Read a line from a descriptor. Read the line one byte at a time,
* looking for the newline. Works fine in nonblocking mode..here
@@ -576,7 +603,7 @@
str = ptr;
for (n = 1; n < maxlen; n++) {
- if ( (rc = read(fd, &c, 1)) == 1) {
+ if ( (rc = read_char(fd, &c)) == 1) {
*ptr++ = c;
if (c == '\n') {
break;
xcdroast-0.98alpha15-05_upstream_wav.patch:
--- NEW FILE xcdroast-0.98alpha15-05_upstream_wav.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 05_upstream_wav.patch.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/src/main.h trunk/src/main.h
--- trunk~/src/main.h 2006-01-20 16:26:51.000000000 +0100
+++ trunk/src/main.h 2006-01-20 16:29:30.000000000 +0100
@@ -175,8 +175,7 @@
void wavplay_frontend(GtkWidget *widget);
void wavplay_dodouble();
-gint is_std_wav_file(guchar *hdr);
-gint is_in_cd_quality(guchar *hdr);
+off_t is_std_wav_file(int f, off_t *offset);
void dodebug(gint debuglevel, gchar *fmt, ...);
void dolog(gint loglevel, gchar *fmt, ...);
diff -urNad trunk~/src/wav_id.c trunk/src/wav_id.c
--- trunk~/src/wav_id.c 2006-01-20 16:29:11.000000000 +0100
+++ trunk/src/wav_id.c 2006-01-20 16:29:30.000000000 +0100
@@ -5,6 +5,11 @@
machine-independent (work both on big and little endian)
code to check if we have valid wavheader that is configured
for cd-quality (16 bit, stereo, 44.1kHz)
+
+ 01.04.04 steve wahl
+
+ Do correct RIFF parsing, don't assume a static header style.
+ Code borrowed from cdrecord.
*/
#ifdef HAVE_CONFIG_H
@@ -13,62 +18,147 @@
#include "largefile.h"
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <unistd.h>
#include <string.h>
#include <glib.h>
#include "xcdroast.h"
-/* check if valid wav-header */
-/* endian independent version */
-/* return 1 if true, 0 if not */
+typedef struct {
+ guchar ckid[4];
+ guchar cksize[4];
+} chunk_t;
-gint is_std_wav_file(guchar *hdr) {
-gchar tmp[MAXLINE];
-guint wFormatTag;
-guint fmtOffset;
+typedef struct {
+ guchar wave[4];
+} riff_chunk;
- strncpy(tmp,(char *) hdr+0,4);
- if (strncmp(tmp,"RIFF",4) != 0)
- return 0;
+typedef struct {
+ guchar fmt_tag[2];
+ guchar channels[2];
+ guchar sample_rate[4];
+ guchar av_byte_rate[4];
+ guchar block_size[2];
+ guchar bits_per_sample[2];
+} fmt_chunk;
- strncpy(tmp,(char *) hdr+8,4);
- if (strncmp(tmp,(char *)"WAVE",4) != 0)
- return 0;
+#define WAV_RIFF_MAGIC "RIFF" /* Magic for file format */
+#define WAV_WAVE_MAGIC "WAVE" /* Magic for Waveform Audio */
+#define WAV_FMT_MAGIC "fmt " /* Start of Waveform format */
+#define WAV_DATA_MAGIC "data" /* Start of data chunk */
+#define WAV_FORMAT_PCM 0x0001 /* Linear PCM format */
+#define WAV_FORMAT_ULAW 0x0101 /* American ISDN Telephonie */
+#define WAV_FORMAT_ALAW 0x0102 /* International ISDN Tel. */
+#define WAV_FORMAT_ADPCM 0x0103 /* ADPCM format */
- strncpy(tmp,(char *) hdr+12,4);
- if (strncmp(tmp,(char *)"fmt ",4) != 0)
- return 0;
+#define le_a_to_u_short(a) ((unsigned short) \
+ ((((unsigned char*) a)[0] & 0xFF) | \
+ (((unsigned char*) a)[1] << 8 & 0xFF00)))
- fmtOffset = (hdr[19]<<24) + (hdr[18]<<16) + (hdr[17]<<8) + hdr[16];
- strncpy(tmp,(char *) hdr+20+fmtOffset,4);
- if (strncmp(tmp,(char *)"data",4) != 0)
- return 0;
+#ifdef __STDC__
+#define le_a_to_u_long(a) ((unsigned long) \
+ ((((unsigned char*) a)[0] & 0xFF) | \
+ (((unsigned char*) a)[1] << 8 & 0xFF00) | \
+ (((unsigned char*) a)[2] << 16 & 0xFF0000) | \
+ (((unsigned char*) a)[3] << 24 & 0xFF000000UL)))
+#else
+#define le_a_to_u_long(a) ((unsigned long) \
+ ((((unsigned char*) a)[0] & 0xFF) | \
+ (((unsigned char*) a)[1] << 8 & 0xFF00) | \
+ (((unsigned char*) a)[2] << 16 & 0xFF0000) | \
+ (((unsigned char*) a)[3] << 24 & 0xFF000000)))
+#endif
- wFormatTag = (hdr[21] << 8) + hdr[20];
- if (wFormatTag != 1)
- return 0;
+/* check if valid wav-header */
+/* endian independent version */
+/* return number of bytes if valid, 0 if not */
+/* if offset is non NULL, place offset in file to base of wave data there */
+/* leaves file pointer at begining of wave data if valid */
- return 1;
-}
+off_t is_std_wav_file(gint f, off_t *offset)
+{
+ chunk_t chunk;
+ riff_chunk riff;
+ fmt_chunk fmt;
+ struct stat sb;
+ off_t cursor;
+ gint gotFormat;
+ mode_t mode;
+ off_t size;
+ /*
+ * First check if a bad guy tries to call wavsize()
+ * with an unappropriate file descriptor.
+ * return 0 in this case.
+ */
-/* check if wav-file is in cd-quality */
-/* endian independent version */
-/* return 1 if true, 0 if not */
+ if (isatty(f))
+ return (0);
+ if (fstat(f, &sb) < 0)
+ return (0);
+ mode = sb.st_mode & S_IFMT;
+ if (!S_ISREG(mode) && !S_ISBLK(mode) && !S_ISCHR(mode))
+ return (0);
-gint is_in_cd_quality(guchar *hdr) {
-guint nChannels;
-guint wBitsPerSample;
-guint nSamplesPerSec;
+ cursor = (off_t)0;
+ lseek(f, cursor, SEEK_SET);
+ gotFormat = FALSE;
- nChannels = (hdr[23] << 8) + hdr[22];
- wBitsPerSample = (hdr[35] << 8) + hdr[34];
- nSamplesPerSec = (hdr[27]<<24) + (hdr[26]<<16) + (hdr[25]<<8) + hdr[24];
+ for (;;) {
+ if (read(f, &chunk, sizeof (chunk)) != sizeof (chunk))
+ goto err;
+ size = (off_t)le_a_to_u_long(chunk.cksize);
- if (nChannels != 2 || wBitsPerSample != 16 ||
- nSamplesPerSec != 44100)
- return 0;
+ if (strncmp((char *)chunk.ckid, WAV_RIFF_MAGIC, 4) == 0) {
+ /*
+ * We found (first) RIFF header. Check if a WAVE
+ * magic follows. Set up size to be able to skip
+ * past this header.
+ */
+ if (read(f, &riff, sizeof (riff)) != sizeof (riff))
+ goto err;
+ if (strncmp((char *)riff.wave, WAV_WAVE_MAGIC, 4) != 0)
+ goto err;
+ size = (off_t)sizeof (riff);
- return 1;
+ } else if (strncmp((char *)chunk.ckid, WAV_FMT_MAGIC, 4) == 0) {
+ /*
+ * We found WAVE "fmt " header. Check size (if it is
+ * valid for a WAVE file) and coding whether it is
+ * useable for a CD.
+ */
+ if (size < (off_t)sizeof (fmt)) goto err;
+ if (sizeof (fmt) != read(f, &fmt, sizeof (fmt))) goto err;
+ if (le_a_to_u_short(fmt.channels) != 2 ||
+ le_a_to_u_long(fmt.sample_rate) != 44100 ||
+ le_a_to_u_short(fmt.bits_per_sample) != 16) {
+ goto err;
+ }
+ gotFormat = TRUE;
+
+ } else if (strncmp((char *)chunk.ckid, WAV_DATA_MAGIC, 4) == 0) {
+ /*
+ * We found WAVE "data" header. This contains the
+ * size value of the audio part.
+ */
+ if (!gotFormat) {
+ goto err;
+ }
+ if ((cursor + size + sizeof (chunk)) > sb.st_size)
+ size = sb.st_size - (cursor + sizeof (chunk));
+ if (offset)
+ *offset = cursor + sizeof (chunk) ;
+ return (size);
+ }
+ cursor += size + sizeof (chunk);
+ lseek(f, cursor, SEEK_SET); /* Skip over current chunk */
+ }
+err:
+ lseek(f, (off_t)0L, SEEK_SET);
+ return (0);
}
+
+
diff -urNad trunk~/src/wavplay.c trunk/src/wavplay.c
--- trunk~/src/wavplay.c 2006-01-20 16:27:15.000000000 +0100
+++ trunk/src/wavplay.c 2006-01-20 16:29:30.000000000 +0100
@@ -64,13 +64,12 @@
#include <dmedia/audio.h>
#endif
-static guchar waveHdr[44];
+static off_t waveBase ;
static gint abuf_size;
static guchar *audiobuf;
gint read_line(gint fd, gchar *ptr, gint maxlen);
-gint is_std_wav_file(guchar *hdr);
-gint is_in_cd_quality(guchar *hdr);
+off_t is_std_wav_file(int f, off_t *offset);
#if defined(linux) || defined(__FreeBSD__)
@@ -747,7 +746,6 @@
gint oldtick = 0;
off_t bytessofar = 0;
off_t totalbytes;
-struct stat stat_buf;
gint min,sec;
gchar keybuffer[MAXLINE];
#if !(defined(linux))
@@ -830,20 +828,11 @@
}
/* get filesize */
- fstat(fd, &stat_buf);
- totalbytes = (off_t) (stat_buf.st_size - (off_t)sizeof(waveHdr));
-
- read(fd, &waveHdr, sizeof(waveHdr));
+ totalbytes = is_std_wav_file(fd, &waveBase) ;
/* is it a wav-file? */
- if (!is_std_wav_file(waveHdr)) {
- g_warning("No valid wavfile\n");
- exit(0);
- }
-
- /* is it in cd-quality? */
- if (!is_in_cd_quality(waveHdr)) {
- g_warning("wavfile not in cd-quality\n");
+ if (totalbytes == 0) {
+ g_warning("No valid wavfile, or not in cd-quality\n");
exit(0);
}
@@ -871,7 +860,7 @@
if (guimode && (read_line(STDIN_FILENO,keybuffer,MAXLINE) > 0)) {
/* stop command */
if (g_strncasecmp(keybuffer,"stop",4) == 0) {
- lseek(fd, sizeof(waveHdr), SEEK_SET);
+ lseek(fd, waveBase, SEEK_SET);
bytessofar = 0;
tick = 0;
doplay = 0;
@@ -895,7 +884,7 @@
if (g_strncasecmp(keybuffer,"set",3) == 0) {
tick = atoi(keybuffer+3);
bytessofar = (off_t)tick *CDDAFRAME*75;
- lseek(fd, (off_t)sizeof(waveHdr)+bytessofar,
+ lseek(fd, waveBase+bytessofar,
SEEK_SET);
g_print("%s%d\n",doplay?"play":"stop",tick);
fflush(stdout);
@@ -911,7 +900,15 @@
if (doplay) {
/* read from wav-file */
- l = read(fd, audiobuf, abuf_size);
+ /* but only up until we reach totalbytes */
+ l = totalbytes - bytessofar ;
+ if (l > abuf_size)
+ l = abuf_size ;
+ if (l < 0)
+ l = 0 ;
+
+ if (l > 0)
+ l = read(fd, audiobuf, l);
if (l > 0) {
#if !(defined(linux))
/* turn byte order only on non linux platforms */
@@ -945,7 +942,7 @@
exit(-1);
}
#endif
- bytessofar+=(off_t)abuf_size;
+ bytessofar+=(off_t)l;
} else {
/* read error on wav-file */
@@ -958,7 +955,7 @@
doplay = 0;
if (guimode) {
/* roll back */
- lseek(fd, sizeof(waveHdr), SEEK_SET);
+ lseek(fd, waveBase, SEEK_SET);
bytessofar = 0;
tick = 0;
g_print("done%d\n",tick);
diff -urNad trunk~/src/xtools.c trunk/src/xtools.c
--- trunk~/src/xtools.c 2006-01-20 16:27:42.000000000 +0100
+++ trunk/src/xtools.c 2006-01-20 16:29:30.000000000 +0100
@@ -1851,7 +1851,6 @@
/* return 1 if, 0 if not */
gint check_wav_file(gchar *wavname) {
-guchar waveHdr[44];
gint fd;
fd = open (wavname, O_RDONLY, 0);
@@ -1859,16 +1858,8 @@
return 0;
}
- read(fd, &waveHdr, sizeof(waveHdr));
-
- if (!is_std_wav_file(waveHdr)) {
- /* no wav at all */
- close(fd);
- return 0;
- }
-
- /* is it in cd-quality? */
- if (!is_in_cd_quality(waveHdr)) {
+ if (!is_std_wav_file(fd, NULL)) {
+ /* no wav at all or not cd-quality */
close(fd);
return 0;
}
xcdroast-0.98alpha15-06_man.patch:
--- NEW FILE xcdroast-0.98alpha15-06_man.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 06_man.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/man/xcdroast.1 trunk/man/xcdroast.1
--- trunk~/man/xcdroast.1 2006-01-20 17:39:36.000000000 +0100
+++ trunk/man/xcdroast.1 2006-01-20 17:40:40.000000000 +0100
@@ -84,7 +84,7 @@
fine.)
.SH BUGS
-This 'man' page is to short. Really useable information can be found
+This 'man' page is too short. Really useable information can be found
in the documentation included with X-CD-Roast, in the FAQ
on
.IR http://www.xcdroast.org/faq
xcdroast-0.98alpha15-07_case_cmp.patch:
--- NEW FILE xcdroast-0.98alpha15-07_case_cmp.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 07_case_cmp.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/src/xtools.c trunk/src/xtools.c
--- trunk~/src/xtools.c 2006-01-20 17:09:43.000000000 +0100
+++ trunk/src/xtools.c 2006-01-20 18:28:52.000000000 +0100
@@ -974,9 +974,9 @@
isosize = 0;
/* now do some tests about file-contents */
- if (strncmp(file+strlen(file)-4,".toc",4) == 0) {
+ if (strncasecmp(file+strlen(file)-4,".toc",4) == 0) {
type = 4;
- } else if (strncmp(file+strlen(file)-4,".wav",4) == 0) {
+ } else if (strncasecmp(file+strlen(file)-4,".wav",4) == 0) {
/* wav-file */
if (check_wav_file(tmp) == 0) {
/* invalid wav */
@@ -1052,7 +1052,7 @@
/* skip to short filenames */
if (len2 < len) continue;
- if (strncmp((ent->d_name)+len2-len,img_ext[i],len) == 0) {
+ if (strncasecmp((ent->d_name)+len2-len,img_ext[i],len) == 0) {
/* we found a match */
analyze_imgfile(path,ent->d_name,retlist);
}
xcdroast-0.98alpha15-08_desktop.patch:
--- NEW FILE xcdroast-0.98alpha15-08_desktop.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 08_desktop.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/extra/xcdroast.desktop trunk/extra/xcdroast.desktop
--- trunk~/extra/xcdroast.desktop 2006-01-20 13:34:14.000000000 +0100
+++ trunk/extra/xcdroast.desktop 2006-02-26 18:33:05.000000000 +0100
@@ -1,6 +1,8 @@
[Desktop Entry]
+Encoding=UTF-8
Name=X-CD-Roast
+Comment=Create a CD
+Exec=xcdroast
+Icon=xcdroast.xpm
Type=Application
-Exec=/usr/bin/xcdroast
-Comment=CD creation tool
-Icon=/usr/lib/xcdroast-0.98/icons/xcdricon.png
+Categories=Application;AudioVideo;
xcdroast-0.98alpha15-09_share_dir.patch:
--- NEW FILE xcdroast-0.98alpha15-09_share_dir.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 09_share_dir.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Patch to provide different paths to /usr/lib and /usr/share.
@DPATCH@
diff -urNad trunk~/Makefile.in trunk/Makefile.in
--- trunk~/Makefile.in 2006-05-06 15:54:43.000000000 +0200
+++ trunk/Makefile.in 2006-05-06 15:55:04.000000000 +0200
@@ -108,6 +108,7 @@
USE_NONROOTMODE = @USE_NONROOTMODE@
VERSION = @VERSION@
XCDRLIB_PREFIX = @XCDRLIB_PREFIX@
+XCDRSHARE_PREFIX = @XCDRSHARE_PREFIX@
am__include = @am__include@
am__quote = @am__quote@
install_sh = @install_sh@
diff -urNad trunk~/acinclude.m4 trunk/acinclude.m4
--- trunk~/acinclude.m4 2006-05-06 15:18:20.000000000 +0200
+++ trunk/acinclude.m4 2006-05-06 15:54:54.000000000 +0200
@@ -24,7 +24,7 @@
AC_DEFUN(AM_PATH_XCDRLIBDIR,
[ AC_ARG_WITH(xcdroast-libdir-prefix,
AC_HELP_STRING([--with-xcdroast-libdir-prefix=PFX],
- [set where the utils/images of xcdroast should be installed - default: PREFIX/lib/xcdroast-0.98]),
+ [set where the utils of xcdroast should be installed - default: PREFIX/lib/xcdroast-0.98]),
xcdrlibdir_config_prefix="$withval", xcdrlibdir_config_prefix="")
if test "x$xcdrlibdir_config_prefix" = "x"; then
@@ -38,6 +38,26 @@
AC_SUBST(XCDRLIB_PREFIX)
])
+dnl AM_PATH_XCDRSHAREDIR([MINIMUM-VERSION,
+dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
+dnl
+AC_DEFUN(AM_PATH_XCDRSHAREDIR,
+[ AC_ARG_WITH(xcdroast-sharedir-prefix,
+ AC_HELP_STRING([--with-xcdroast-sharedir-prefix=PFX],
+ [set where the images of xcdroast should be installed - default: PREFIX/share/xcdroast-0.98]),
+ xcdrsharedir_config_prefix="$withval", xcdrsharedir_config_prefix="")
+
+ if test "x$xcdrsharedir_config_prefix" = "x"; then
+ XCDRSHARE_PREFIX="$prefix/share/xcdroast-0.98"
+ else
+ XCDRSHARE_PREFIX=$xcdrsharedir_config_prefix
+ fi
+ if test "X$XCDRSHARE_PREFIX" = "XNONE/share/xcdroast-0.98"; then
+ XCDRSHARE_PREFIX="$ac_default_prefix/share/xcdroast-0.98"
+ fi
+ AC_SUBST(XCDRSHARE_PREFIX)
+])
+
dnl AM_DEP_NONROOTMODE([MINIMUM-VERSION,
dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
dnl
diff -urNad trunk~/aclocal.m4 trunk/aclocal.m4
--- trunk~/aclocal.m4 2006-05-06 15:18:20.000000000 +0200
+++ trunk/aclocal.m4 2006-05-06 15:54:54.000000000 +0200
@@ -51,6 +51,26 @@
AC_SUBST(XCDRLIB_PREFIX)
])
+dnl AM_PATH_XCDRSHAREDIR([MINIMUM-VERSION,
+dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
+dnl
+AC_DEFUN(AM_PATH_XCDRSHAREDIR,
+[ AC_ARG_WITH(xcdroast-sharedir-prefix,
+ AC_HELP_STRING([--with-xcdroast-sharedir-prefix=PFX],
+ [set where the images of xcdroast should be installed - default: PREFIX/share/xcdroast-0.98]),
+ xcdrsharedir_config_prefix="$withval", xcdrsharedir_config_prefix="")
+
+ if test "x$xcdrsharedir_config_prefix" = "x"; then
+ XCDRSHARE_PREFIX="$prefix/share/xcdroast-0.98"
+ else
+ XCDRSHARE_PREFIX=$xcdrsharedir_config_prefix
+ fi
+ if test "X$XCDRSHARE_PREFIX" = "XNONE/share/xcdroast-0.98"; then
+ XCDRSHARE_PREFIX="$ac_default_prefix/share/xcdroast-0.98"
+ fi
+ AC_SUBST(XCDRSHARE_PREFIX)
+])
+
dnl AM_DEP_NONROOTMODE([MINIMUM-VERSION,
dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]])
dnl
diff -urNad trunk~/configure.in trunk/configure.in
--- trunk~/configure.in 2006-05-06 15:54:54.000000000 +0200
+++ trunk/configure.in 2006-05-06 15:54:54.000000000 +0200
@@ -96,6 +96,7 @@
AM_PATH_CDRTOOLS
AM_PATH_XCDRLIBDIR
+AM_PATH_XCDRSHAREDIR
AM_DEP_NONROOTMODE
AM_DEP_ENABLEGTK2
diff -urNad trunk~/src/Makefile.am trunk/src/Makefile.am
--- trunk~/src/Makefile.am 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/Makefile.am 2006-05-06 15:54:54.000000000 +0200
@@ -23,7 +23,7 @@
setup.c io.c duplicate.c wav_frontend.c wav_id.c create.c \
largefile.h language.h main.h xcdrdata.h xcdroast.h gettext.h
-xcdroast_CFLAGS = $(GNUCFLAGS) $(GDK_PIXBUF_CFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
+xcdroast_CFLAGS = $(GNUCFLAGS) $(GDK_PIXBUF_CFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DPRE_SHAREDIR="\"$(XCDRSHARE_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
xcdroast_LDFLAGS = $(EXTRA_LDFLAGS)
xcdroast_LDADD = @LIBINTL@ @ALLOCA@ $(GTK_LIBS) $(GDK_PIXBUF_LIBS) $(AUDIO_LIBS)
@@ -48,5 +48,5 @@
cddbtool_LDADD = $(GLIB_LIBS)
xcdrwrap_SOURCES = xcdrwrap.c largefile.h xcdroast.h
-xcdrwrap_CFLAGS = $(GNUCFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
+xcdrwrap_CFLAGS = $(GNUCFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DPRE_SHAREDIR="\"$(XCDRSHARE_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
diff -urNad trunk~/src/Makefile.in trunk/src/Makefile.in
--- trunk~/src/Makefile.in 2006-05-06 15:54:37.000000000 +0200
+++ trunk/src/Makefile.in 2006-05-06 15:55:04.000000000 +0200
@@ -108,6 +108,7 @@
USE_NONROOTMODE = @USE_NONROOTMODE@
VERSION = @VERSION@
XCDRLIB_PREFIX = @XCDRLIB_PREFIX@
+XCDRSHARE_PREFIX = @XCDRSHARE_PREFIX@
am__include = @am__include@
am__quote = @am__quote@
install_sh = @install_sh@
@@ -134,7 +135,7 @@
largefile.h language.h main.h xcdrdata.h xcdroast.h gettext.h
-xcdroast_CFLAGS = $(GNUCFLAGS) $(GDK_PIXBUF_CFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
+xcdroast_CFLAGS = $(GNUCFLAGS) $(GDK_PIXBUF_CFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DPRE_SHAREDIR="\"$(XCDRSHARE_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
xcdroast_LDFLAGS = $(EXTRA_LDFLAGS)
xcdroast_LDADD = @LIBINTL@ @ALLOCA@ $(GTK_LIBS) $(GDK_PIXBUF_LIBS) $(AUDIO_LIBS)
@@ -159,7 +160,7 @@
cddbtool_LDADD = $(GLIB_LIBS)
xcdrwrap_SOURCES = xcdrwrap.c largefile.h xcdroast.h
-xcdrwrap_CFLAGS = $(GNUCFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
+xcdrwrap_CFLAGS = $(GNUCFLAGS) $(EXTRA_CFLAGS) $(AM_CFLAGS) -DPRE_PREFIX="\"$(prefix)\"" -DPRE_LIBDIR="\"$(XCDRLIB_PREFIX)\"" -DPRE_SHAREDIR="\"$(XCDRSHARE_PREFIX)\"" -DCDRTOOLS_PREFIX="\"$(CDRTOOLS_PREFIX)\"" -DSYSCONFDIR="\"$(sysconfdir)\"" -DUSE_NONROOTMODE="$(USE_NONROOTMODE)"
subdir = src
mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/config.h
diff -urNad trunk~/src/init.c trunk/src/init.c
--- trunk~/src/init.c 2006-05-06 15:52:32.000000000 +0200
+++ trunk/src/init.c 2006-05-06 15:54:54.000000000 +0200
@@ -73,6 +73,7 @@
gchar username[MAXLINE];
gchar configdir[MAXLINE];
gchar sharedir[MAXLINE];
+gchar libdir[MAXLINE];
gchar rootconfig[MAXLINE];
gchar prefixdir[MAXLINE];
gint support_ontheflyaudio;
@@ -499,13 +500,13 @@
gtk_exit(1);
}
- g_snprintf(tmp,MAXLINE,"%s/%s", sharedir, WAVPLAY);
+ g_snprintf(tmp,MAXLINE,"%s/%s", libdir, WAVPLAY);
check_executable(tmp,NULL,1);
- g_snprintf(tmp,MAXLINE,"%s/%s", sharedir, RMTOOL);
+ g_snprintf(tmp,MAXLINE,"%s/%s", libdir, RMTOOL);
check_executable(tmp,NULL,1);
- g_snprintf(tmp,MAXLINE,"%s/%s", sharedir, VRFYTOOL);
+ g_snprintf(tmp,MAXLINE,"%s/%s", libdir, VRFYTOOL);
check_executable(tmp,NULL,1);
- g_snprintf(tmp,MAXLINE,"%s/%s", sharedir, CDDBTOOL);
+ g_snprintf(tmp,MAXLINE,"%s/%s", libdir, CDDBTOOL);
check_executable(tmp,NULL,1);
return isProDVD;
@@ -520,7 +521,7 @@
gchar tmp[MAXLINE];
gint stat;
- g_snprintf(tmp,MAXLINE,"%s/%s", sharedir, WRAPPER);
+ g_snprintf(tmp,MAXLINE,"%s/%s", libdir, WRAPPER);
check_executable(tmp,NULL,1);
/* security check. If this fails then the wrapper is wrong */
@@ -662,7 +663,7 @@
nofail = 1;
/* first check if the wrapper got the correct permissions */
- g_snprintf(tmp,MAXLINE,"%s/%s", sharedir, WRAPPER);
+ g_snprintf(tmp,MAXLINE,"%s/%s", libdir, WRAPPER);
wrap_uid = get_file_owner(tmp);
wrap_gid = sgid_set(tmp);
@@ -764,7 +765,7 @@
g_print("Options:\n");
g_print("\t-d <debug level>\n");
g_print("\t-c <config directory> (currently: %s)\n", configdir);
- g_print("\t-l <lib directory> (currently: %s)\n", sharedir);
+ g_print("\t-l <lib directory> (currently: %s)\n", libdir);
/* g_print("\t-r <root config-file> (currently: %s)\n", rootconfig); */
g_print("\t-o : Disable multibyte font support\n");
g_print("\t-n : Disable cdrtools version check (use at own risk)\n");
@@ -813,11 +814,17 @@
writerreaderdevs = NULL;
#ifdef PRE_LIBDIR
- /* use prefix as sharedir as it came from the makefile-option */
- strncpy(sharedir, PRE_LIBDIR, MAXLINE);
+ /* use prefix as libdir as it came from the makefile-option */
+ strncpy(libdir, PRE_LIBDIR, MAXLINE);
#else
/* otherwise install our default prefix */
- strncpy(sharedir, LIBDIR, MAXLINE);
+ strncpy(libdir, LIBDIR, MAXLINE);
+#endif
+
+#ifdef PRE_SHAREDIR
+ strncpy(sharedir, PRE_SHAREDIR, MAXLINE);
+#else
+ strncpy(sharedir, SHAREDIR, MAXLINE);
#endif
#ifdef CDRTOOLS_PREFIX
@@ -851,7 +858,7 @@
break;
*/
case 'l':
- strncpy(sharedir, optarg, MAXLINE);
+ strncpy(libdir, optarg, MAXLINE);
break;
case 'a':
@@ -908,7 +915,7 @@
dodebug(1, "debug level: %d\n", debug);
dodebug(1, "configdir: %s\n", configdir);
dodebug(1, "rootconfig: %s\n", rootconfig);
- dodebug(1, "libdir: %s\n",sharedir);
+ dodebug(1, "libdir: %s\n",libdir);
dodebug(1, "checking large file support: sizeof(off_t) = %d\n", sizeof(off_t));
/* gettext stuff */
diff -urNad trunk~/src/io.c trunk/src/io.c
--- trunk~/src/io.c 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/io.c 2006-05-06 15:54:54.000000000 +0200
@@ -114,6 +114,7 @@
extern gchar hostname[MAXLINE];
extern gchar username[MAXLINE];
extern gchar sharedir[MAXLINE];
+extern gchar libdir[MAXLINE];
extern gchar configdir[MAXLINE];
extern gchar prefixdir[MAXLINE];
extern GtkWidget *cddb_info_label;
@@ -7863,7 +7864,7 @@
gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Deleting tracks..."));
/* build of command line */
- g_snprintf(orgcmd,MAXLINE,"%s/%s ", sharedir, RMTOOL);
+ g_snprintf(orgcmd,MAXLINE,"%s/%s ", libdir, RMTOOL);
strcpy(cmd,orgcmd);
length = g_list_length(delfiles);
@@ -8094,7 +8095,7 @@
/* always verify in 512 bytes blocks */
g_snprintf(cmd2,MAXLINE,"%s/%s -b \"%s\" -",
- sharedir, VRFYTOOL, convert_escape(tmptmp));
+ libdir, VRFYTOOL, convert_escape(tmptmp));
dodebug(1, "spawning: %s | %s\n",cmd,cmd2);
dolog(2, "Verify data track %s\n", fname);
@@ -8224,7 +8225,7 @@
strcpy(tmptmp,fname);
g_snprintf(cmd2,MAXLINE,"%s/%s -a \"%s\" -",
- sharedir, VRFYTOOL, convert_escape(tmptmp));
+ libdir, VRFYTOOL, convert_escape(tmptmp));
dodebug(1, "spawning: %s | %s\n",cmd,cmd2);
dolog(2, "Verify audio track %s\n", fname);
@@ -8521,7 +8522,7 @@
if (setupdata.cddb_use_http == 0) {
g_snprintf(cmd,MAXLINE,
"%s/%s -s \"%s\" -p %d -u \"%s\" -h \"%s\" -q \"%s\"",
- sharedir, CDDBTOOL, tmp_cddbhost, setupdata.cddb_port,
+ libdir, CDDBTOOL, tmp_cddbhost, setupdata.cddb_port,
username, hostname, tmp);
} else {
/* we want to use http */
@@ -8529,13 +8530,13 @@
/* but no proxy */
g_snprintf(cmd,MAXLINE,
"%s/%s -s \"%s\" -u \"%s\" -h \"%s\" -H -q \"%s\"",
- sharedir, CDDBTOOL, tmp_cddbhost,
+ libdir, CDDBTOOL, tmp_cddbhost,
username, hostname, tmp);
} else {
/* http with proxy */
g_snprintf(cmd,MAXLINE,
"%s/%s -s \"%s\" -u \"%s\" -h \"%s\" -U \"%s\" -P %d -q \"%s\"",
- sharedir, CDDBTOOL, tmp_cddbhost,
+ libdir, CDDBTOOL, tmp_cddbhost,
username, hostname, tmp_cddbproxy,
setupdata.cddb_proxy_port, tmp);
}
@@ -8593,8 +8594,8 @@
FILE *fpin;
/* allocate memory */
- g_snprintf(line,MAXLINE,"%s/%s -d \"%s\" \"%s/%s\" 2>&1", sharedir,
- WAVPLAY, setupdata.dsp_device, sharedir, DSPTESTSOUND);
+ g_snprintf(line,MAXLINE,"%s/%s -d \"%s\" \"%s/%s\" 2>&1", libdir,
+ WAVPLAY, setupdata.dsp_device, libdir, DSPTESTSOUND);
dodebug(1, "calling: %s\n", line);
@@ -10224,8 +10225,8 @@
if (strncmp(line,"X-CD-Roast ", 11) == 0) {
strcpy(xcdrver,line+11);
}
- if (strncmp(line,"sharedir: ", 10) == 0) {
- strcpy(sharever,line+10);
+ if (strncmp(line,"libdir: ", 8) == 0) {
+ strcpy(sharever,line+8);
}
if (strncmp(line,"prefixdir: ", 11) == 0) {
strcpy(prefixver,line+11);
@@ -10254,9 +10255,9 @@
tmp, xcdrver, XCDROAST_VERSION);
ret = 1;
}
- if (strcmp(sharever,sharedir) != 0) {
- fprintf(stderr, "WARNING: Wrapper %s configured\n\tsharedir %s instead of %s\n",
- tmp, sharever, sharedir);
+ if (strcmp(sharever,libdir) != 0) {
+ fprintf(stderr, "WARNING: Wrapper %s configured\n\tlibdir %s instead of %s\n",
+ tmp, sharever, libdir);
ret = 0;
}
if (strcmp(prefixver,prefixdir) != 0) {
@@ -10370,7 +10371,7 @@
#endif
/* set the correct permissions to the wrapper */
- g_snprintf(bin,MAXLINE,"%s/%s", sharedir, WRAPPER);
+ g_snprintf(bin,MAXLINE,"%s/%s", libdir, WRAPPER);
g_snprintf(tmp,MAXLINE,"%s root %s\n", cmd_chown, bin);
strcat(ret,tmp);
#if 0
@@ -10456,7 +10457,7 @@
}
free_nonrootvalues(&nrs_vals);
#endif
- g_snprintf(bin,MAXLINE,"%s/%s", sharedir, WRAPPER);
+ g_snprintf(bin,MAXLINE,"%s/%s", libdir, WRAPPER);
g_snprintf(tmp,MAXLINE,"%s 755 %s\n", cmd_chmod, bin);
strcat(ret,tmp);
}
diff -urNad trunk~/src/main.c trunk/src/main.c
--- trunk~/src/main.c 2006-05-06 15:52:28.000000000 +0200
+++ trunk/src/main.c 2006-05-06 15:54:54.000000000 +0200
@@ -57,6 +57,7 @@
static gint lastxsize, lastysize;
extern gchar sharedir[MAXLINE];
+extern gchar libdir[MAXLINE];
extern gchar rootconfig[MAXLINE];
extern gchar xcdroast_version_loaded[MAXLINE];
diff -urNad trunk~/src/menus.c trunk/src/menus.c
--- trunk~/src/menus.c 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/menus.c 2006-05-06 15:54:54.000000000 +0200
@@ -72,6 +72,7 @@
extern GList *tocfiles;
extern gint read_abort_mark;
extern gchar sharedir[MAXLINE];
+extern gchar libdir[MAXLINE];
extern GtkWidget *cdlist_l1, *imglist_l2;
extern GtkCList *cdlist, *imglist2;
extern gchar configdir[MAXLINE];
diff -urNad trunk~/src/setup.c trunk/src/setup.c
--- trunk~/src/setup.c 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/setup.c 2006-05-06 15:54:54.000000000 +0200
@@ -61,6 +61,7 @@
extern gchar rootconfig[MAXLINE];
extern gchar xcdroast_version_loaded[MAXLINE];
extern gchar sharedir[MAXLINE];
+extern gchar libdir[MAXLINE];
extern gint altdevscan;
extern gchar security_key[MAXLINE];
diff -urNad trunk~/src/wav_frontend.c trunk/src/wav_frontend.c
--- trunk~/src/wav_frontend.c 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/wav_frontend.c 2006-05-06 15:54:54.000000000 +0200
@@ -50,6 +50,7 @@
extern setup_data_t setupdata;
extern GList *imagelist;
extern gchar sharedir[MAXLINE];
+extern gchar libdir[MAXLINE];
gint wav_in, wavplay_quit;
GtkWidget *wav_quit_button;
@@ -157,7 +158,7 @@
}
strcpy(tmptmp,filename);
- g_snprintf(cmd,MAXLINE,"%s/%s -g -d \"%s\" \"%s\" 2>&1", sharedir, WAVPLAY,
+ g_snprintf(cmd,MAXLINE,"%s/%s -g -d \"%s\" \"%s\" 2>&1", libdir, WAVPLAY,
setupdata.dsp_device, convert_escape(tmptmp));
dodebug(1, "spawning shell: %s\n",cmd);
diff -urNad trunk~/src/xcdroast.h trunk/src/xcdroast.h
--- trunk~/src/xcdroast.h 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/xcdroast.h 2006-05-06 15:54:54.000000000 +0200
@@ -174,6 +174,7 @@
/* default paths/configfile */
#define PREFIX "/usr/local"
#define LIBDIR "lib/xcdroast-0.98"
+#define SHAREDIR "share/xcdroast-0.98"
#define CONFIGDIR "~/.xcdroast"
#define CONFFILE "xcdr098.cfg"
#define LOGFILE "xcdr098.log"
diff -urNad trunk~/src/xcdrwrap.c trunk/src/xcdrwrap.c
--- trunk~/src/xcdrwrap.c 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/xcdrwrap.c 2006-05-06 15:54:54.000000000 +0200
@@ -91,6 +91,7 @@
static char sharedir[MAXLINE];
+static char libdir[MAXLINE];
static char prefixdir[MAXLINE];
static char rootconfig[MAXLINE];
static char username[MAXLINE];
@@ -298,6 +299,7 @@
}
if (strncmp(cmd,"-V",MAXLINE) == 0) {
printf("X-CD-Roast %s\n", XCDROAST_VERSION);
+ printf("libdir: %s\n", libdir);
printf("sharedir: %s\n", sharedir);
printf("prefixdir: %s\n", prefixdir);
@@ -359,8 +361,8 @@
return;
}
- /* otherwise its relative - add sharedir first */
- snprintf(ret,MAXLINE,"%s/%s", sharedir, app);
+ /* otherwise its relative - add libdir first */
+ snprintf(ret,MAXLINE,"%s/%s", libdir, app);
/* now check if this file does exist */
if (stat(ret,&buf) != 0) {
@@ -613,11 +615,13 @@
seen_device_spec = 0;
#ifdef PRE_LIBDIR
- /* use prefix as sharedir as it came from the makefile-option */
- strncpy(sharedir, PRE_LIBDIR, MAXLINE);
+ /* use prefix as libdir as it came from the makefile-option */
+ strncpy(libdir, PRE_LIBDIR, MAXLINE);
+ strncpy(sharedir, PRE_SHAREDIR, MAXLINE);
#else
/* otherwise install our default prefix */
- strncpy(sharedir, LIBDIR, MAXLINE);
+ strncpy(libdir, LIBDIR, MAXLINE);
+ strncpy(sharedir, SHAREDIR, MAXLINE);
#endif
#ifdef CDRTOOLS_PREFIX
diff -urNad trunk~/src/xtools.c trunk/src/xtools.c
--- trunk~/src/xtools.c 2006-05-06 15:54:54.000000000 +0200
+++ trunk/src/xtools.c 2006-05-06 15:54:54.000000000 +0200
@@ -58,6 +58,7 @@
extern gint bigfonts;
extern gint oldfontcode;
extern gchar sharedir[MAXLINE];
+extern gchar libdir[MAXLINE];
extern gchar prefixdir[MAXLINE];
extern gint c_locale_is_utf8;
@@ -2361,8 +2362,8 @@
return;
}
- /* otherwise its relative - add sharedir first */
- g_snprintf(ret,MAXLINE,"%s/%s", sharedir, app);
+ /* otherwise its relative - add libdir first */
+ g_snprintf(ret,MAXLINE,"%s/%s", libdir, app);
/* now check if this file does exist */
if (stat(ret,&buf) != 0) {
@@ -2380,7 +2381,7 @@
gchar *get_wrap_path(gchar *cmd, gchar *ret) {
gchar tmp[MAXLINE];
- g_snprintf(tmp,MAXLINE,"%s/%s %s", sharedir, WRAPPER, cmd);
+ g_snprintf(tmp,MAXLINE,"%s/%s %s", libdir, WRAPPER, cmd);
strncpy(ret, tmp, MAXLINE);
return ret;
@@ -2394,10 +2395,10 @@
/* use DVD version if installed and media type > 1GB */
if (curset.isProDVD && curset.cdrtype > 1000) {
- g_snprintf(tmp,MAXLINE,"%s/%s %s", sharedir, WRAPPER,
+ g_snprintf(tmp,MAXLINE,"%s/%s %s", libdir, WRAPPER,
"CDRECORDPRODVD");
} else {
- g_snprintf(tmp,MAXLINE,"%s/%s %s", sharedir, WRAPPER,
+ g_snprintf(tmp,MAXLINE,"%s/%s %s", libdir, WRAPPER,
"CDRECORD");
}
strncpy(ret, tmp, MAXLINE);
xcdroast-0.98alpha15-10_cddbtool.patch:
--- NEW FILE xcdroast-0.98alpha15-10_cddbtool.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 10_cddbtool.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Patch to suppor sending utf8 char when using gtk2.
## DP: Provided by Robert Grimm. #336202
@DPATCH@
diff -urNad trunk~/src/cddbtool.c trunk/src/cddbtool.c
--- trunk~/src/cddbtool.c 2006-05-04 13:39:56.000000000 +0200
+++ trunk/src/cddbtool.c 2006-05-04 13:40:52.000000000 +0200
@@ -46,7 +46,11 @@
#define CDDB_HTTP_CMD "GET http://%s/~cddb/cddb.cgi?cmd="
#define CDDB_HTTP_KEEP " HTTP/1.0\r\nHost: %s\r\nConnection: Keep-Alive\r\nProxy-Connection: Keep-Alive\r\n%s\r\n"
+#if GTK_MAJOR_VERSION < 2
#define CDDB_HTTP_HELLO "hello=%s+%s+xcdroast+%s&proto=1"CDDB_HTTP_KEEP
+#else
+#define CDDB_HTTP_HELLO "hello=%s+%s+xcdroast+%s&proto=6"CDDB_HTTP_KEEP
+#endif
#define CDDB_HTTP_STAT CDDB_HTTP_CMD"stat&"CDDB_HTTP_HELLO
#define CDDB_HTTP_MOTD CDDB_HTTP_CMD"motd&"CDDB_HTTP_HELLO
#define CDDB_HTTP_QUERY CDDB_HTTP_CMD"cddb+query+%s&"CDDB_HTTP_HELLO
@@ -240,11 +244,30 @@
fflush(stdout);
return 1;
}
-
+
+#if GTK_MAJOR_VERSION > 1
+
+ g_snprintf(tmp,MAXLINE,"%s %d\r\n", "proto", 6);
+ if (writen(sockfd,tmp,strlen(tmp), 1) != strlen(tmp)) {
+ g_print("Error: write error on socket when setting protocol\n");
+ fflush(stdout);
+ return 1;
+ }
+ n = read_line2(sockfd, tmp, MAXLINE, 1);
+ if (n < 0) {
+ g_print("Error: read error on socket when setting protocol\n");
+ fflush(stdout);
+ return 1;
+ }
+#endif
code = get_cddb_code(tmp);
switch(code) {
- /* all ok */
+ /* all ok */
+#if GTK_MAJOR_VERSION < 2
case 200:
+#else
+ case 201:
+#endif
return 0;
/* handshake failed */
xcdroast-0.98alpha15-11_mkisofs_options.patch:
--- NEW FILE xcdroast-0.98alpha15-11_mkisofs_options.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 11_mkisofs_options.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Support for changes on mkisofs.
@DPATCH@
Index: src/io.c
===================================================================
--- src/io.c.orig 2006-11-05 12:52:46.000000000 +0100
+++ src/io.c 2006-11-05 12:52:55.000000000 +0100
@@ -9027,7 +9027,7 @@
strcat(tmp2,"-D ");
}
if (masterparam.opt[7]) {
- strcat(tmp2,"-L ");
+ strcat(tmp2,"-allow-leading-dots ");
}
if (masterparam.opt[8]) {
strcat(tmp2,"-d ");
@@ -9161,7 +9161,7 @@
}
if (masterparam.publisher) {
strcpy(tmptmp, masterparam.publisher);
- g_snprintf(tmp5,MAXLINE,"-P \"%s\" ",
+ g_snprintf(tmp5,MAXLINE,"-publisher \"%s\" ",
convert_escape(tmptmp));
strcat(tmp4,tmp5);
}
xcdroast-0.98alpha15-12_cdrecord_versions.patch:
--- NEW FILE xcdroast-0.98alpha15-12_cdrecord_versions.patch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 12_cdrecord_versions.dpatch by <Hector Garcia <hector at debian.org>>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: No description.
@DPATCH@
diff -urNad trunk~/src/xcdroast.h trunk/src/xcdroast.h
--- trunk~/src/xcdroast.h 2006-05-06 15:18:20.000000000 +0200
+++ trunk/src/xcdroast.h 2006-05-08 11:47:57.000000000 +0200
@@ -124,8 +124,8 @@
IT WONT WORK WITH LOWER VERSIONS, EVEN WHEN YOU THINK IT DOES! */
#define CDRECORD_VERSION "1.11a34"
-#define CDRECORD_PRODVD_VERSION "2.01a11"
-#define CDRECORD_VERSION_WITH_ONTHFLYAUDIO "2.01a13"
+#define CDRECORD_PRODVD_VERSION "2.01.01"
+#define CDRECORD_VERSION_WITH_ONTHFLYAUDIO "2.01.01"
#define MKISOFS_VERSION "1.15a17"
#define CDDA2WAV_VERSION "1.11a34"
#define READCD_VERSION "1.11a34"
xcdroast-0.98alpha15-13_cdrecord_to_wodim.patch:
--- NEW FILE xcdroast-0.98alpha15-13_cdrecord_to_wodim.patch ---
--- xcdroast-0.98alpha15/src/xcdrdata.h.p23 2003-05-26 22:55:44.000000000 +0200
+++ xcdroast-0.98alpha15/src/xcdrdata.h 2007-08-13 15:36:40.000000000 +0200
@@ -60,7 +60,9 @@ typedef struct setup_data {
gboolean root_option_change_imagedirs;
gboolean root_option_change_logoptions;
+#ifndef CDRECORDDVD_IS_FREE
gchar *ProDVDkey;
+#endif
geometry_t mainwindow;
geometry_t burnwindow;
@@ -120,7 +122,7 @@ typedef struct writer_driver {
} writer_driver_t;
typedef struct current_set {
- gint isProDVD;
+ gint isDVD;
gint support_ontheflyaudio;
gint writer_devnr;
gint reader_devnr;
--- xcdroast-0.98alpha15/src/xcdrwrap.c.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/xcdrwrap.c 2007-08-13 15:36:40.000000000 +0200
@@ -277,8 +277,8 @@ char tmp[MAXLINE];
strcpy(ret, CDRECORD);
return ret;
}
- if (strncmp(cmd,"CDRECORDPRODVD",MAXLINE) == 0) {
- strcpy(ret, CDRECORDPRODVD);
+ if (strncmp(cmd,"CDRECORDDVD",MAXLINE) == 0) {
+ strcpy(ret, CDRECORDDVD);
return ret;
}
if (strncmp(cmd,"CDDA2WAV",MAXLINE) == 0) {
@@ -314,9 +314,9 @@ char tmp[MAXLINE];
#endif
/* show found paths of helper apps */
get_spawn_path(CDRECORD, tmp, 1);
- printf("cdrecord found at: %s\n", tmp);
- get_spawn_path(CDRECORDPRODVD, tmp, 1);
- printf("cdrecord-ProDVD found at: %s\n", tmp);
+ printf(CDRECORD_NAME " found at: %s\n", tmp);
+ get_spawn_path(CDRECORDDVD, tmp, 1);
+ printf(CDRECORDDVD_NAME " found at: %s\n", tmp);
get_spawn_path(CDDA2WAV, tmp, 1);
printf("cdda2wav found at: %s\n", tmp);
get_spawn_path(READCD, tmp, 1);
--- xcdroast-0.98alpha15/src/create.c.p23 2003-10-30 12:28:10.000000000 +0100
+++ xcdroast-0.98alpha15/src/create.c 2007-08-13 15:36:40.000000000 +0200
@@ -523,7 +523,7 @@ GtkWidget *scrolled_win, *list;
gtk_widget_show(tbl);
vbox = gtk_vbox_new(FALSE,10);
gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,1,2,0,1);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("CD-Information"));
} else {
f1 = gtk_frame_new(_("CD/DVD-Information"));
@@ -1260,7 +1260,7 @@ GtkWidget *scrolled_win, *img_list;
gtk_widget_show(tbl);
vbox = gtk_vbox_new(FALSE,10);
gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,0,1,0,1);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("CD-Information"));
} else {
f1 = gtk_frame_new(_("CD/DVD-Information"));
@@ -2979,7 +2979,7 @@ GtkTargetEntry target_entry[3];
GTK_SIGNAL_FUNC(fixate_clicked), NULL);
define_tooltip(b1,_("Just fixate (close) the CD, if for some reason the CD has been written but not fixated."));
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
b1 = gtk_button_new_with_label(_("Blank CD-RW"));
} else {
b1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW"));
@@ -3086,7 +3086,7 @@ GtkTargetEntry target_entry[3];
gtk_widget_show (menu_item);
i++;
}
- if (curset.isProDVD) {
+ if (curset.isDVD) {
i = 0;
tmpval = curset.cdrtype;
while (dvdtypes[i] != 0) {
@@ -5774,7 +5774,7 @@ GtkObject *adj;
bootable_frame1 = NULL;
bootable_frame2 = NULL;
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("Options to create a bootable CD"));
} else {
f1 = gtk_frame_new(_("Options to create a bootable CD/DVD"));
@@ -5794,7 +5794,7 @@ GtkObject *adj;
gtk_box_pack_start(GTK_BOX(vbox),tbl,FALSE,FALSE,0);
gtk_widget_show(tbl);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
l1 = rightjust_gtk_label_new(_("Make CD bootable?"));
} else {
l1 = rightjust_gtk_label_new(_("Make CD/DVD bootable?"));
@@ -6792,7 +6792,7 @@ gint sel, btn;
fill_session_available();
/* force recalc of session size if dvd */
/* so he will get the multisession warning */
- if (curset.cdrtype >= 1000 && curset.isProDVD == 1 && curset.multisession == 1) {
+ if (curset.cdrtype >= 1000 && curset.isDVD == 1 && curset.multisession == 1) {
set_sessionsize_unknown();
}
break;
@@ -7023,7 +7023,7 @@ gchar tmp2[MAXLINE];
gtk_widget_show (menu_item);
i++;
}
- if (curset.isProDVD) {
+ if (curset.isDVD) {
i = 0;
tmpval = curset.cdrtype;
while (dvdtypes[i] != 0) {
@@ -7174,7 +7174,7 @@ gchar tmp2[MAXLINE];
gtk_widget_show(b1);
define_tooltip(b1,_("Set additional write options for advanced users."));
/* blank button */
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
b1 = gtk_button_new_with_label(_("Blank CD-RW"));
} else {
b1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW"));
--- xcdroast-0.98alpha15/src/xtools.c.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/xtools.c 2007-08-13 15:36:40.000000000 +0200
@@ -2376,7 +2376,7 @@ struct stat buf;
/* reroute a command through the wrapper */
/* cmd is one of "CDRECORD", "MKISOFS", "CDDA2WAV", "READCD"
- or "CDRECORDPRODVD" */
+ or "CDRECORDDVD" */
gchar *get_wrap_path(gchar *cmd, gchar *ret) {
gchar tmp[MAXLINE];
@@ -2388,15 +2388,15 @@ gchar tmp[MAXLINE];
}
/* reroute the cdrecord command through the wrapper */
-/* determine automatically if proDVD version is needed or not */
+/* determine automatically if (pro)DVD version is needed or not */
gchar *get_wrap_path_cdrecord(gchar *ret) {
gchar tmp[MAXLINE];
/* use DVD version if installed and media type > 1GB */
- if (curset.isProDVD && curset.cdrtype > 1000) {
+ if (curset.isDVD && curset.cdrtype > 1000) {
g_snprintf(tmp,MAXLINE,"%s/%s %s", libdir, WRAPPER,
- "CDRECORDPRODVD");
+ "CDRECORDDVD");
} else {
g_snprintf(tmp,MAXLINE,"%s/%s %s", libdir, WRAPPER,
"CDRECORD");
@@ -2411,7 +2411,7 @@ gchar tmp[MAXLINE];
gint get_gracetime() {
- if (curset.isProDVD && curset.cdrtype > 1000) {
+ if (curset.isDVD && curset.cdrtype > 1000) {
/* use 10 seconds for prodvd, because the keycheck
can take a while... */
return 10;
@@ -3522,7 +3522,7 @@ gint count;
/* return whether we have a empty CD-R or DVD-R in the drive */
/* we are sure that there IS a medium there - but we dont know which type */
-/* check only if device is dvdwriter and we have prodvd installed */
+/* check only if device is dvdwriter and we have (pro)dvd installed */
gchar *return_media_type(gint devnr) {
gchar drvflags[MAXLINE], drvmodes[MAXLINE];
@@ -3532,7 +3532,7 @@ gint isdvd,i;
isdvd = 0;
i = get_writerreaderdevs_index(devnr);
- if (i >= 0 && curset.isProDVD && writerreaderdevs[i]->is_dvdwriter) {
+ if (i >= 0 && curset.isDVD && writerreaderdevs[i]->is_dvdwriter) {
if (convert_devnr2busid(devnr,tmp) != 0) {
g_error("non existing cdrom?");
}
--- xcdroast-0.98alpha15/src/main.c.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/main.c 2007-08-13 15:36:40.000000000 +0200
@@ -227,7 +227,7 @@ gchar tmp[MAXLINE];
gtk_box_pack_start(GTK_BOX(sidespace), side_t,TRUE,TRUE,0);
side_t_btn1 = gtk_button_new_with_label (_("Setup"));
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
side_t_btn2 = gtk_button_new_with_label (_("Duplicate CD"));
side_t_btn3 = gtk_button_new_with_label (_("Create CD"));
} else {
@@ -582,18 +582,20 @@ gint stat;
*/
/* warn about non-existing LFS support in dvd mode */
- if (curset.isProDVD == 1 && sizeof(off_t) != 8) {
+ if (curset.isDVD == 1 && sizeof(off_t) != 8) {
show_dialog(ICO_WARN, _("Warning: Your system is not able to create files larger\nthan 2 GB. Writing DVDs will therefore not possible."), T_OK, NULL, NULL, 0);
}
+#ifndef CDRECORDDVD_IS_FREE
/* if we are in DVD mode, check if the security-key is set */
- if (curset.isProDVD == 1) {
+ if (curset.isDVD == 1) {
keyenv = getenv("CDR_SECURITY");
if (keyenv == NULL) {
show_dialog(ICO_WARN, _("Warning: You have not entered a cdrecord-ProDVD key in setup.\nPlease see the FAQ on how to obtain your free key.\nYou also have to renew the key every few months because it got an\nexpire date. You will not be able to properly write DVDs without it."), T_OK, NULL, NULL, 0);
}
}
+#endif
dolog(1,"Starting X-CD-Roast\n");
--- xcdroast-0.98alpha15/src/main.h.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/main.h 2007-08-13 15:36:40.000000000 +0200
@@ -194,7 +194,7 @@ gint show_and_start_master();
gint start_master_action();
gint start_onthefly_master_action(gint write_devnr);
-gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isProDVD);
+gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isDVD);
gint check_version_mkisofs(gchar *match, gchar *found);
gint check_version_cdda2wav(gchar *match, gchar *found);
gint check_version_readcd(gchar *match, gchar *found);
--- xcdroast-0.98alpha15/src/init.c.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/init.c 2007-08-13 15:36:40.000000000 +0200
@@ -81,8 +81,10 @@ gint c_locale_is_utf8;
gchar *language = NULL;
GdkFont *fixedfont;
+#ifndef CDRECORDDVD_IS_FREE
/* ProDVD key in global variable to let solaris-putenv access it */
gchar security_key[MAXLINE];
+#endif
/* give the setupdata-structure valid startvalues */
@@ -137,7 +139,9 @@ gint fullaccess;
setupdata.root_option_change_imagedirs = fullaccess;
setupdata.root_option_change_logoptions = fullaccess;
+#ifndef CDRECORDDVD_IS_FREE
setupdata.ProDVDkey = g_strdup("");
+#endif
setupdata.mainwindow.x = -1;
setupdata.mainwindow.y = -1;
@@ -157,7 +161,7 @@ static void init_curset() {
gint cdrtypes[] = CDR_TYPES_MIN;
gint i;
- curset.isProDVD = 0;
+ curset.isDVD = 0;
curset.support_ontheflyaudio = 0;
curset.writer_devnr = -1;
curset.reader_devnr = -1;
@@ -392,16 +396,16 @@ gint second;
}
/* check if needed binaries are installed */
-/* return if proDVD version found */
+/* return if (pro)DVD version found */
static gint check_binaries(gint noversioncheck) {
gchar tmp[MAXLINE];
gchar ver[MAXLINE];
gchar link[MAXLINE];
gint stat;
-gint out, isProDVD;
+gint out, isDVD;
- isProDVD = 0;
+ isDVD = 0;
check_executable(UNAME,UNAME2,0);
check_executable(DF,DF2,0);
@@ -417,7 +421,7 @@ gint out, isProDVD;
}
stat = check_version_cdrecord(CDRECORD_VERSION, 0, ver, &out);
if (stat == 1 && !noversioncheck) {
- g_warning("Invalid cdrecord version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORD_VERSION);
+ g_warning("Invalid " CDRECORD_NAME " version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORD_VERSION);
gtk_exit(1);
}
if (stat == 2) {
@@ -425,8 +429,8 @@ gint out, isProDVD;
gtk_exit(1);
}
- /* check optional installation of ProDVD version */
- get_spawn_path(CDRECORDPRODVD,tmp);
+ /* check optional installation of (Pro)DVD version */
+ get_spawn_path(CDRECORDDVD,tmp);
if (is_file(tmp)) {
if (check_islink(tmp, link)) {
#if 0
@@ -435,9 +439,9 @@ gint out, isProDVD;
dodebug(3, "%s is a link to %s\n", tmp, link);
#endif
}
- stat = check_version_cdrecord(CDRECORD_PRODVD_VERSION, 1, ver, &isProDVD);
+ stat = check_version_cdrecord(CDRECORDDVD_VERSION, 1, ver, &isDVD);
if (stat == 1 && !noversioncheck) {
- g_warning("Invalid cdrecord-ProDVD version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORD_PRODVD_VERSION);
+ g_warning("Invalid " CDRECORDDVD_NAME " version %s found.\n\tExpecting at least version %s\n\tStart xcdroast with the -n option to override (not recommended!)", ver, CDRECORDDVD_VERSION);
gtk_exit(1);
}
}
@@ -509,7 +513,7 @@ gint out, isProDVD;
g_snprintf(tmp,MAXLINE,"%s/%s", libdir, CDDBTOOL);
check_executable(tmp,NULL,1);
- return isProDVD;
+ return isDVD;
}
@@ -702,7 +706,7 @@ gint nofail;
}
/* check prodvd only when it is installed */
- get_spawn_path(CDRECORDPRODVD,tmp);
+ get_spawn_path(CDRECORDDVD,tmp);
if (is_file(tmp)) {
if (check_nonroot_mode_cdrtools(tmp) == 0) {
nofail = 0;
@@ -769,7 +773,8 @@ static void usage(gchar *cmd) {
/* g_print("\t-r <root config-file> (currently: %s)\n", rootconfig); */
g_print("\t-o : Disable multibyte font support\n");
g_print("\t-n : Disable cdrtools version check (use at own risk)\n");
- g_print("\t-w : Don't use cdrecord-ProDVD, even when it is available.\n");
+ if (strcmp(CDRECORD, CDRECORDDVD))
+ g_print("\t-w : Don't use " CDRECORDDVD_NAME ", even when it is available.\n");
#if (defined(__MACH__) && defined(__APPLE__))
g_print("\t-a : Don't display the autodiskmount daemon handling at startup\n");
#else
@@ -797,7 +802,7 @@ gchar *mylocale;
gchar *p1;
gchar *alt_dev_string;
gint c, usercnf, stat;
-gint isProDVD, ignoreProDVD;
+gint isDVD, ignoreDVD;
if (!language)
language = g_strdup("");
@@ -807,7 +812,7 @@ gint isProDVD, ignoreProDVD;
no_versioncheck = 0;
support_ontheflyaudio = 0;
c_locale_is_utf8 = 0;
- ignoreProDVD = 0;
+ ignoreDVD = 0;
alt_dev_string = NULL;
strncpy(configdir, CONFIGDIR, MAXLINE);
g_snprintf(rootconfig, MAXLINE, "%s/%s", SYSCONFDIR, ROOTCONFIG);
@@ -874,7 +879,7 @@ gint isProDVD, ignoreProDVD;
break;
case 'w':
- ignoreProDVD = 1;
+ ignoreDVD = 1;
break;
case 'f':
@@ -974,17 +979,19 @@ gint isProDVD, ignoreProDVD;
#endif
dodebug(3, "Checking for helper binaries (noversioncheck = %d)\n", no_versioncheck);
- isProDVD = check_binaries(no_versioncheck);
+ isDVD = check_binaries(no_versioncheck);
- if (isProDVD) {
- if (ignoreProDVD) {
- isProDVD = 0;
- dodebug(1,"-> cdrecord.ProDVD detected but disabled\n");
- } else {
- dodebug(1,"-> cdrecord.ProDVD detected\n");
+ if (strcmp(CDRECORD, CDRECORDDVD)) {
+ if (isDVD) {
+ if (ignoreDVD) {
+ isDVD = 0;
+ dodebug(1,"-> " CDRECORDDVD_NAME " detected but disabled\n");
+ } else {
+ dodebug(1,"-> " CDRECORDDVD_NAME " detected\n");
+ }
+ } else {
+ dodebug(1,"-> " CDRECORDDVD_NAME " not detected\n");
}
- } else {
- dodebug(1,"-> cdrecord.ProDVD not detected\n");
}
if (support_ontheflyaudio == 1) {
dodebug(1, " Enabled support for on-the-fly audio\n");
@@ -1025,7 +1032,7 @@ gint isProDVD, ignoreProDVD;
tocfiles = (GList *) NULL;
strcpy(xcdroast_version_loaded, "");
- curset.isProDVD = isProDVD;
+ curset.isDVD = isDVD;
curset.support_ontheflyaudio = support_ontheflyaudio;
/* load iso-options if available */
@@ -1149,7 +1156,8 @@ gint isProDVD, ignoreProDVD;
}
#endif
- if (curset.isProDVD == 1) {
+#ifndef CDRECORDDVD_IS_FREE
+ if (curset.isDVD == 1) {
/* set key if we got one from the config-file */
if (strcmp(setupdata.ProDVDkey,"")) {
@@ -1162,6 +1170,7 @@ gint isProDVD, ignoreProDVD;
#endif
}
}
+#endif
if (usercnf == 0) {
/* load ok */
--- xcdroast-0.98alpha15/src/duplicate.c.p23 2003-10-26 14:14:19.000000000 +0100
+++ xcdroast-0.98alpha15/src/duplicate.c 2007-08-13 15:36:40.000000000 +0200
@@ -1156,7 +1156,7 @@ GtkWidget *scrolled_win;
gtk_table_set_col_spacings(GTK_TABLE(tbl),10);
gtk_box_pack_start(GTK_BOX(actionspace),tbl,TRUE,TRUE,10);
gtk_widget_show(tbl);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("CD-Information"));
} else {
f1 = gtk_frame_new(_("CD/DVD-Information"));
@@ -1739,7 +1739,7 @@ GtkWidget *tbl, *check;
gtk_widget_show(tbl);
vbox = gtk_vbox_new(FALSE,10);
gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,0,1,0,1);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("CD-Information"));
} else {
f1 = gtk_frame_new(_("CD/DVD-Information"));
@@ -2241,7 +2241,7 @@ GtkWidget *tbl, *omenu, *check;
gtk_widget_show(tbl);
vbox = gtk_vbox_new(FALSE,10);
gtk_table_attach_defaults(GTK_TABLE(tbl),vbox,0,1,0,1);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("CD-Information"));
} else {
f1 = gtk_frame_new(_("CD/DVD-Information"));
@@ -3090,7 +3090,7 @@ gint menuidx, menuhistory;
gtk_table_set_col_spacings(GTK_TABLE(tbl),10);
gtk_box_pack_start(GTK_BOX(actionspace),tbl,TRUE,TRUE,10);
gtk_widget_show(tbl);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("CD to write"));
} else {
f1 = gtk_frame_new(_("CD/DVD to write"));
@@ -3107,7 +3107,7 @@ gint menuidx, menuhistory;
hbox = gtk_hbox_new(TRUE,10);
gtk_box_pack_start(GTK_BOX(actionspace),hbox,FALSE,TRUE,5);
gtk_widget_show(hbox);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
b1 = gtk_button_new_with_label(_("Write CD"));
} else {
b1 = gtk_button_new_with_label(_("Write CD/DVD"));
@@ -3118,7 +3118,7 @@ gint menuidx, menuhistory;
GTK_SIGNAL_FUNC(writetracks_clicked), NULL);
define_tooltip(b1,_("Writes all tracks specified by the TOC file to a CD."));
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
b1 = gtk_button_new_with_label(_("Blank CD-RW"));
} else {
b1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW"));
@@ -3239,7 +3239,7 @@ gint menuidx, menuhistory;
gtk_widget_show (menu_item);
i++;
}
- if (curset.isProDVD) {
+ if (curset.isDVD) {
i = 0;
tmpval = curset.cdrtype;
while (dvdtypes[i] != 0) {
@@ -3984,7 +3984,7 @@ GtkWidget *b1;
side_widgets[0] = b1;
define_tooltip(b1,_("Displays information about the currently inserted CD and tracks stored on the harddrive."));
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
b1 = gtk_toggle_button_new_with_label(_("Read CD"));
} else {
b1 = gtk_toggle_button_new_with_label(_("Read CD/DVD"));
@@ -3996,7 +3996,7 @@ GtkWidget *b1;
side_widgets[1] = b1;
define_tooltip(b1,_("Reads all tracks of a CD and copy them to the harddrive."));
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
b1 = gtk_toggle_button_new_with_label(_("Verify CD"));
} else {
b1 = gtk_toggle_button_new_with_label(_("Verify CD/DVD"));
@@ -4016,7 +4016,7 @@ GtkWidget *b1;
side_widgets[3] = b1;
define_tooltip(b1,_("Plays audio tracks (.wav files) from the harddrive via soundcard."));
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
b1 = gtk_toggle_button_new_with_label(_("Write CD"));
} else {
b1 = gtk_toggle_button_new_with_label(_("Write CD/DVD"));
--- xcdroast-0.98alpha15/src/xcdroast.h.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/xcdroast.h 2007-08-13 15:36:51.000000000 +0200
@@ -112,11 +112,19 @@
then in $PREFIX (e.g. /usr/bin/cdrecord instead of
/usr/local/lib/xcdroast-0.98/bin/cdrecord) */
-#define CDRECORD "bin/cdrecord"
-#define CDRECORDPRODVD "bin/cdrecord.prodvd"
-#define CDDA2WAV "bin/cdda2wav"
-#define READCD "bin/readcd"
-#define MKISOFS "bin/mkisofs"
+#define CDRECORD "bin/wodim"
+#define CDRECORDDVD "bin/wodim"
+#define CDDA2WAV "bin/icedax"
+#define READCD "bin/readom"
+#define MKISOFS "bin/genisoimage"
+
+#define CDRECORD_NAME "wodim"
+#define CDRECORDDVD_NAME "wodim"
+#define CDRECORDDVD_IS_FREE
+
+#define CDDA2WAV_NAME "icedax"
+#define READCD_NAME "readom"
+#define MKISOFS_NAME "genisoimage"
/* MINIMUM required versions. Greater versions are now silently
accepted.
@@ -124,11 +132,11 @@
IT WONT WORK WITH LOWER VERSIONS, EVEN WHEN YOU THINK IT DOES! */
#define CDRECORD_VERSION "1.11a34"
-#define CDRECORD_PRODVD_VERSION "2.01.01"
+#define CDRECORDDVD_VERSION "2.01.01"
#define CDRECORD_VERSION_WITH_ONTHFLYAUDIO "2.01.01"
-#define MKISOFS_VERSION "1.15a17"
-#define CDDA2WAV_VERSION "1.11a34"
-#define READCD_VERSION "1.11a34"
+#define MKISOFS_VERSION "1.1.0"
+#define CDDA2WAV_VERSION "1.1.0"
+#define READCD_VERSION "1.1.0"
/* group to use for non-root-mode */
/* #define NONROOTMODEGROUP "xcdwrite" - HISTORIC */
--- xcdroast-0.98alpha15/src/io.c.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/io.c 2007-08-13 15:36:40.000000000 +0200
@@ -704,7 +704,7 @@ gint found;
strncpy(tmp2,dev,MAXLINE);
convert_escape(tmp2);
- g_snprintf(tmp,MAXLINE," -scanbus dev= \"%s\" 2>&1",tmp2);
+ g_snprintf(tmp,MAXLINE," -scanbus dev= \"%s\" 2>/dev/null",tmp2);
strcat(line,tmp);
dodebug(1, "calling: %s\n", line);
@@ -923,7 +923,7 @@ scsi_devices_t **scsidevices;
/* traditional scanning first */
get_wrap_path_cdrecord(line);
- strcat(line," -scanbus 2>&1");
+ strcat(line," -scanbus 2>/dev/null");
dodebug(1, "calling: %s\n", line);
if ((fpin = popen(line,"r")) == NULL) {
@@ -974,7 +974,7 @@ scsi_devices_t **scsidevices;
scsicount = 0;
get_wrap_path_cdrecord(line);
- g_snprintf(tmp,MAXLINE," dev=%s -scanbus 2>&1", transport);
+ g_snprintf(tmp,MAXLINE," dev=%s -scanbus 2>/dev/null", transport);
strcat(line, tmp);
dodebug(1, "calling: %s\n", line);
@@ -1284,7 +1284,7 @@ FILE *fpin;
drvcount = 0;
get_wrap_path_cdrecord(line);
- strcat(line," driver=help 2>&1");
+ strcat(line," driver=help 2>&1 | sed -n '/Driver types:/,//p'");
dodebug(1, "calling: %s\n", line);
if ((fpin = popen(line,"r")) == NULL) {
@@ -1491,9 +1491,9 @@ gchar *p;
if (!dev) return;
- /* if prodvd available use it to get additional info */
- if (curset.isProDVD) {
- get_wrap_path("CDRECORDPRODVD", tmp);
+ /* if (pro)dvd available use it to get additional info */
+ if (curset.isDVD) {
+ get_wrap_path("CDRECORDDVD", tmp);
} else {
get_wrap_path("CDRECORD", tmp);
}
@@ -2111,9 +2111,11 @@ gint count;
g_snprintf(tmp,MAXLINE,"OPTION_SELECTIONMODE = %d\n",setupdata.option_selectionmode);
fputs(tmp,fd);
+#ifndef CDRECORDDVD_IS_FREE
strcpy(tmp2,setupdata.ProDVDkey);
g_snprintf(tmp,MAXLINE,"PRODVD_KEY = \"%s\"\n",convert_escape(tmp2));
fputs(tmp,fd);
+#endif
/* save geometry data? */
if (setupdata.option_savepos) {
@@ -2228,6 +2230,7 @@ gint count, i, newadded;
if (fgets(line,MAXLINE,fd) == NULL)
break;
+#ifndef CDRECORDDVD_IS_FREE
/* special case here to protect pro-dvd-key */
if (strstr(line, "PRODVD_KEY") && strlen(line) > 50) {
strncpy(tmp,line,50);
@@ -2236,6 +2239,7 @@ gint count, i, newadded;
} else {
dodebug(10,"config: %s", line);
}
+#endif
/* skip empty or hashed lines */
strip_string(line);
@@ -2515,6 +2519,7 @@ gint count, i, newadded;
if (strcmp("OPTION_SELECTIONMODE",id) == 0) {
setupdata.option_selectionmode = atoi(value);
}
+#ifndef CDRECORDDVD_IS_FREE
if (strcmp("PRODVD_KEY",id) == 0) {
/* dont overwrite evtuelly set value with empty key */
if (strcmp(value,"") != 0) {
@@ -2522,6 +2527,7 @@ gint count, i, newadded;
setupdata.ProDVDkey = g_strdup(value);
}
}
+#endif
if (setupdata.option_savepos) {
if (strcmp("GEOMETRY_MAINWINDOW_X",id) == 0) {
setupdata.mainwindow.x = atoi(value);
@@ -5557,8 +5563,8 @@ gint found_atip,errcount;
}
/* build command line */
- if (curset.isProDVD) {
- get_wrap_path("CDRECORDPRODVD", tmp3);
+ if (curset.isDVD) {
+ get_wrap_path("CDRECORDDVD", tmp3);
} else {
get_wrap_path("CDRECORD", tmp3);
}
@@ -5867,7 +5873,7 @@ FILE *fpin;
drvcount = 0;
get_wrap_path_cdrecord(line);
- strcat(line," blank=help 2>&1");
+ strcat(line," blank=help 2>&1 | sed -n '/Blanking options:/,//p'");
dodebug(1, "calling: %s\n", line);
@@ -5991,11 +5997,12 @@ gchar tmp[MAXLINE];
dialog_done = -1;
}
+#ifndef CDRECORDDVD_IS_FREE
/* or cdrecord died by signal? e.g. SIGALRM */
if (WIFSIGNALED(ret) && read_done == 0) {
/* most likely invalid prodvd key */
- if (curset.isProDVD) {
+ if (curset.isDVD) {
strncpy(tmp, "\nReceived ALARM from cdrecord-ProDVD. Aborting blank...\nInvalid ProDVD key?\n", MAXLINE);
convert_for_gtk2_textwidget(tmp);
@@ -6004,6 +6011,7 @@ gchar tmp[MAXLINE];
read_done = 1;
}
}
+#endif
dodebug(10,"Finished in read_blank_out with status: %d\n",
read_done);
@@ -6169,8 +6177,8 @@ gint ret;
strcat(tmp3, tmp4);
}
- if (curset.isProDVD) {
- get_wrap_path("CDRECORDPRODVD", tmp5);
+ if (curset.isDVD) {
+ get_wrap_path("CDRECORDDVD", tmp5);
} else {
get_wrap_path("CDRECORD", tmp5);
}
@@ -6378,14 +6386,16 @@ gint cdrecord_stderr;
dialog_done = -1;
}
+#ifndef CDRECORDDVD_IS_FREE
/* or cdrecord died by signal? e.g. SIGALRM */
if (WIFSIGNALED(ret) && read_done == 0) {
/* most likely invalid prodvd key */
- if (curset.isProDVD && curset.cdrtype > 1000) {
+ if (curset.isDVD && curset.cdrtype > 1000) {
read_done = 2;
}
}
+#endif
dodebug(10,"Finished in read_write_out with status: %d\n",
read_done);
@@ -6411,8 +6421,9 @@ gint cdrecord_stderr;
return;
}
+#ifndef CDRECORDDVD_IS_FREE
/* prodvd and beginning to write soon? */
- if (curset.isProDVD && curset.cdrtype > 1000) {
+ if (curset.isDVD && curset.cdrtype > 1000) {
if (strstr(line,"Last chance to quit")) {
cdrtimer = gtk_timeout_add(1000,
cdrtimer_callback, NULL);
@@ -6427,6 +6438,7 @@ gint cdrecord_stderr;
}
}
}
+#endif
/* skip all lines that contain "seconds." */
if (n > 8) {
@@ -6717,6 +6729,7 @@ gchar *p;
}
+#ifndef CDRECORDDVD_IS_FREE
/* display an error when useing prodvd and cdrecord aborts */
static void display_invalid_prodvdkey() {
@@ -6725,6 +6738,7 @@ static void display_invalid_prodvdkey()
show_dialog(ICO_WARN, _("cdrecord-ProDVD terminated.\n\nMost likely because you have entered\nan invalid key. Please check if it is correct."), T_OK, NULL, NULL, 0);
}
}
+#endif
/* call cdrecord to write some tracks */
@@ -6973,10 +6987,12 @@ gint wrmode;
if (read_done != 0 || read_output_ctrl == 5) {
gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks"));
gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:"));
+#ifndef CDRECORDDVD_IS_FREE
if (read_done == 2) {
/* invalid cdrecord key - show window */
display_invalid_prodvdkey();
}
+#endif
return 1;
} else {
/* all ok */
@@ -7571,10 +7587,12 @@ gfloat per;
if (read_done != 0 || read_output_ctrl == 5) {
gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks"));
gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:"));
+#ifndef CDRECORDDVD_IS_FREE
if (read_done == 2) {
/* invalid cdrecord key - show window */
display_invalid_prodvdkey();
}
+#endif
return 1;
} else {
/* all ok */
@@ -7740,10 +7758,12 @@ gint wrmode;
if (read_done != 0 || read_output_ctrl == 5) {
gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks"));
gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:"));
+#ifndef CDRECORDDVD_IS_FREE
if (read_done == 2) {
/* invalid cdrecord key - show window */
display_invalid_prodvdkey();
}
+#endif
return 1;
} else {
/* all ok */
@@ -9893,10 +9913,12 @@ gint wrmode;
if (read_done != 0 || read_output_ctrl == 5) {
gtk_label_set_text(GTK_LABEL(readtrack_info_label), _("Error writing tracks"));
gtk_label_set_text(GTK_LABEL(readtrack_small_info),_("Write-Error:"));
+#ifndef CDRECORDDVD_IS_FREE
if (read_done == 2) {
/* invalid cdrecord key - show window */
display_invalid_prodvdkey();
}
+#endif
return 1;
} else {
/* all ok */
@@ -9910,21 +9932,21 @@ gint wrmode;
/* check the version of cdrecord */
/* return 1 if not correct (to old) */
-gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isProDVD) {
+gint check_version_cdrecord(gchar *match, gint dvd, gchar *found, gint *isDVD) {
gchar line[MAXLINE];
gchar vline[MAXLINE];
gchar ver[MAXLINE];
FILE *fpin;
gchar *p;
- *isProDVD = 0;
+ *isDVD = 0;
strcpy(ver,"");
if (dvd) {
- get_wrap_path("CDRECORDPRODVD",line);
+ get_wrap_path("CDRECORDDVD",line);
} else {
get_wrap_path("CDRECORD",line);
}
- strcat(line," -version 2>/dev/null");
+ strcat(line," -version 2>&1");
dodebug(1, "calling: %s\n", line);
if ((fpin = popen(line,"r")) == NULL) {
@@ -9965,7 +9987,7 @@ gchar *p;
} else {
p = strstr(vline, "Cdrecord-ProDVD-Clone");
if (p != NULL) {
- *isProDVD = 1;
+ *isDVD = 1;
p = strtok(p+22, " ");
if (p != NULL) {
strcpy(ver,p);
@@ -9979,6 +10001,9 @@ gchar *p;
p = strtok(NULL, " ");
if (p) {
strcpy(ver,p);
+ if (strstr(ver,"-dvd")) {
+ *isDVD = 1;
+ }
}
}
}
@@ -10045,9 +10070,9 @@ gchar *p;
/* now line contains the version string of mkisofs */
/* try to extract the version number */
- p = strstr(line,"mkisofs");
+ p = strstr(line, MKISOFS_NAME);
if (p != NULL) {
- p = strtok(p+8, " ");
+ p = strtok(p + (sizeof(MKISOFS_NAME) - 1) + 1, " ");
if (p != NULL) {
strcpy(ver,p);
}
@@ -10148,7 +10173,7 @@ gchar *p;
strcpy(ver,"");
get_wrap_path("READCD",line);
- strcat(line," -version 2>/dev/null");
+ strcat(line," -version 2>/dev/null | head -n 1");
dodebug(1, "calling: %s\n", line);
if ((fpin = popen(line,"r")) == NULL) {
@@ -10175,9 +10200,9 @@ gchar *p;
/* now line contains the version string of readcd */
/* try to extract the version number */
- p = strstr(line,"readcd");
+ p = strstr(line, READCD_NAME);
if (p != NULL) {
- p = strtok(p+7, " ");
+ p = strtok(p + (sizeof(READCD_NAME) - 1) + 1, " ");
if (p != NULL) {
strcpy(ver,p);
}
--- xcdroast-0.98alpha15/src/menus.c.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/menus.c 2007-08-13 15:36:40.000000000 +0200
@@ -2702,7 +2702,7 @@ static const gchar *blanktrans[] = BLANK
gtk_container_set_border_width (GTK_CONTAINER (box1), 5);
gtk_container_add(GTK_CONTAINER(dialog),box1);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
f1 = gtk_frame_new(_("Blank CD-RW"));
} else {
f1 = gtk_frame_new(_("Blank CD/DVD+-RW"));
@@ -2812,7 +2812,7 @@ static const gchar *blanktrans[] = BLANK
gtk_box_pack_start(GTK_BOX(box1),box3,FALSE,TRUE,5);
gtk_widget_show(box3);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
button1 = gtk_button_new_with_label(_("Blank CD-RW"));
} else {
button1 = gtk_button_new_with_label(_("Blank CD/DVD+-RW"));
--- xcdroast-0.98alpha15/src/setup.c.p23 2007-08-13 15:36:40.000000000 +0200
+++ xcdroast-0.98alpha15/src/setup.c 2007-08-13 15:36:40.000000000 +0200
@@ -135,8 +135,10 @@ gint i,j;
g_free(bak_setupdata.cddb_proxy_host);
setupdata.logfile = g_strdup(bak_setupdata.logfile);
g_free(bak_setupdata.logfile);
+#ifndef CDRECORDDVD_IS_FREE
setupdata.ProDVDkey = g_strdup(bak_setupdata.ProDVDkey);
g_free(bak_setupdata.ProDVDkey);
+#endif
/* restore and free also writerreader structure copy */
if (bak_writerreader) {
@@ -266,6 +268,7 @@ gchar *buf, *locreturn, *p;
/* check_tilde(tmp); */
setupdata.logfile = g_strdup(tmp);
+#ifndef CDRECORDDVD_IS_FREE
g_free(setupdata.ProDVDkey);
n = gtk_text_get_length(GTK_TEXT(prodvdkey_txt));
buf = gtk_editable_get_chars(GTK_EDITABLE(prodvdkey_txt),0,n);
@@ -284,6 +287,7 @@ gchar *buf, *locreturn, *p;
#else
putenv(security_key);
#endif
+#endif
/* save the current window size if we are asked to */
if (setupdata.option_savepos) {
@@ -308,8 +312,8 @@ gchar tmp[MAXLINE];
dolog(2, "Confirm setup\n");
/* some lasts checks and warnings */
- if (is_dvdwriter(setupdata.writer_devnr) && !curset.isProDVD) {
- ret = show_dialog(ICO_WARN, _("Please note that you have to install ProDVD support before\nyou can write DVDs. Currently you will only be able to\nwrite regular CDs with your DVD-Writer."), T_OK,T_CANCEL, NULL, 0);
+ if (is_dvdwriter(setupdata.writer_devnr) && !curset.isDVD) {
+ ret = show_dialog(ICO_WARN, _("Please note that you have to install DVD support before\nyou can write DVDs. Currently you will only be able to\nwrite regular CDs with your DVD-Writer."), T_OK,T_CANCEL, NULL, 0);
if (ret == 1) {
/* abort */
return;
@@ -333,7 +337,9 @@ gchar tmp[MAXLINE];
return;
/* free memory of backup-config */
+#ifndef CDRECORDDVD_IS_FREE
g_free(bak_setupdata.ProDVDkey);
+#endif
g_free(bak_setupdata.logfile);
g_free(bak_setupdata.cddb_host);
g_free(bak_setupdata.cddb_proxy_host);
@@ -1140,7 +1146,7 @@ static const gchar *helpwritemodes[] = H
gtk_box_pack_start(GTK_BOX(vbox2),tbl,FALSE,TRUE,0);
gtk_widget_show(tbl);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
l1 = rightjust_gtk_label_new(_("CD Writer Device:"));
} else {
l1 = rightjust_gtk_label_new(_("CD/DVD Writer Device:"));
@@ -2740,6 +2746,7 @@ GtkWidget *check;
define_tooltip(check, _("When enabled, then multiple selections in lists are handled like the lists in Windows (hold CTRL-Key to select more than one entry and use SHIFT to select a whole range of entries)."));
+#ifndef CDRECORDDVD_IS_FREE
f1 = gtk_frame_new(_("cdrecord-ProDVD key"));
set_font_and_color_frame(f1,BOLDFONT,NULL);
gtk_box_pack_start(GTK_BOX(vbox),f1,TRUE,TRUE,10);
@@ -2782,6 +2789,7 @@ GtkWidget *check;
gtk_widget_set_sensitive(l1, FALSE);
gtk_widget_set_sensitive(txt, FALSE);
}
+#endif // !defined(CDRECORDDVD_IS_FREE)
}
@@ -3186,7 +3194,7 @@ gchar tmp[MAXLINE];
gtk_container_add (GTK_CONTAINER (f1), tbl);
gtk_widget_show(tbl);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
check = gtk_check_button_new_with_label(_("change CD Writer Device"));
} else {
check = gtk_check_button_new_with_label(_("change CD/DVD Writer Device"));
@@ -3208,7 +3216,7 @@ gchar tmp[MAXLINE];
gtk_widget_show(check);
define_tooltip(check, _("If enabled, then the user is allowed the change the write parameters for the CD Writer (e.g. Speed and FIFO-Buffer-Size)."));
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
check = gtk_check_button_new_with_label(_("change CD Reader Device"));
} else {
check = gtk_check_button_new_with_label(_("change CD/DVD Reader Device"));
@@ -3290,7 +3298,9 @@ gint i;
bak_setupdata.cddb_host = g_strdup(setupdata.cddb_host);
bak_setupdata.cddb_proxy_host = g_strdup(setupdata.cddb_proxy_host);
bak_setupdata.logfile = g_strdup(setupdata.logfile);
+#ifndef CDRECORDDVD_IS_FREE
bak_setupdata.ProDVDkey = g_strdup(setupdata.ProDVDkey);
+#endif
/* backup the dynamic part of the readerwriter structure too */
bak_writerreader = g_new0(writerreader_bak_t *, MAXDEVICES);
@@ -3375,7 +3385,7 @@ gint i;
gtk_notebook_append_page(GTK_NOTEBOOK (notebook),f1,l1);
draw_scsi_scan(f1);
- if (!curset.isProDVD) {
+ if (!curset.isDVD) {
l2 = gtk_label_new(_("CD Settings"));
} else {
l2 = gtk_label_new(_("CD/DVD Settings"));
xcdroast-0.98alpha15-14_atapi_to_oldatapi.patch:
--- NEW FILE xcdroast-0.98alpha15-14_atapi_to_oldatapi.patch ---
Index: src/io.c
===================================================================
--- src/io.c.orig 2006-12-19 13:02:15.000000000 +0100
+++ src/io.c 2006-12-19 13:18:53.000000000 +0100
@@ -985,7 +985,11 @@
/* add the found devices to the writerreader structure */
count = 0;
- g_snprintf(tmp,MAXLINE,"%s:", transport);
+ if (strstr(transport,"ATAPI")) {
+ g_snprintf(tmp,MAXLINE,"OLD%s:", transport);
+ } else {
+ g_snprintf(tmp,MAXLINE,"%s:", transport);
+ }
while(scsidevices[count] != NULL) {
add_writerreader(scsidevices[count], tmp, txt);
g_free(scsidevices[count]);
xcdroast-0.98alpha15-15_no_readcd_version.patch:
--- NEW FILE xcdroast-0.98alpha15-15_no_readcd_version.patch ---
diff -urip xcdroast-0.98+0alpha15/src/io.c xcdroast-0.98+0alpha15-fixed/src/io.c
--- xcdroast-0.98+0alpha15/src/io.c 2003-10-26 15:24:48.000000000 +0100
+++ xcdroast-0.98+0alpha15-fixed/src/io.c 2007-01-17 23:04:29.000000000 +0100
@@ -10143,6 +10143,10 @@ gchar *p;
g_error("popen error\n");
}
+ /* all versions of readom is good enough! */
+ return 0;
+
+#if 0
strcpy(line,"");
for (;;) {
if (fgets(line,MAXLINE,fpin) == NULL)
@@ -10185,6 +10189,7 @@ gchar *p;
strcpy(found,ver);
return 1;
}
+#endif
}
xcdroast-0.98alpha15-prodvd.patch:
Index: xcdroast-0.98alpha15-prodvd.patch
===================================================================
RCS file: /cvs/pkgs/rpms/xcdroast/devel/xcdroast-0.98alpha15-prodvd.patch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- xcdroast-0.98alpha15-prodvd.patch 20 Jun 2007 16:10:36 -0000 1.2
+++ xcdroast-0.98alpha15-prodvd.patch 13 Aug 2007 14:18:22 -0000 1.3
@@ -1,158 +1,6 @@
---- xcdroast-0.98alpha15/src/main.c.prodvd 2003-10-30 14:01:01.000000000 +0100
-+++ xcdroast-0.98alpha15/src/main.c 2007-06-20 14:15:36.000000000 +0200
-@@ -584,7 +584,7 @@ gint stat;
- if (curset.isProDVD == 1 && sizeof(off_t) != 8) {
- show_dialog(ICO_WARN, _("Warning: Your system is not able to create files larger\nthan 2 GB. Writing DVDs will therefore not possible."), T_OK, NULL, NULL, 0);
- }
--
-+#if 0
- /* if we are in DVD mode, check if the security-key is set */
- if (curset.isProDVD == 1) {
- keyenv = getenv("CDR_SECURITY");
-@@ -593,7 +593,7 @@ gint stat;
- }
-
- }
--
-+#endif
- dolog(1,"Starting X-CD-Roast\n");
-
- /* install a signal handler to catch CTRL-C */
---- xcdroast-0.98alpha15/src/xtools.c.prodvd 2007-06-20 14:55:15.000000000 +0200
-+++ xcdroast-0.98alpha15/src/xtools.c 2007-06-20 14:54:50.000000000 +0200
-@@ -2403,8 +2403,11 @@ gchar tmp[MAXLINE];
-
- /* use DVD version if installed and media type > 1GB */
- if (curset.isProDVD && curset.cdrtype > 1000) {
-+ get_spawn_path(CDRECORDPRODVD,tmp);
-+ if (is_file(tmp)) {
- g_snprintf(tmp,MAXLINE,"%s/%s %s", sharedir, WRAPPER,
- "CDRECORDPRODVD");
-+ }
- } else {
- g_snprintf(tmp,MAXLINE,"%s/%s %s", sharedir, WRAPPER,
- "CDRECORD");
---- xcdroast-0.98alpha15/src/init.c.prodvd 2007-06-20 14:15:36.000000000 +0200
-+++ xcdroast-0.98alpha15/src/init.c 2007-06-20 14:15:36.000000000 +0200
-@@ -440,6 +440,7 @@ gint out, isProDVD;
- gtk_exit(1);
- }
- }
-+ isProDVD = 1;
-
- get_spawn_path(MKISOFS,tmp);
- check_executable(tmp,NULL,1);
---- xcdroast-0.98alpha15/src/io.c.prodvd 2007-06-20 14:15:36.000000000 +0200
-+++ xcdroast-0.98alpha15/src/io.c 2007-06-20 14:15:36.000000000 +0200
-@@ -1491,11 +1491,7 @@ gchar *p;
- if (!dev) return;
-
- /* if prodvd available use it to get additional info */
-- if (curset.isProDVD) {
-- get_wrap_path("CDRECORDPRODVD", tmp);
-- } else {
-- get_wrap_path("CDRECORD", tmp);
-- }
-+ get_wrap_path_cdrecord(tmp);
- g_snprintf(line, MAXLINE, "%s dev= \"%s\" -v -checkdrive 2>&1", tmp, dev);
-
- dodebug(1, "calling: %s\n", line);
-@@ -2970,7 +2966,7 @@ gchar line[MAXLINE];
-
-
- /* read output of getcdtoc */
-- n = read_line(source, line, MAXLINE);
-+ n = read_line_wait(source, line, MAXLINE);
-
- /* getcdtoc finished */
- if (n <= 0) {
-@@ -5556,11 +5552,7 @@ gint found_atip,errcount;
- }
-
- /* build command line */
-- if (curset.isProDVD) {
-- get_wrap_path("CDRECORDPRODVD", tmp3);
-- } else {
-- get_wrap_path("CDRECORD", tmp3);
-- }
-+ get_wrap_path_cdrecord(tmp3);
- g_snprintf(line,MAXLINE,"%s %s -atip 2>&1",
- tmp3,tmp);
-
-@@ -5993,7 +5985,7 @@ gchar tmp[MAXLINE];
- /* or cdrecord died by signal? e.g. SIGALRM */
- if (WIFSIGNALED(ret) && read_done == 0) {
-
-- /* most likely invalid prodvd key */
-+ /* most likely invalid prodvd key
- if (curset.isProDVD) {
- strncpy(tmp, "\nReceived ALARM from cdrecord-ProDVD. Aborting blank...\nInvalid ProDVD key?\n", MAXLINE);
-
-@@ -6001,7 +5993,7 @@ gchar tmp[MAXLINE];
- gtk_text_insert(GTK_TEXT(readtrack_textview),
- fixedfont,NULL,NULL,tmp, strlen(tmp));
- read_done = 1;
-- }
-+ } */
- }
-
- dodebug(10,"Finished in read_blank_out with status: %d\n",
-@@ -6168,11 +6160,7 @@ gint ret;
- strcat(tmp3, tmp4);
- }
-
-- if (curset.isProDVD) {
-- get_wrap_path("CDRECORDPRODVD", tmp5);
-- } else {
-- get_wrap_path("CDRECORD", tmp5);
-- }
-+ get_wrap_path_cdrecord(tmp5);
-
- g_snprintf(cmd, MAXLINE,
- "%s %s gracetime=%d -v %sblank=%s",
-@@ -6380,10 +6368,10 @@ gint cdrecord_stderr;
- /* or cdrecord died by signal? e.g. SIGALRM */
- if (WIFSIGNALED(ret) && read_done == 0) {
-
-- /* most likely invalid prodvd key */
-+ /* most likely invalid prodvd key
- if (curset.isProDVD && curset.cdrtype > 1000) {
- read_done = 2;
-- }
-+ } */
- }
-
- dodebug(10,"Finished in read_write_out with status: %d\n",
-@@ -6719,10 +6707,12 @@ gchar *p;
- /* display an error when useing prodvd and cdrecord aborts */
-
- static void display_invalid_prodvdkey() {
--
-+ return;
-+#if 0
- if (curset.isProDVD && curset.cdrtype > 1000) {
- show_dialog(ICO_WARN, _("cdrecord-ProDVD terminated.\n\nMost likely because you have entered\nan invalid key. Please check if it is correct."), T_OK, NULL, NULL, 0);
- }
-+#endif
- }
-
-
-@@ -9918,12 +9908,8 @@ gchar *p;
-
- *isProDVD = 0;
- strcpy(ver,"");
-- if (dvd) {
-- get_wrap_path("CDRECORDPRODVD",line);
-- } else {
-- get_wrap_path("CDRECORD",line);
-- }
-- strcat(line," -version 2>/dev/null");
-+ get_wrap_path_cdrecord(line);
-+ strcat(line," -version 2>&1");
-
- dodebug(1, "calling: %s\n", line);
- if ((fpin = popen(line,"r")) == NULL) {
-@@ -10011,6 +9997,7 @@ gchar *p;
+--- xcdroast-0.98alpha15/src/io.c.cdrkit 2007-08-13 15:53:39.000000000 +0200
++++ xcdroast-0.98alpha15/src/io.c 2007-08-13 15:56:35.000000000 +0200
+@@ -10041,6 +10041,7 @@ gchar *p;
gint check_version_mkisofs(gchar *match, gchar *found) {
gchar line[MAXLINE];
@@ -160,7 +8,7 @@
gchar ver[MAXLINE];
FILE *fpin;
gchar *p;
-@@ -10025,17 +10012,22 @@ gchar *p;
+@@ -10055,17 +10056,22 @@ gchar *p;
}
strcpy(line,"");
@@ -184,16 +32,7 @@
/* failed to open - permission denied */
return 2;
}
-@@ -10044,7 +10036,7 @@ gchar *p;
- /* now line contains the version string of mkisofs */
- /* try to extract the version number */
-
-- p = strstr(line,"mkisofs");
-+ p = strstr(vline,"mkisofs");
- if (p != NULL) {
- p = strtok(p+8, " ");
- if (p != NULL) {
-@@ -10077,7 +10069,7 @@ gchar line2[MAXLINE];
+@@ -10107,7 +10113,7 @@ gchar line2[MAXLINE];
gchar ver[MAXLINE];
FILE *fpin;
gchar *p;
@@ -202,7 +41,7 @@
strcpy(ver,"");
get_wrap_path("CDDA2WAV",line);
strcat(line," -h 2>&1");
-@@ -10092,6 +10084,9 @@ gchar *p;
+@@ -10126,6 +10132,9 @@ gchar *p;
if (fgets(line,MAXLINE,fpin) == NULL)
break;
dodebug(11,"got: %s",line);
@@ -212,7 +51,7 @@
if (strncmp(line, "Version", 7) == 0) {
strcpy(line2, line);
dodebug(10,"got version: %s",line);
-@@ -10107,6 +10102,10 @@ gchar *p;
+@@ -10141,6 +10150,10 @@ gchar *p;
return 2;
}
@@ -223,7 +62,7 @@
/* now line2 contains the version string of cdda2wav */
/* try to extract the version number */
-@@ -10141,6 +10140,7 @@ gchar *p;
+@@ -10176,13 +10189,14 @@ gchar *p;
gint check_version_readcd(gchar *match, gchar *found) {
gchar line[MAXLINE];
@@ -231,7 +70,15 @@
gchar ver[MAXLINE];
FILE *fpin;
gchar *p;
-@@ -10155,17 +10155,22 @@ gchar *p;
+
+ strcpy(ver,"");
+ get_wrap_path("READCD",line);
+- strcat(line," -version 2>/dev/null | head -n 1");
++ strcat(line," -version 2>/dev/null | fgrep " READCD_NAME);
+
+ dodebug(1, "calling: %s\n", line);
+ if ((fpin = popen(line,"r")) == NULL) {
+@@ -10190,17 +10204,22 @@ gchar *p;
}
strcpy(line,"");
@@ -255,12 +102,3 @@
/* failed to open - permission denied */
return 2;
}
-@@ -10174,7 +10179,7 @@ gchar *p;
- /* now line contains the version string of readcd */
- /* try to extract the version number */
-
-- p = strstr(line,"readcd");
-+ p = strstr(vline,"readcd");
- if (p != NULL) {
- p = strtok(p+7, " ");
- if (p != NULL) {
xcdroast-0.98alpha15-scan.patch:
Index: xcdroast-0.98alpha15-scan.patch
===================================================================
RCS file: /cvs/pkgs/rpms/xcdroast/devel/xcdroast-0.98alpha15-scan.patch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- xcdroast-0.98alpha15-scan.patch 20 Jun 2007 16:10:36 -0000 1.3
+++ xcdroast-0.98alpha15-scan.patch 13 Aug 2007 14:18:22 -0000 1.4
@@ -70,12 +70,12 @@
- scanbus_new(txt, scanparam);
+ glob_t globbuf;
+ int i;
-+ glob("/dev/cdrom-*", GLOB_NOSORT, NULL, &globbuf);
++ if (glob("/dev/cdrom*", GLOB_NOSORT, NULL, &globbuf) == 0) {
+ for (i = 0; globbuf.gl_pathv && globbuf.gl_pathv[i] != NULL ; i
+++) {
+ scanbus_new_single(globbuf.gl_pathv[i], txt);
+ }
-+ globfree(&globbuf);
++ globfree(&globbuf); }
} else {
/* the syntax used to scan for REMOTE scsi devices */
if (strncmp(devicestr,"REMOTE:", 7) == 0 &&
Index: xcdroast.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xcdroast/devel/xcdroast.spec,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- xcdroast.spec 20 Jun 2007 16:10:36 -0000 1.29
+++ xcdroast.spec 13 Aug 2007 14:18:22 -0000 1.30
@@ -1,24 +1,40 @@
Summary: An X Window System based tool for creating CDs.
Name: xcdroast
Version: 0.98a15
-Release: 14%{?dist}
+Release: 15%{?dist}
License: GPL
Group: Applications/Multimedia
-Source: http://prdownloads.sourceforge.net/xcdroast/xcdroast-0.98alpha15.tar.gz
+Source: http://xcdroast.sourceforge.net/RPMS/a15/src/xcdroast-0.98alpha15.tar.gz
Source1: xcdroast.desktop
-Patch1: xcdroast-0.98alpha15-64bit_gsize.patch
-Patch2: xcdroast-0.98alpha15-conf.patch
-Patch3: xcdroast-0.98alpha15-linebuffer.patch
-Patch4: xcdroast-0.98alpha15-nowarn.patch
-Patch5: xcdroast-0.98alpha15-scan.patch
-Patch6: xcdroast-0.98alpha15-prodvd.patch
-Patch7: xcdroast-0.98alpha15-frozen_gui.patch
-Patch8: xcdroast-0.98alpha15-nogtk1.patch
+Patch1: xcdroast-0.98alpha15-linebuffer.patch
+Patch2: xcdroast-0.98alpha15-nowarn.patch
+Patch3: xcdroast-0.98alpha15-scan.patch
+
+Patch11: xcdroast-0.98alpha15-01_upstream_configure.patch
+Patch12: xcdroast-0.98alpha15-02_upstream_gtk2locale.patch
+Patch13: xcdroast-0.98alpha15-03_upstream_64bit_gsize.patch
+Patch14: xcdroast-0.98alpha15-04_upstream_read_eagain.patch
+Patch15: xcdroast-0.98alpha15-05_upstream_wav.patch
+Patch16: xcdroast-0.98alpha15-06_man.patch
+Patch17: xcdroast-0.98alpha15-07_case_cmp.patch
+Patch18: xcdroast-0.98alpha15-08_desktop.patch
+Patch19: xcdroast-0.98alpha15-09_share_dir.patch
+Patch20: xcdroast-0.98alpha15-10_cddbtool.patch
+Patch21: xcdroast-0.98alpha15-11_mkisofs_options.patch
+Patch22: xcdroast-0.98alpha15-12_cdrecord_versions.patch
+Patch23: xcdroast-0.98alpha15-13_cdrecord_to_wodim.patch
+Patch24: xcdroast-0.98alpha15-14_atapi_to_oldatapi.patch
+Patch25: xcdroast-0.98alpha15-15_no_readcd_version.patch
+
+Patch30: xcdroast-0.98alpha15-prodvd.patch
+Patch31: xcdroast-0.98alpha15-frozen_gui.patch
+Patch32: xcdroast-0.98alpha15-nogtk1.patch
+
Url: http://www.xcdroast.org/
BuildRoot: /var/tmp/%{name}-root
Requires: cdrecord >= 2.0, mkisofs >= 2.0
-Requires: cdda2wav >= 2.0
+Requires(hint): cdda2wav >= 2.0
BuildRequires: gtk2-devel >= 2.0.6
BuildRequires: desktop-file-utils >= 0.2.92
@@ -31,14 +47,30 @@
%prep
%setup -q -n xcdroast-0.98alpha15
-%patch1 -p0 -b .64bit
-%patch2 -p1 -b .conf
-%patch3 -p1 -b .linebuffer
-%patch4 -p1 -b .nowarn
-%patch5 -p1 -b .scan
-%patch6 -p1 -b .prodvd
-%patch7 -p1 -b .frozen
-%patch8 -p1 -b .nogtk1
+%patch1 -p1 -b .linebuffer
+%patch2 -p1 -b .nowarn
+%patch3 -p1 -b .scan
+
+%patch11 -p1 -b .p11
+%patch12 -p1 -b .p12
+%patch13 -p1 -b .p13
+%patch14 -p1 -b .p14
+%patch15 -p1 -b .p15
+%patch16 -p1 -b .p16
+%patch17 -p1 -b .p17
+%patch18 -p1 -b .p18
+%patch19 -p1 -b .p19
+%patch20 -p1 -b .p20
+%patch21 -p0 -b .p21
+%patch22 -p1 -b .p22
+%patch23 -p1 -b .p23
+%patch24 -p0 -b .p24
+%patch25 -p1 -b .p25
+
+%patch30 -p1 -b .cdrkit
+%patch31 -p1 -b .frozen
+%patch32 -p1 -b .nogtk1
+
%build
%configure --enable-gtk2 --disable-nonrootmode
@@ -75,6 +107,9 @@
%{_datadir}/applications/*
%changelog
+* Mon Aug 13 2007 Harald Hoyer <harald at redhat.com> - 0.98a15-15
+- more cdrkit compat patches
+
* Wed Jun 20 2007 Harald Hoyer <harald at redhat.com> - 0.98a15-13.1
- added cdrkit compat patches
--- xcdroast-0.98alpha15-64bit_gsize.patch DELETED ---
--- xcdroast-0.98alpha15-conf.patch DELETED ---
More information about the fedora-extras-commits
mailing list