diff -ruN cdrtools-devel-alt/Makefile cdrtools-devel/Makefile --- cdrtools-devel-alt/Makefile Mon Jan 16 13:27:46 2006 +++ cdrtools-devel/Makefile Fri Feb 17 17:21:18 2006 @@ -6,7 +6,7 @@ # PORTNAME= cdrtools -PORTVERSION= 2.01.01a04 +PORTVERSION= 2.01.01a07 PORTEPOCH= 1 CATEGORIES= sysutils audio MASTER_SITES= ftp://ftp.berlios.de/pub/cdrecord/alpha/ \ diff -ruN cdrtools-devel-alt/distinfo cdrtools-devel/distinfo --- cdrtools-devel-alt/distinfo Mon Jan 16 13:27:46 2006 +++ cdrtools-devel/distinfo Fri Feb 17 17:23:59 2006 @@ -1,3 +1,3 @@ -MD5 (cdrtools-2.01.01a04.tar.bz2) = 5736751b64dffc1d736c9851ced33fc1 -SHA256 (cdrtools-2.01.01a04.tar.bz2) = 7cf8088b090969ca11192aadbf799897683ae1abe6112caa4d3e71552a8a63e4 -SIZE (cdrtools-2.01.01a04.tar.bz2) = 1432078 +MD5 (cdrtools-2.01.01a07.tar.bz2) = df3acee3505c1305e9f6de104d513460 +SHA256 (cdrtools-2.01.01a07.tar.bz2) = cdc502320924c55ad884590844bb9b88bf60357fae8954bb7985777df552f8f5 +SIZE (cdrtools-2.01.01a07.tar.bz2) = 1441566 diff -ruN cdrtools-devel-alt/files/patch-cdda2wav::interface.c cdrtools-devel/files/patch-cdda2wav::interface.c --- cdrtools-devel-alt/files/patch-cdda2wav::interface.c Wed Aug 11 22:38:53 2004 +++ cdrtools-devel/files/patch-cdda2wav::interface.c Fri Feb 17 17:44:25 2006 @@ -1,19 +1,15 @@ ---- cdda2wav/interface.c Mon Dec 29 11:28:09 2003 -+++ cdda2wav/interface.c Sun Jan 18 01:35:50 2004 -@@ -444,7 +444,15 @@ - default: /* for example ATAPI cds */ - #else - #if defined (__FreeBSD__) -- case 117: -+#if __FreeBSD_version >= 501113 -+ case 4: /* GEOM */ -+ if (memcmp(pdev_name, "/dev/acd", sizeof("/dev/acd") - 1) != 0) { -+ fprintf(stderr, "%s is not an ATAPI CDROM device\n", pdev_name); -+ exit(SYNTAX_ERROR); -+ } -+ /* FALLTHROUGH */ -+#endif -+ case 117: /* pre-GEOM atapi cd */ +--- cdda2wav/interface.c.orig Fri Feb 17 17:35:26 2006 ++++ cdda2wav/interface.c Fri Feb 17 17:41:28 2006 +@@ -454,7 +454,11 @@ + #if defined (__FreeBSD__) || defined(__DragonFly__) + #if __FreeBSD_version >= 501113 + case 4: /* GEOM */ +- /* FALLTHROUGH */ ++ if (memcmp(pdev_name, "/dev/acd", sizeof("/dev/acd") - 1) != 0) { ++ fprintf(stderr, "%s is not an ATAPI CDROM device\n", pdev_name); ++ exit(SYNTAX_ERROR); ++ } ++ /* FALLTHROUGH */ + #endif + case 117: /* pre-GEOM atapi cd */ if (!S_ISCHR(statstruct->st_mode)) { - fprintf(stderr, "%s is not a char device\n",pdev_name); - exit(SYNTAX_ERROR); diff -ruN cdrtools-devel-alt/files/patch-cdda2wav::ioctl.c cdrtools-devel/files/patch-cdda2wav::ioctl.c --- cdrtools-devel-alt/files/patch-cdda2wav::ioctl.c Mon Apr 12 15:06:46 2004 +++ cdrtools-devel/files/patch-cdda2wav::ioctl.c Thu Jan 1 01:00:00 1970 @@ -1,88 +0,0 @@ ---- cdda2wav/ioctl.c Sat Dec 27 17:29:28 2003 -+++ cdda2wav/ioctl.c Sun Jan 18 01:36:36 2004 -@@ -59,10 +59,14 @@ - #include - - #if defined (HAVE_IOCTL_INTERFACE) --#if !defined sun && !defined __sun -+#if !defined(sun) && !defined(__sun) && !(__FreeBSD_version >= 501112) - static struct cdrom_read_audio arg; - #endif - -+#if defined(__FreeBSD__) && __FreeBSD_version >= 400014 -+static unsigned sector_size = CD_FRAMESIZE; -+#endif -+ - static int err; - - static void EnableCdda_cooked __PR((SCSI *scgp, int fAudioMode, unsigned uSectorsize)); -@@ -72,13 +76,23 @@ - int fAudioMode; - unsigned uSectorsize; - { -+#if defined(__FreeBSD__) && __FreeBSD_version >= 400014 -+ if (scgp && scgp->verbose) -+ fprintf(stderr, "EnableCdda_cooked (CDRIOCSETBLOCKSIZE)...\n"); -+ -+ if (fAudioMode) { -+ if (ioctl(global.cooked_fd, CDRIOCGETBLOCKSIZE, §or_size) ==-1) -+ sector_size = CD_FRAMESIZE; -+ ioctl(global.cooked_fd, CDRIOCSETBLOCKSIZE, &uSectorsize); -+ } else -+ ioctl(global.cooked_fd, CDRIOCSETBLOCKSIZE, §or_size); -+#elif defined CDIOCSETCDDA - if (scgp && scgp->verbose) { - fprintf(stderr, "EnableCdda_cooked (CDIOCSETCDDA)...\n"); - if (uSectorsize != CD_FRAMESIZE_RAW) - fprintf(stderr, "non audio sector size is ignored.\n"); - } - --#if defined CDIOCSETCDDA - ioctl(global.cooked_fd, CDIOCSETCDDA, &fAudioMode); - #else - fprintf(stderr, "EnableCdda_cooked (CDIOCSETCDDA) is not available...\n"); -@@ -197,6 +211,10 @@ - /* trash the cache */ - - #if defined __FreeBSD__ -+#if __FreeBSD_version >= 501112 -+ pread(global.cooked_fd, (void *) &p[0], 3*CD_FRAMESIZE_RAW, -+ find_an_off_sector(lSector, SectorBurstVal)*CD_FRAMESIZE_RAW); -+#else - static struct cdrom_read_audio arg2; - - arg2.address.lba = find_an_off_sector(lSector, SectorBurstVal); -@@ -206,6 +224,7 @@ - - ioctl(global.cooked_fd, CDROMREADAUDIO, &arg2); - #endif -+#endif - #if defined __linux__ - static struct cdrom_read_audio arg2; - -@@ -267,6 +286,17 @@ - - /* read 2352 bytes audio data */ - #if defined __FreeBSD__ -+#if __FreeBSD_version >= 501112 -+ if (x && x->verbose) { -+ fprintf(stderr, "ReadCdRom_cooked (pread)...\n"); -+ } -+ -+ do { -+ err = 0; -+ if (pread(global.cooked_fd, (void *) &p[0], SectorBurstVal*CD_FRAMESIZE_RAW, -+ lSector*CD_FRAMESIZE_RAW) == -1) -+ err = -1; -+#else - arg.address.lba = lSector; - arg.addr_format = CDROM_LBA; - arg.nframes = SectorBurstVal; -@@ -278,6 +308,7 @@ - - do { - err = ioctl(global.cooked_fd, CDROMREADAUDIO, &arg); -+#endif - #endif - #if defined __linux__ - arg.addr.lba = lSector; diff -ruN cdrtools-devel-alt/files/patch-cdda2wav::mycdrom.h cdrtools-devel/files/patch-cdda2wav::mycdrom.h --- cdrtools-devel-alt/files/patch-cdda2wav::mycdrom.h Mon Apr 12 15:06:46 2004 +++ cdrtools-devel/files/patch-cdda2wav::mycdrom.h Thu Jan 1 01:00:00 1970 @@ -1,24 +0,0 @@ ---- cdda2wav/mycdrom.h Wed Sep 4 14:07:16 2002 -+++ cdda2wav/mycdrom.h Sat Jan 17 18:52:08 2004 -@@ -4,6 +4,12 @@ - #else - # if defined HAVE_SYS_CDIO_H - # include -+# if defined(__FreeBSD__) && __FreeBSD__ >= 2 -+# include -+# if __FreeBSD_version >= 400014 -+# include -+# endif -+# endif - - # if (defined (__sun) && defined (SVR4)) - # if 0 -@@ -53,7 +59,7 @@ - # endif /* if 0 */ - # else /* not Sun SVR4 */ - # if defined __FreeBSD__ || defined __NetBSD__ || defined __OpenBSD__ --# if !defined CDIOCREADAUDIO -+# if (!defined(__FreeBSD__) && !defined(CDIOCREADAUDIO)) || __FreeBSD_version < 228000 - # undef HAVE_IOCTL_INTERFACE - # else - diff -ruN cdrtools-devel-alt/files/patch-readcd::readcd.c cdrtools-devel/files/patch-readcd::readcd.c --- cdrtools-devel-alt/files/patch-readcd::readcd.c Sun Jan 15 17:32:55 2006 +++ cdrtools-devel/files/patch-readcd::readcd.c Thu Jan 1 01:00:00 1970 @@ -1,31 +0,0 @@ ---- readcd/readcd.c.original Sun Jan 15 17:14:03 2006 -+++ readcd/readcd.c Sun Jan 15 17:24:47 2006 -@@ -370,6 +370,8 @@ - exit(err); - } - } else { -+ char errstr[80]; -+ - if (scsibus == -1 && target >= 0 && lun >= 0) - scsibus = 0; - -@@ -378,8 +380,17 @@ - scgp->kdebug = kdebug; - - scg_settarget(scgp, scsibus, target, lun); -- if (scg__open(scgp, NULL) <= 0) -- comerr("Cannot open SCSI driver.\n"); -+ -+ scgp = scg_open(dev, errstr, sizeof(errstr), 0, 0); -+ -+ if (scgp == NULL) { -+ errmsg("%s%sCannot open SCSI driver.\n", errstr, errstr[0]?". ":""); -+ errmsgno(EX_BAD, "For possible targets try 'readcd -scanbus'.%s\n", -+ geteuid() ? " Make sure you are root.":""); -+ errmsgno(EX_BAD, "For possible transport specifiers try 'readcd dev=help'.\n"); -+ exit(EX_BAD); -+ } -+ - } - scgp->silent = silent; - scgp->verbose = verbose;