Ravenports generated: 17 Jun 2023 22:17
[ravenports.git] / bucket_8D / cdrdao
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               cdrdao
4 VERSION=                1.2.5
5 KEYWORDS=               sysutils
6 VARIANTS=               standard
7 SDESC[standard]=        Tool to write CD-Rs in Disk-At-Once Mode
8 HOMEPAGE=               https://cdrdao.sourceforge.net
9 CONTACT=                Michael_Reim[kraileth@elderlinux.org]
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            SF/cdrdao/rel_1_2_5
13 DISTFILE[1]=            cdrdao-1.2.5.tar.bz2:main
14 DF_INDEX=               1
15 SPKGS[standard]=        single
16
17 OPTIONS_AVAILABLE=      none
18 OPTIONS_STANDARD=       none
19
20 BUILD_DEPENDS=          libvorbis:dev:standard
21 BUILDRUN_DEPENDS=       libao:primary:standard
22                         libmad:single:standard
23                         libvorbis:primary:standard
24                         lame:primary:standard
25
26 USES=                   cpe gmake pkgconfig c++:single
27
28 CPE_VENDOR=             andreas_mueller
29 FPC_EQUIVALENT=         sysutils/cdrdao
30
31 MUST_CONFIGURE=         gnu
32 CONFIGURE_ARGS=         --with-gcdmaster=no
33                         --with-pcctsbin={{PREFIX}}/bin
34                         --with-pcctsinc={{PREFIX}}/include/pccts
35                         --with-posix-threads=no
36 CONFIGURE_ENV=          AO_LIBS=-lao
37                         MAD_LIBS=-lmad
38                         VORBISFILE_LIBS=-lvorbisfile
39
40 MAKE_ENV=               CCOM=cc
41
42 VAR_OPSYS[freebsd]=     CONFIGURE_ARGS=--with-scglib
43 VAR_OPSYS[sunos]=       CONFIGURE_ARGS=--with-scglib
44                         LDFLAGS=-lvolmgt
45                         LDFLAGS=-lnsl
46 VAR_OPSYS[dragonfly]=   CONFIGURE_ARGS=--with-scglib
47 VAR_OPSYS[midnightbsd]= CONFIGURE_ARGS=--with-scglib
48
49 post-patch:
50 .for i in 45libdeflt 45libedc 45libfile 45libhfs_iso 45libparanoia 45libunls \
51         45librscg 55cdda2wav 55cdrecord 55cmd 55mkisofs 55mkisofs!@!diag \
52         55readcd 55scgcheck 55scgskeleton 55rscsi 85man
53         ${RM} ${WRKSRC}/scsilib/TARGETS/${i}
54 .endfor
55 .for i in cdrdao.man main.cc
56         ${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/dao/${i}
57 .endfor
58         ${REINPLACE_CMD} -E -e 's|(^CDRDAO_DATA_DIR.+=).+|\1 ${PREFIX}/share/cdrdao|' \
59                 ${WRKSRC}/dao/Makefile.in
60 .for i in toc2cddb.1 toc2cue.1
61         ${REINPLACE_CMD} -e 's|1\.2\.2|1.2.5|g' ${WRKSRC}/utils/${i}
62 .endfor
63
64 do-install:
65         ${INSTALL_PROGRAM} ${WRKSRC}/dao/cdrdao ${STAGEDIR}${PREFIX}/bin
66         ${INSTALL_MAN} ${WRKSRC}/dao/cdrdao.man \
67                 ${STAGEDIR}${MANPREFIX}/man/man1/cdrdao.1
68 .for f in cue2toc toc2cddb toc2cue
69         ${INSTALL_PROGRAM} ${WRKSRC}/utils/${f} ${STAGEDIR}${PREFIX}/bin
70         ${INSTALL_MAN} ${WRKSRC}/utils/${f}.1 ${STAGEDIR}${MANPREFIX}/man/man1/
71 .endfor
72         ${INSTALL_PROGRAM} ${WRKSRC}/utils/toc2mp3 ${STAGEDIR}${PREFIX}/bin
73         ${MKDIR} ${STAGEDIR}${PREFIX}/share/cdrdao
74         ${INSTALL_DATA} ${WRKSRC}/dao/cdrdao.drivers \
75                 ${STAGEDIR}${PREFIX}/share/cdrdao/drivers
76
77 [FILE:231:descriptions/desc.single]
78 Cdrdao records audio or data CD-R[W]s in disc-at-once (DAO) mode based on
79 textual description of the CD contents (toc-file).
80
81 Among others, cdrdao can handle the bin/cue format commonly used for VCDs
82 or disks with subchannel data.
83
84
85 [FILE:99:distinfo]
86 d19b67c853c5dba2406afaab6cd788e77f35eebe634cac4679528477c7be01b6       870084 cdrdao-1.2.5.tar.bz2
87
88
89 [FILE:143:manifests/plist.single]
90 bin/
91  cdrdao
92  cue2toc
93  toc2cddb
94  toc2cue
95  toc2mp3
96 share/cdrdao/drivers
97 share/man/man1/
98  cdrdao.1.gz
99  cue2toc.1.gz
100  toc2cddb.1.gz
101  toc2cue.1.gz
102
103
104 [FILE:746:patches/patch-configure]
105 --- configure.orig      2023-02-03 14:28:39 UTC
106 +++ configure
107 @@ -11410,7 +11410,7 @@ case "$host" in
108        scsilib_objs="ScsiIf-linux.o sg_err.o"
109        ;;
110  
111 -  *-freebsd*)
112 +  *-freebsd*|*-dragonfly*|*-midnight*)
113        scsilib_libs="-lcam"
114        scsilib_objs="ScsiIf-freebsd-cam.o"
115        ;;
116 @@ -11448,7 +11448,7 @@ case "$host" in
117  esac
118  
119  case "$host" in
120 -  *-freebsd*)
121 +  *-freebsd*|*-dragonfly*|*-midnight*)
122               if test "$use_pthreads" = yes; then
123                 LDFLAGS="-pthread $LDFLAGS"
124                 thread_libs=""
125 @@ -11465,7 +11465,7 @@ printf "%s\n" "#define _P1003_1B_VISIBLE
126  esac
127  
128  case "$host" in
129 -  *-linux* | *-freebsd* | *-solaris*)
130 +  *-linux* | *-freebsd* | *-dragonfly* | *-solaris* | *-midnight*)
131              sound_if_obj=SoundIF-ao.o
132              ;;
133  
134
135
136 [FILE:303:patches/patch-dao_GenericMMC.cc]
137 --- dao/GenericMMC.cc.orig      2023-02-03 14:46:06 UTC
138 +++ dao/GenericMMC.cc
139 @@ -2075,7 +2075,7 @@ CdRawToc *GenericMMC::getRawToc(int sess
140      return NULL;
141    }
142  
143 -  dataLen = ((reqData[0] << 8) | reqData[1]) + 2;
144 +  dataLen = (dataLen + 1) & ~1;
145    
146    log_message(4, "Raw toc data len: %d", dataLen);
147  
148
149
150 [FILE:561:patches/patch-dao_ScsiIf-freebsd-cam.cc]
151 --- dao/ScsiIf-freebsd-cam.cc.orig      2023-01-25 14:30:35 UTC
152 +++ dao/ScsiIf-freebsd-cam.cc
153 @@ -28,7 +28,11 @@
154  #include <string.h>
155  
156  #include <camlib.h>
157 +#ifdef __DragonFly__
158 +#include <bus/cam/scsi/scsi_message.h>
159 +#else
160  #include <cam/scsi/scsi_message.h>
161 +#endif
162  
163  #include "ScsiIf.h"
164  #include "log.h"
165 @@ -220,6 +224,12 @@ int ScsiIf::inquiry()
166         for (i = 3; i >= 0 && revision_[i] == ' '; i--)
167                 revision_[i] = 0;
168  
169 +       if (vendor_[0] == 0)
170 +               strncpy(vendor_, "UNKNOWN", 8);
171 +
172 +       if (product_[0] == 0)
173 +               strncpy(product_, "UNKNOWN", 8);
174 +
175         return 0;
176  }
177  
178
179
180 [FILE:292:patches/patch-dao_ScsiIf-lib.cc]
181 --- dao/ScsiIf-lib.cc.orig      2021-03-15 09:13:15 UTC
182 +++ dao/ScsiIf-lib.cc
183 @@ -288,6 +288,12 @@ int ScsiIf::inquiry()
184      revision_[i] = 0;
185    }
186  
187 +  if (vendor_[0] == 0)
188 +    strncpy(vendor_, "UNKNOWN", 8);
189 +
190 +  if (product_[0] == 0)
191 +    strncpy(product_, "UNKNOWN", 8);
192 +
193    return 0;
194  }
195  
196
197
198 [FILE:510:patches/patch-dao_ScsiIf-linux.cc]
199 --- dao/ScsiIf-linux.cc.orig    2023-02-03 14:46:06 UTC
200 +++ dao/ScsiIf-linux.cc
201 @@ -33,6 +33,7 @@
202  #include <asm/param.h>
203  #include <scsi/scsi.h>
204  #include <scsi/sg.h>
205 +#include <sys/stat.h>
206  
207  #include "ScsiIf.h"
208  #include "sg_err.h"
209 @@ -272,7 +273,13 @@ int ScsiIf::inquiry()
210      for (i = 3; i >= 0 && revision_[i] == ' '; i--) {
211         revision_[i] = 0;
212      }
213 -  
214 +
215 +    if (vendor_[0] == 0)
216 +       strncpy(vendor_, "UNKNOWN", 8);
217 +
218 +    if (product_[0] == 0)
219 +       strncpy(product_, "UNKNOWN", 8); 
220 +
221      return 0;
222  }
223  
224
225
226 [FILE:3580:patches/patch-dao_ScsiIf-netbsd.cc]
227 --- dao/ScsiIf-netbsd.cc.orig   2021-03-15 09:13:15 UTC
228 +++ dao/ScsiIf-netbsd.cc
229 @@ -22,9 +22,7 @@
230  #include <unistd.h>
231  
232  #include "ScsiIf.h"
233 -
234 -/* can't include trackdb/util.h */
235 -extern void message(int level, const char *fmt, ...);
236 +#include "log.h"
237  
238  #include "decodeSense.cc"
239  
240 @@ -91,7 +89,7 @@ int ScsiIf::init()
241  {
242         if (impl_->name_ == NULL) return 1;
243         if ((impl_->fd_ = open(impl_->name_, O_RDWR, 0)) < 0) {
244 -               message(-2, "init: %s", strerror(errno));
245 +               log_message(-2, "init: %s", strerror(errno));
246                 return 1;
247         }
248         if (inquiry()) return 2;
249 @@ -193,29 +191,29 @@ void ScsiIf::printError()
250                 p += snprintf(p, s + sizeof(s) - p, ", BUF=%p", impl_->screq_.databuf);
251                 p += snprintf(p, s + sizeof(s) - p, ", LEN=%lu", impl_->screq_.datalen);
252                 p += snprintf(p, s + sizeof(s) - p, ", TO=%lu", impl_->screq_.timeout);
253 -               message(-2, s);
254 +               log_message(-2, s);
255         }
256         if (impl_->error_ != NULL) {
257 -               message(-2, impl_->error_);
258 +               log_message(-2, impl_->error_);
259         } else switch (impl_->screq_.retsts) {
260                 case SCCMD_OK: switch (impl_->screq_.status) {
261 -                       case 0x00: message(-2, "GOOD"); break;
262 -                       case 0x02: message(-2, "CHECK CONDITION"); break;
263 -                       case 0x04: message(-2, "CONDITION MET"); break;
264 -                       case 0x08: message(-2, "BUSY"); break;
265 -                       case 0x10: message(-2, "INTERMEDIATE"); break;
266 -                       case 0x14: message(-2, "INTERMEDIATE, CONDITION MET"); break;
267 -                       case 0x18: message(-2, "RESERVATION CONFLICT"); break;
268 -                       case 0x22: message(-2, "COMMAND TERMINATED"); break;
269 -                       case 0x28: message(-2, "QUEUE FULL"); break;
270 -                       default: message(-2, "undefined status");
271 +                       case 0x00: log_message(-2, "GOOD"); break;
272 +                       case 0x02: log_message(-2, "CHECK CONDITION"); break;
273 +                       case 0x04: log_message(-2, "CONDITION MET"); break;
274 +                       case 0x08: log_message(-2, "BUSY"); break;
275 +                       case 0x10: log_message(-2, "INTERMEDIATE"); break;
276 +                       case 0x14: log_message(-2, "INTERMEDIATE, CONDITION MET"); break;
277 +                       case 0x18: log_message(-2, "RESERVATION CONFLICT"); break;
278 +                       case 0x22: log_message(-2, "COMMAND TERMINATED"); break;
279 +                       case 0x28: log_message(-2, "QUEUE FULL"); break;
280 +                       default: log_message(-2, "undefined status");
281                 } break;
282 -               case SCCMD_TIMEOUT: message(-2, "timeout"); break;
283 -               case SCCMD_BUSY: message(-2, "busy"); break;
284 +               case SCCMD_TIMEOUT: log_message(-2, "timeout"); break;
285 +               case SCCMD_BUSY: log_message(-2, "busy"); break;
286                 case SCCMD_SENSE: decodeSense(impl_->screq_.sense,
287                                               impl_->screq_.senselen_used); break;
288 -               case SCCMD_UNKNOWN: message(-2, "unknown error"); break;
289 -               default: message(-2, "undefined retsts"); break;
290 +               case SCCMD_UNKNOWN: log_message(-2, "unknown error"); break;
291 +               default: log_message(-2, "undefined retsts"); break;
292         }
293  }
294  
295 @@ -259,7 +257,7 @@ int ScsiIf::inquiry()
296         return inq(impl_->fd_, vendor_, product_, revision_);
297  }
298  
299 -ScsiIf::ScanData *ScsiIf::scan(int *len)
300 +ScsiIf::ScanData *ScsiIf::scan(int *len, char *devpath)
301  {
302         DIR *dirp;
303         struct dirent *dp;
304 @@ -289,6 +287,9 @@ ScsiIf::ScanData *ScsiIf::scan(int *len)
305                         strcat(s, dp->d_name);
306                         if ((fd = open(s, O_RDWR, 0)) >= 0) {
307                                 if (ioctl(fd, SCIOCIDENTIFY, &saddr) >= 0) {
308 +#if 1
309 +                                       scanData[*len].dev = s;
310 +#else
311                                         switch (saddr.type) {
312                                                 case TYPE_SCSI:
313                                                         scanData[*len].bus = saddr.addr.scsi.scbus;
314 @@ -305,6 +306,7 @@ ScsiIf::ScanData *ScsiIf::scan(int *len)
315                                                         scanData[*len].id =
316                                                         scanData[*len].lun = -1;
317                                         }
318 +#endif
319                                         if (inq(fd, scanData[*len].vendor,
320                                                     scanData[*len].product,
321                                                     scanData[*len].revision) == 0) (*len)++;
322
323
324 [FILE:291:patches/patch-dao_ScsiIf-nt.cc]
325 --- dao/ScsiIf-nt.cc.orig       2021-03-15 09:13:15 UTC
326 +++ dao/ScsiIf-nt.cc
327 @@ -332,6 +332,12 @@ int ScsiIf::inquiry()
328       revision_[i] = 0;
329    }
330  
331 +  if (vendor_[0] == 0)
332 +    strncpy(vendor_, "UNKNOWN", 8);
333 +
334 +  if (product_[0] == 0)
335 +    strncpy(product_, "UNKNOWN", 8);
336 +
337    return 0;
338  }
339  
340
341
342 [FILE:666:patches/patch-dao_cdrdao.man]
343 --- dao/cdrdao.man.orig 2023-02-03 14:46:06 UTC
344 +++ dao/cdrdao.man
345 @@ -798,13 +798,9 @@ following locations. The files will be r
346  .I cdrdao
347  in that order:
348  
349 -1. /etc/cdrdao.conf
350 +1. %%PREFIX%%/etc/cdrdao.conf
351  
352 -2. /etc/defaults/cdrdao
353 -
354 -3. /etc/default/cdrdao
355 -
356 -4. $HOME/.cdrdao
357 +2. $HOME/.cdrdao
358  
359  
360  Command line options will overwrite the loaded settings.
361 @@ -886,4 +882,4 @@ resources may not be released. Use ipcs(
362  .ft R
363  .fi
364  .SH SEE ALSO
365 -.BR gcdmaster "(1), "cdrecord "(1), "cdda2wav "(1), "cdparanoia "(1), " sox "(1), "ipcs "(8), " ipcrm (8) 
366 +.BR gcdmaster "(1), "cdrecord "(1), "cdda2wav "(1), "cdparanoia "(1), " sox "(1), "ipcs "(1), " ipcrm (1) 
367
368
369 [FILE:514:patches/patch-dao_main.cc]
370 --- dao/main.cc.orig    2023-02-03 14:46:06 UTC
371 +++ dao/main.cc
372 @@ -2450,11 +2450,7 @@ int main(int argc, char **argv)
373  
374      Settings* settings = new Settings;
375  
376 -    settingsPath = "/etc/cdrdao.conf";
377 -    if (settings->read(settingsPath) == 0)
378 -       log_message(3, "Read settings from \"%s\".", settingsPath);
379 -
380 -    settingsPath = "/etc/defaults/cdrdao";
381 +    settingsPath = "%%PREFIX%%/etc/defaults/cdrdao";
382      if (settings->read(settingsPath) == 0)
383         log_message(3, "Read settings from \"%s\".", settingsPath);
384  
385
386
387 [FILE:375:patches/patch-gcdmaster_SampleDisplay.cc]
388 --- gcdmaster/SampleDisplay.cc.orig     2023-02-03 14:46:06 UTC
389 +++ gcdmaster/SampleDisplay.cc
390 @@ -905,8 +905,6 @@ void SampleDisplay::updateSamples()
391                  rcenter_ - pos1);
392          }
393  
394 -        if (&pixmap_ == 0)
395 -          std::cout << "null !!" << std::endl;
396  
397          if (0 && (gint) di < sampleEndX_) {
398            pos = sampleBuf[len - 1].left() * halfHeight;
399
400
401 [FILE:656:patches/patch-gcdmaster_SoundIF-solaris.cc]
402 --- gcdmaster/SoundIF-solaris.cc.orig   2023-02-03 14:46:06 UTC
403 +++ gcdmaster/SoundIF-solaris.cc
404 @@ -45,6 +45,7 @@
405   * Sound interface for Solaris. Thanks to Tobias Oetiker <oetiker@ee.ethz.ch>.
406   */
407  
408 +#include <sys/types.h>
409  #include <sys/audioio.h>
410  #include <stdio.h>
411  #include <assert.h>
412 @@ -196,7 +197,7 @@ int SoundIFImpl::setupDevice()
413    auinf.play.sample_rate=44100;
414    auinf.play.channels=2;
415    auinf.play.precision=16;
416 -  auinf.play.encoding=AUDIO_ENCODING_LINEAR;
417 +  auinf.play.encoding=AUDIO_ENCODING_SLINEAR_BE;
418  
419    if (ioctl(dspFd_, AUDIO_SETINFO, &auinf) < 0) {
420      log_message(-1, _("Cannot setup audio interface: %s"), strerror(errno));
421
422
423 [FILE:304:patches/patch-trackdb_FormatOgg.cc]
424 --- trackdb/FormatOgg.cc.orig   2021-03-15 09:13:15 UTC
425 +++ trackdb/FormatOgg.cc
426 @@ -84,6 +84,7 @@ FormatSupport::Status FormatOgg::oggInit
427        return FS_WRONG_FORMAT;
428    }
429  
430 +  memset(&outFormat_, 0, sizeof(outFormat_));
431    outFormat_.bits = 16;
432    outFormat_.rate = 44100;
433    outFormat_.channels = 2;
434