summaryrefslogtreecommitdiff
path: root/audio/cdparanoia/patches/patch-ae
blob: 27c64918cf72d47954167f0118dc322194c75e46 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
$NetBSD: patch-ae,v 1.2 2000/05/02 11:37:06 hubertf Exp $

--- main.c.orig	Tue Dec 14 17:18:44 1999
+++ main.c	Mon Jan 17 23:12:58 2000
@@ -49,7 +49,9 @@
 #include <unistd.h>
 #include <string.h>
 #include <fcntl.h>
+#ifdef GETOPT_LONG
 #include <getopt.h>
+#endif
 #include <errno.h>
 #include <math.h>
 #include <sys/time.h>
@@ -231,6 +233,7 @@
 "  cdparanoia [options] <span> [outfile]\n\n"
 
 "OPTIONS:\n"
+#ifdef GETOPT_LONG
 "  -v --verbose                    : extra verbose operation\n"
 "  -q --quiet                      : quiet operation\n"
 "  -e --stderr-progress            : force output of progress information to\n"
@@ -274,6 +277,46 @@
 "  -Z --disable-paranoia           : disable all paranoia checking\n"
 "  -Y --disable-extra-paranoia     : only do cdda2wav-style overlap checking\n"
 "  -X --abort-on-skip              : abort on imperfect reads/skips\n\n"
+#else
+"  -v         : extra verbose operation\n"
+"  -q         : quiet operation\n"
+"  -e         : force output of progress information to\n"
+"               stderr (for wrapper scripts)\n"
+"  -V         : print version info and quit\n"
+"  -Q         : autosense drive, query disc and quit\n"
+"  -B         : 'batch' mode (saves each track to a seperate file.\n"
+"  -s         : do an exhaustive search for drive\n"
+"  -h         : print help\n\n"
+
+"  -p         : output raw 16 bit PCM in host byte order\n"
+"  -r         : output raw 16 bit little-endian PCM\n"
+"  -R         : output raw 16 bit big-endian PCM\n"
+"  -w         : output as WAV file (default)\n"
+"  -f         : output as AIFF file\n"
+"  -a         : output as AIFF-C file\n"
+"  -i <file>  : output human readable ripping info to file\n\n"
+
+"  -c         : force treating drive as little endian\n"
+"  -C         : force treating drive as big endian\n"
+"  -n <n>     : force default number of sectors in read to n sectors\n"
+"  -o <n>     : force minimum overlap search during\n"
+"               verification to n sectors\n"
+"  -d <dev>   : use specified device; disallow autosense\n"
+"  -g <dev>   : use specified generic scsi device\n"
+"  -S <n>     : read from device at specified speed\n"
+"  -t <n>     : Add <n> sectors to the values reported\n"
+"               when addressing tracks. May be negative\n"
+"  -T         : Assume that the beginning offset of\n"
+"               track 1 as reported in the TOC will be\n"
+"               addressed as LBA 0.  Necessary for some\n"
+"               Toshiba drives to get track boundaries\n"
+"               correct\n"
+"  -z         : never accept any less than perfect\n"
+"               data reconstruction (don't allow 'V's)\n"
+"  -Z         : disable all paranoia checking\n"
+"  -Y         : only do cdda2wav-style overlap checking\n"
+"  -X         : abort on imperfect reads/skips\n\n"
+#endif
 
 "OUTPUT SMILIES:\n"
 "  :-)   Normal operation, low/no jitter\n"
@@ -374,7 +417,7 @@
   int graph=30;
   char buffer[256];
   static long c_sector=0,v_sector=0;
-  static char dispcache[30]="                              ";
+  static char dispcache[30 + 1]="                              ";
   static int last=0;
   static long lasttime=0;
   long sector,osector=0;
@@ -585,6 +628,7 @@
 
 const char *optstring = "escCn:o:d:g:S:prRwafvqVQhZzYXWBi:Tt:";
 
+#ifdef GETOPT_LONG
 struct option options [] = {
 	{"stderr-progress",no_argument,NULL,'e'},
 	{"search-for-drive",no_argument,NULL,'s'},
@@ -618,6 +662,7 @@
 
 	{NULL,0,NULL,0}
 };
+#endif
 
 long blocking_write(int outf, char *buffer, long num){
   long words=0,temp;
@@ -668,7 +713,12 @@
 
   atexit(cleanup);
 
-  while((c=getopt_long(argc,argv,optstring,options,&long_option_index))!=EOF){
+#ifdef GETOPT_LONG
+  while((c=getopt_long(argc,argv,optstring,options,&long_option_index))!=EOF)
+#else
+  while((c=getopt(argc,argv,optstring))!=EOF)
+#endif
+  {
     switch(c){
     case 'B':
       batch=1;
@@ -797,6 +847,13 @@
   report(VERSION);
 
   /* Query the cdrom/disc; we may need to override some settings */
+
+#ifndef __linux__	/* XXX */
+  if (!force_generic_device)
+    errx(1, "-g option is currently required by NetBSD version");
+  if (!force_cdrom_device)
+    force_cdrom_device=copystring(force_generic_device);
+#endif
 
   if(force_generic_device)
     d=cdda_identify_scsi(force_generic_device,force_cdrom_device,verbose,NULL);