auto-import cdparanoia-alpha9.8-22 on branch devel from

cdparanoia-alpha9.8-22.src.rpm
This commit is contained in:
Peter Jones 2004-09-30 15:48:26 +00:00
parent 571c0bc930
commit c88503add2
7 changed files with 2190 additions and 2 deletions

View File

@ -0,0 +1,52 @@
--- cdparanoia-III-alpha9.8/configure.in.cflags 2000-03-26 02:33:22.000000000 -0500
+++ cdparanoia-III-alpha9.8/configure.in 2004-03-30 11:59:04.861801016 -0500
@@ -19,18 +19,18 @@
case $host in
i?86-*-linux*)
DEBUG="-g -Wall -fsigned-char"
- OPT="-O20 -ffast-math -fsigned-char -finline-functions";;
+ OPT="-ffast-math -fsigned-char -finline-functions";;
*)
DEBUG="-g -Wall -fsigned-char"
- OPT="-O20 -fsigned-char";;
+ OPT="-fsigned-char";;
esac
fi
AC_HEADER_STDC
-CFLAGS=""
+# CFLAGS=""
-TYPESIZES=""
+# TYPESIZES=""
AC_CHECK_SIZEOF(short)
AC_CHECK_SIZEOF(int)
--- cdparanoia-III-alpha9.8/configure.cflags 2000-04-15 11:13:01.000000000 -0400
+++ cdparanoia-III-alpha9.8/configure 2004-03-30 11:58:52.932614528 -0500
@@ -892,10 +892,10 @@
case $host in
i?86-*-linux*)
DEBUG="-g -Wall -fsigned-char"
- OPT="-O20 -ffast-math -fsigned-char -finline-functions";;
+ OPT="-ffast-math -fsigned-char -finline-functions";;
*)
DEBUG="-g -Wall -fsigned-char"
- OPT="-O20 -fsigned-char";;
+ OPT="-fsigned-char";;
esac
fi
@@ -1084,9 +1084,9 @@
fi
-CFLAGS=""
+# CFLAGS=""
-TYPESIZES=""
+# TYPESIZES=""
echo $ac_n "checking size of short""... $ac_c" 1>&6
echo "configure:1093: checking size of short" >&5

View File

@ -0,0 +1,46 @@
--- cdparanoia-III-alpha9.8/interface/scsi_interface.c.env 2004-09-30 11:36:29.495045730 -0400
+++ cdparanoia-III-alpha9.8/interface/scsi_interface.c 2004-09-30 11:35:52.261283378 -0400
@@ -177,8 +177,11 @@
* "allocation, so be more conservative: 32kB max until I test more
* thoroughly". We're not currently honoring that, because we should
* always get -ENOMEM.
+ *
+ * Updated: but we don't always get -ENOMEM. Sometimes USB drives
+ * still fail the wrong way. This needs some kernel-land investigation.
*/
-#if 0
+#if 1
cur=(cur>1024*32?1024*32:cur);
#endif
d->nsectors=cur/CD_FRAMESIZE_RAW;
--- cdparanoia-III-alpha9.8/interface/scan_devices.c.env 2004-09-30 11:30:55.422135762 -0400
+++ cdparanoia-III-alpha9.8/interface/scan_devices.c 2004-09-30 11:34:04.815523677 -0400
@@ -104,6 +104,7 @@
cdrom_drive *cdda_identify(const char *device, int messagedest,char **messages){
struct stat st;
cdrom_drive *d=NULL;
+ char *transport = getenv("CDDA_TRANSPORT");
idmessage(messagedest,messages,"Checking %s for cdrom...",device);
if(stat(device,&st)){
@@ -120,11 +121,15 @@
#endif
#ifdef SG_IO
- d=cdda_identify_scsi(device,NULL,messagedest,messages);
- if(!d)d=cdda_identify_cooked(device,messagedest,messages);
-#else
- if(!d)d=cdda_identify_scsi(device,NULL,messagedest,messages);
- d=cdda_identify_cooked(device,messagedest,messages);
+ if (transport && !strcasecmp(transport, "cooked")) {
+#endif
+ d=cdda_identify_cooked(device,messagedest,messages);
+ if(!d)d=cdda_identify_scsi(device,NULL,messagedest,messages);
+#ifdef SG_IO
+ } else {
+ d=cdda_identify_scsi(device,NULL,messagedest,messages);
+ if(!d)d=cdda_identify_cooked(device,messagedest,messages);
+ }
#endif
#ifdef CDDA_TEST

View File

@ -0,0 +1,86 @@
--- cdparanoia-III-alpha9.8/interface/scsi_interface.c.louder 2004-04-23 12:18:20.561275440 -0400
+++ cdparanoia-III-alpha9.8/interface/scsi_interface.c 2004-04-23 12:24:37.853918240 -0400
@@ -197,16 +197,41 @@
memset(hdr->dxferp, sgi->bytefill, sgi->dxferp_buffer_len);
memcpy(hdr->cmdp, cmdp, cmd_len);
- hdr->cmd_len = cmd_len;
+ sgi->cmd_len = hdr->cmd_len = cmd_len;
sgi->in_size = in_size;
sgi->out_size = out_size;
}
+void print_cmd_error(cdrom_drive *d, char *direction, char *cmdp, int cmdlen) {
+ unsigned char ebuf[1024], tmp[2];
+ int x=0;
+
+ sprintf(ebuf, "\nError %s command: ", direction);
+ cdmessage(d, ebuf);
+ tmp[1] = 0;
+ while (x < cmdlen) {
+ if (x % 8 == 0)
+ cdmessage(d, " ");
+ if (x % 16 == 0) {
+ cdmessage(d, "\n");
+ if (x+1 < cmdlen)
+ cdmessage(d, "\t");
+ }
+ tmp[0] = cmdp[x];
+ sprintf(ebuf, "%02x ", tmp[0]);
+ cdmessage(d, ebuf);
+ x++;
+ }
+ if (!(x % 16 == 0))
+ cdmessage(d, "\n");
+}
+
static int sgio_handle_scsi_cmd(cdrom_drive *d) {
int status = 0;
struct sg_info *sgi = (struct sg_info *)d->sg;
struct sg_io_hdr *hdr = sgi->hdr;
+ char ebuf[256];
if (sgi->in_size) {
hdr->dxfer_len = sgi->in_size;
@@ -217,8 +242,10 @@
if (status >= 0)
if (hdr->status)
status = check_sbp_error(hdr->sbp);
- if (status < 0)
+ if (status < 0) {
+ print_cmd_error(d, "writing", sgi->cmdp, sgi->cmd_len);
return TR_EWRITE;
+ }
}
if (!sgi->in_size | sgi->out_size) {
hdr->dxfer_len = sgi->out_size;
@@ -226,14 +253,18 @@
errno = 0;
status = ioctl(d->cdda_fd, SG_IO, hdr);
- if (status < 0)
+ if (status < 0) {
+ print_cmd_error(d, "reading", hdr->cmdp, hdr->cmd_len);
return TR_EREAD;
+ }
if (status >= 0)
if (hdr->status)
status = check_sbp_error(hdr->sbp);
}
- if (status)
+ if (status) {
+ print_cmd_error(d, "reading", hdr->cmdp, hdr->cmd_len);
return status;
+ }
errno = 0;
return 0;
@@ -352,6 +383,7 @@
struct sg_header *hdr = (struct sg_header *)sgi->hdr;
sgi->cmdp = (char *)hdr + sizeof (struct sg_header);
+ sgi->cmd_len = cmd_len;
memcpy(sgi->cmdp, cmdp, cmd_len);
sgi->dxferp = sgi->cmdp + cmd_len;

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,24 @@
--- cdparanoia-III-alpha9.8/main.c.verbose 2004-04-21 13:07:58.608136480 -0400
+++ cdparanoia-III-alpha9.8/main.c 2004-04-21 13:09:04.660095056 -0400
@@ -851,7 +851,7 @@
if(verbose)
cdda_verbose_set(d,CDDA_MESSAGE_PRINTIT,CDDA_MESSAGE_PRINTIT);
else
- cdda_verbose_set(d,CDDA_MESSAGE_PRINTIT,CDDA_MESSAGE_FORGETIT);
+ cdda_verbose_set(d,CDDA_MESSAGE_FORGETIT,CDDA_MESSAGE_FORGETIT);
/* possibly force hand on endianness of drive, sector request size */
if(force_cdrom_endian!=-1){
@@ -1032,10 +1032,12 @@
paranoia_modeset(p,paranoia_mode);
if(force_cdrom_overlap!=-1)paranoia_overlapset(p,force_cdrom_overlap);
+#if 0
if(verbose)
cdda_verbose_set(d,CDDA_MESSAGE_LOGIT,CDDA_MESSAGE_LOGIT);
else
cdda_verbose_set(d,CDDA_MESSAGE_FORGETIT,CDDA_MESSAGE_FORGETIT);
+#endif
paranoia_seek(p,cursor=first_sector,SEEK_SET);

View File

@ -0,0 +1,21 @@
--- cdparanoia-III-alpha9.8/interface/scan_devices.c.verbosity3 2004-07-06 23:22:03.000000000 -0400
+++ cdparanoia-III-alpha9.8/interface/scan_devices.c 2004-07-06 23:22:03.000000000 -0400
@@ -522,6 +522,7 @@
d->ioctl_fd=fd;
d->bigendianp=-1; /* We don't know yet... */
d->nsectors=-1;
+ d->messagedest=messagedest;
d->interface=GENERIC_SCSI;
--- cdparanoia-III-alpha9.8/report.c.verbosity3 1999-08-15 17:52:30.000000000 -0400
+++ cdparanoia-III-alpha9.8/report.c 2004-07-06 23:22:03.000000000 -0400
@@ -2,7 +2,7 @@
#include "interface/cdda_interface.h"
int quiet=0;
-int verbose=CDDA_MESSAGE_FORGETIT;
+int verbose=CDDA_MESSAGE_PRINTIT;
void report(char *s){
if(!quiet){

View File

@ -3,13 +3,19 @@
Name: cdparanoia
Version: %{realver}
Release: 21
Release: 22
License: GPL
Group: Applications/Multimedia
Source: http://www.xiph.org/paranoia/download/%{name}-III-%{realver}.src.tgz
Patch0: cdparanoia-III-alpha9.8.nostrip.patch
Patch1: cdparanoia-III-alpha9.8.labels.patch
Patch2: cdparanoia-III-alpha9.8.O_EXCL.patch
Patch3: cdparanoia-III-alpha9.8.cflags.patch
Patch4: cdparanoia-III-alpha9.8.sgio.patch
Patch5: cdparanoia-III-alpha9.8.verbose.patch
Patch6: cdparanoia-III-alpha9.8.louder.patch
Patch7: cdparanoia-III-alpha9.8.verbosity3.patch
Patch8: cdparanoia-III-alpha9.8.env.patch
Url: http://www.xiph.org/paranoia/index.html
BuildRoot: %{_tmppath}/cdparanoia-%{version}-root
Requires: cdparanoia-libs = %{version}-%{release}
@ -45,14 +51,21 @@ applications which read CD Digital Audio disks.
%prep
%setup -q -n %{name}-III-%{realver}
%patch4 -p1 -b .sgio
%patch0 -p1 -b .nostrip
%patch1 -p1 -b .labels
%patch2 -p1 -b .O_EXCL
%patch3 -p1 -b .cflags
%patch5 -p1 -b .verbose
%patch6 -p1 -b .louder
%patch7 -p1 -b .verbosity3
%patch8 -p1 -b .env
%build
rm -rf $RPM_BUILD_ROOT
export OPT="${CFLAGS:-%optflags}"
%configure --includedir=%{_includedir}/cdda
make
make OPT="$OPT"
%install
rm -rf $RPM_BUILD_ROOT
@ -106,6 +119,9 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/*.a
%changelog
* Wed Jul 7 2004 Peter Jones <pjones@redhat.com> alpha9.8-21sgio1
- a new set of sgio patches
* Tue Jun 15 2004 Elliot Lee <sopwith@redhat.com>
- rebuilt