summaryrefslogtreecommitdiffstats
path: root/source/ap/cdrdao
diff options
context:
space:
mode:
Diffstat (limited to 'source/ap/cdrdao')
-rw-r--r--source/ap/cdrdao/cdrdao-1.2.3-format.patch57
-rw-r--r--source/ap/cdrdao/cdrdao-1.2.3-helpmansync.patch52
-rwxr-xr-xsource/ap/cdrdao/cdrdao.SlackBuild36
-rw-r--r--source/ap/cdrdao/cdrdao.bitrate_table.diff24
-rw-r--r--source/ap/cdrdao/cdrdao.narrowing.diff24
-rw-r--r--source/ap/cdrdao/slack-desc8
6 files changed, 188 insertions, 13 deletions
diff --git a/source/ap/cdrdao/cdrdao-1.2.3-format.patch b/source/ap/cdrdao/cdrdao-1.2.3-format.patch
new file mode 100644
index 000000000..cba986c14
--- /dev/null
+++ b/source/ap/cdrdao/cdrdao-1.2.3-format.patch
@@ -0,0 +1,57 @@
+diff -up wrk/pccts/antlr/fset2.c.wrk wrk/pccts/antlr/fset2.c
+--- wrk/pccts/antlr/fset2.c.wrk 2013-12-05 11:33:33.561962126 +0100
++++ wrk/pccts/antlr/fset2.c 2013-12-05 11:33:52.009105807 +0100
+@@ -2210,7 +2210,7 @@ void MR_backTraceReport()
+ if (p->ntype != nToken) continue;
+ tn=(TokNode *)p;
+ if (depth != 0) fprintf(stdout," ");
+- fprintf(stdout,TerminalString(tn->token));
++ fprintf(stdout,"%s",TerminalString(tn->token));
+ depth++;
+ if (! MR_AmbAidMultiple) {
+ if (set_nil(tn->tset)) {
+diff -up wrk/pccts/antlr/gen.c.wrk wrk/pccts/antlr/gen.c
+--- wrk/pccts/antlr/gen.c.wrk 2013-12-05 11:26:36.384714088 +0100
++++ wrk/pccts/antlr/gen.c 2013-12-05 11:29:41.894158536 +0100
+@@ -3866,7 +3866,7 @@ int file;
+ /* MR10 */ _gen(" * ");
+ /* MR10 */ for (i=0 ; i < Save_argc ; i++) {
+ /* MR10 */ _gen(" ");
+-/* MR10 */ _gen(Save_argv[i]);
++/* MR10 */ _gen1("%s",Save_argv[i]);
+ /* MR10 */ };
+ _gen("\n");
+ _gen(" *\n");
+diff -up wrk/pccts/antlr/lex.c.wrk wrk/pccts/antlr/lex.c
+--- wrk/pccts/antlr/lex.c.wrk 2013-12-05 11:15:51.912722340 +0100
++++ wrk/pccts/antlr/lex.c 2013-12-05 11:19:04.039210441 +0100
+@@ -706,7 +706,7 @@ FILE *output;
+ /* MR26 */ if (! (isalpha(*t) || isdigit(*t) || *t == '_' || *t == '$')) break;
+ /* MR26 */ }
+ /* MR26 */ }
+-/* MR26 */ fprintf(output,strBetween(pSymbol, t, pSeparator));
++/* MR26 */ fprintf(output,"%s",strBetween(pSymbol, t, pSeparator));
+
+ *q = p;
+ return (*pSeparator == 0);
+@@ -771,7 +771,7 @@ FILE *f;
+ &pValue,
+ &pSeparator,
+ &nest);
+- fprintf(f,strBetween(pDataType, pSymbol, pSeparator));
++ fprintf(f,"%s",strBetween(pDataType, pSymbol, pSeparator));
+ }
+
+ /* check to see if string e is a word in string s */
+@@ -852,9 +852,9 @@ int i;
+ &pSeparator,
+ &nest);
+ fprintf(f,"\t");
+- fprintf(f,strBetween(pDataType, pSymbol, pSeparator));
++ fprintf(f,"%s",strBetween(pDataType, pSymbol, pSeparator));
+ fprintf(f," ");
+- fprintf(f,strBetween(pSymbol, pEqualSign, pSeparator));
++ fprintf(f,"%s",strBetween(pSymbol, pEqualSign, pSeparator));
+ fprintf(f,";\n");
+ }
+ fprintf(f,"};\n");
diff --git a/source/ap/cdrdao/cdrdao-1.2.3-helpmansync.patch b/source/ap/cdrdao/cdrdao-1.2.3-helpmansync.patch
new file mode 100644
index 000000000..3c200887a
--- /dev/null
+++ b/source/ap/cdrdao/cdrdao-1.2.3-helpmansync.patch
@@ -0,0 +1,52 @@
+diff -up cdrdao-1.2.3/dao/cdrdao.man.helpmansync cdrdao-1.2.3/dao/cdrdao.man
+--- cdrdao-1.2.3/dao/cdrdao.man.helpmansync 2012-10-08 15:54:01.598543254 +0200
++++ cdrdao-1.2.3/dao/cdrdao.man 2012-10-08 16:01:11.439957988 +0200
+@@ -3,7 +3,7 @@
+ cdrdao \- reads and writes CDs in disc-at-once mode
+ .SH SYNOPSIS
+ .B cdrdao
+-.RB { show-toc|read-toc|read-cd|read-cddb|show-data|read-test|disk-info|msinfo|unlock|simulate|write|copy|blank }
++.RB { show-toc|toc-info|toc-size|read-toc|read-cd|read-cddb|show-data|read-test|disk-info|discid|msinfo|drive-info|unlock|scanbus|simulate|write|copy|blank }
+ .RB [ --device
+ .IR device ]
+ .RB [ --source-device
+@@ -77,6 +77,12 @@ The first argument must be one of the fo
+ .BI show-toc
+ Print out a summary about what will be written to the CD-R.
+ .TP
++.BI toc-info
++Prints out short toc-file summary.
++.TP
++.BI toc-size
++Prints total number of blocks for toc.
++.TP
+ .BI read-toc
+ Analyze each track of the inserted CD and create a
+ .I toc-file
+@@ -122,10 +128,16 @@ Shows information about the inserted CD-
+ it will also print the start of the last and current session which is
+ used by mkisofs to create an image for a second or higher session.
+ .TP
++.BI discid
++Prints out CDDB information.
++.TP
+ .BI msinfo
+ Shows information required for creating multi session disks with
+ mkisofs. The output is meant for processing by scripts.
+ .TP
++.BI drive-info
++Shows drive information.
++.TP
+ .BI unlock
+ Tries to unlock the recorder device after a failed write or simulation
+ run. If you cannot eject the CD after a cdrdao run try this command.
+@@ -139,6 +151,9 @@ blanking operation. Use option
+ .BI --speed
+ to select another blanking speed.
+ .TP
++.BI scanbus
++Scan for devices.
++.TP
+ .BI simulate
+ Like
+ .BI write
diff --git a/source/ap/cdrdao/cdrdao.SlackBuild b/source/ap/cdrdao/cdrdao.SlackBuild
index fe3c5b7d1..21fa89fd9 100755
--- a/source/ap/cdrdao/cdrdao.SlackBuild
+++ b/source/ap/cdrdao/cdrdao.SlackBuild
@@ -1,6 +1,6 @@
-#!/bin/sh
+#!/bin/bash
-# Copyright 2008, 2009, 2010, 2012 Patrick J. Volkerding, Sebeka, Minnesota, USA
+# Copyright 2008, 2009, 2010, 2012, 2017, 2018 Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -20,24 +20,34 @@
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+cd $(dirname $0) ; CWD=$(pwd)
+PKGNAM=cdrdao
VERSION=1.2.3
-BUILD=${BUILD:-2}
+BUILD=${BUILD:-4}
# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
- i?86) export ARCH=i486 ;;
+ i?86) export ARCH=i586 ;;
arm*) export ARCH=arm ;;
# Unless $ARCH is already set, use uname -m for all other archs:
*) export ARCH=$( uname -m ) ;;
esac
fi
+# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
+# the name of the created package would be, and then exit. This information
+# could be useful to other scripts.
+if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
+ echo "$PKGNAM-$VERSION-$ARCH-$BUILD.txz"
+ exit 0
+fi
+
NUMJOBS=${NUMJOBS:-" -j7 "}
-if [ "$ARCH" = "i486" ]; then
- SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
@@ -50,7 +60,6 @@ else
LIBDIRSUFFIX=""
fi
-CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-cdrdao
@@ -60,9 +69,13 @@ mkdir -p $TMP $PKG
cd $TMP
rm -rf cdrdao-$VERSION
tar xvf $CWD/cdrdao-$VERSION.tar.?z* || exit 1
-cd cdrdao-$VERSION
+cd cdrdao-$VERSION || exit 1
zcat $CWD/cdrdao-1.2.3-stat.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/cdrdao.narrowing.diff.gz | patch -p1 --verbose || exit 1
+zcat $CWD/cdrdao-1.2.3-format.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/cdrdao-1.2.3-helpmansync.patch.gz | patch -p1 --verbose || exit 1
+zcat $CWD/cdrdao.bitrate_table.diff.gz | patch -p1 --verbose || exit 1
chown -R root:root .
find . \
@@ -76,7 +89,12 @@ CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
- --build=$ARCH-slackware-linux
+ --without-xdao \
+ --without-scglib \
+ --with-ogg-support \
+ --with-mp3-support \
+ --with-lame \
+ --build=$ARCH-slackware-linux || exit 1
make $NUMJOBS || make || exit 1
make install DESTDIR=$PKG || exit 1
diff --git a/source/ap/cdrdao/cdrdao.bitrate_table.diff b/source/ap/cdrdao/cdrdao.bitrate_table.diff
new file mode 100644
index 000000000..bc5fe0fe3
--- /dev/null
+++ b/source/ap/cdrdao/cdrdao.bitrate_table.diff
@@ -0,0 +1,24 @@
+--- ./utils/toc2mp3.cc.orig 2003-02-22 04:16:56.000000000 -0600
++++ ./utils/toc2mp3.cc 2018-02-03 00:37:19.081854469 -0600
+@@ -143,8 +143,8 @@
+
+ message(0, "LAME encoder version: %s", get_lame_version());
+ message(0, "Supported bit rates: ");
+- for (int i = 0; i < 16 && bitrate_table[1][i] >= 0; i++) {
+- message(0, "%d ", bitrate_table[1][i]);
++ for (int i = 0; i < 16 && lame_get_bitrate(1, i) >= 0; i++) {
++ message(0, "%d ", lame_get_bitrate(1, i));
+ }
+ message(0, "");
+ }
+@@ -238,8 +238,8 @@
+ lame_global_flags *lf;
+ int bitrateOk = 0;
+
+- for (int i = 0; bitrate_table[1][i] >= 0 && !bitrateOk; i++) {
+- if (bitrate == bitrate_table[1][i])
++ for (int i = 0; lame_get_bitrate(1, i) >= 0 && !bitrateOk; i++) {
++ if (bitrate == lame_get_bitrate(1, i))
+ bitrateOk = 1;
+ }
+
diff --git a/source/ap/cdrdao/cdrdao.narrowing.diff b/source/ap/cdrdao/cdrdao.narrowing.diff
new file mode 100644
index 000000000..ddca79468
--- /dev/null
+++ b/source/ap/cdrdao/cdrdao.narrowing.diff
@@ -0,0 +1,24 @@
+From fb14cd15702cbd4bf811a5f7a5edea00c7ac2b66 Mon Sep 17 00:00:00 2001
+From: root <hexumg@gmail.com>
+Date: Fri, 8 Jan 2016 00:34:43 +0300
+Subject: [PATCH] CdrDriver.cc:498:64: Fix narrowing conversion error
+
+---
+ dao/CdrDriver.cc | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/dao/CdrDriver.cc b/dao/CdrDriver.cc
+index ee89620..4d1edda 100644
+--- a/dao/CdrDriver.cc
++++ b/dao/CdrDriver.cc
+@@ -495,7 +495,7 @@ unsigned char CdrDriver::syncPattern[12] = {
+ 0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0
+ };
+
+-char CdrDriver::REMOTE_MSG_SYNC_[4] = { 0xff, 0x00, 0xff, 0x00 };
++char CdrDriver::REMOTE_MSG_SYNC_[4] = { '\xff', '\x00', '\xff', '\x00' };
+
+
+ /* Maps a string to the corresponding driver option value
+--
+2.6.4
diff --git a/source/ap/cdrdao/slack-desc b/source/ap/cdrdao/slack-desc
index e3c037fed..54addda88 100644
--- a/source/ap/cdrdao/slack-desc
+++ b/source/ap/cdrdao/slack-desc
@@ -1,14 +1,14 @@
# HOW TO EDIT THIS FILE:
-# The "handy ruler" below makes it easier to edit a package description. Line
+# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|'
-# on the right side marks the last column you can put a character in. You must
-# make exactly 11 lines for the formatting to be correct. It's also
+# on the right side marks the last column you can put a character in. You must
+# make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
cdrdao: cdrdao (CD burning utility)
cdrdao:
-cdrdao: cdrdao burns proper disc-at-once (DAO) audio discs. In DAO mode the
+cdrdao: cdrdao burns proper disc-at-once (DAO) audio discs. In DAO mode the
cdrdao: disc is written in one shot, so you don't have to have irritating 2
cdrdao: second gaps interrupting a live recording.
cdrdao: