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