aboutsummaryrefslogtreecommitdiff
path: root/sysutils/cdrtools
diff options
context:
space:
mode:
authorAlexander Leidinger <netchild@FreeBSD.org>2004-06-02 17:16:04 +0000
committerAlexander Leidinger <netchild@FreeBSD.org>2004-06-02 17:16:04 +0000
commit2a753271f96ac9ebd1abe42b4b5acbe61d949a6f (patch)
tree86a6555435710cc8faa13f6bdb8f8b1dbf984b17 /sysutils/cdrtools
parentdd57a2e474c1931b11d8b69072f86139bae22eac (diff)
downloadports-2a753271f96ac9ebd1abe42b4b5acbe61d949a6f.tar.gz
ports-2a753271f96ac9ebd1abe42b4b5acbe61d949a6f.zip
- Add a workaround for the problem that cdda2wav doesn't use a page
aligned buffer for the SCSI transfers in paranoia mode. [1] - Stop the artificial separation of mkisofs from cdrtools and merge sysutils/mkisofs into sysutils/cdrtools which brings us in line with other distributions. The separation of mkisofs caused quite some confusion among users as well as committers about why its PORTVERSION was different from the cdrtools port, how to install it, etc. PR: 63775 [1] Submitted by: marius
Notes
Notes: svn path=/head/; revision=110679
Diffstat (limited to 'sysutils/cdrtools')
-rw-r--r--sysutils/cdrtools/Makefile78
-rw-r--r--sysutils/cdrtools/files/patch-README.rscsi7
-rw-r--r--sysutils/cdrtools/files/patch-cdda2wav::interface.c30
-rw-r--r--sysutils/cdrtools/pkg-descr30
-rw-r--r--sysutils/cdrtools/pkg-descr.mkisofs21
-rw-r--r--sysutils/cdrtools/pkg-plist23
-rw-r--r--sysutils/cdrtools/pkg-plist.mkisofs23
7 files changed, 104 insertions, 108 deletions
diff --git a/sysutils/cdrtools/Makefile b/sysutils/cdrtools/Makefile
index d85d5973bfa1..69e3a9c14178 100644
--- a/sysutils/cdrtools/Makefile
+++ b/sysutils/cdrtools/Makefile
@@ -5,49 +5,41 @@
# $FreeBSD$
#
-PORTNAME?= cdrtools
-PORTVERSION?= 2.0.3
-PORTREVISION?= 2
-CATEGORIES?= sysutils audio
+PORTNAME= cdrtools
+PORTVERSION= 2.0.3
+PORTREVISION= 3
+CATEGORIES= sysutils audio
MASTER_SITES= ftp://ftp.berlios.de/pub/cdrecord/ \
ftp://ftp.cs.tu-berlin.de/pub/misc/cdrecord/ \
ftp://ftp.gwdg.de/pub/linux/misc/cdrecord/
DISTNAME= cdrtools-2.00.3
-MAINTAINER?= marius@FreeBSD.org
-COMMENT?= Cdrecord and other programs to extract and record CDs/CD-R[W]s
+MAINTAINER= marius@FreeBSD.org
+COMMENT= CD/CD-R[W] and ISO-9660 image creation and extraction tools
-CONFLICTS?= cdrtools-devel-*
+CONFLICTS= cdrtools-devel-*
-.if defined(MKISOFS)
+MAN1= cdda2wav.1 cdrecord.1 readcd.1 scgcheck.1
MAN8= isoinfo.8 mkisofs.8
MLINKS= isoinfo.8 devdump.8 isoinfo.8 isodump.8 isoinfo.8 isovfy.8 \
mkisofs.8 mkhybrid.8
-DOCS= README README.compression README.eltorito README.graft_dirs \
- README.hfs_boot README.hfs_magic README.hide README.joliet \
- README.macosx README.mkhybrid README.prep_boot README.rootinfo \
- README.session README.sort README.sparcboot
-.else
-MAN1= cdda2wav.1 cdrecord.1 readcd.1 scgcheck.1
DOCS= README README.ATAPI README.DiskT@2 README.FreeBSD README.WORM \
README.audio README.cdplus README.cdrw README.cdtext \
README.copy README.mkisofs README.multi README.raw \
README.rscsi README.sony README.verify
CDDA2WAVDOCS= FAQ Frontends HOWTOUSE OtherProgs README THANKS TODO
-.endif
+MKISOFSDOCS= README README.compression README.eltorito README.graft_dirs \
+ README.hfs_boot README.hfs_magic README.hide README.joliet \
+ README.macosx README.mkhybrid README.prep_boot README.rootinfo \
+ README.session README.sort README.sparcboot
USE_GMAKE= yes
USE_REINPLACE= yes
MAKE_ENV= CCOM=${CC} LANG=C
#CFLAGS+= -DSOURCE_MODIFIED
+PKGMESSAGE= ${WRKDIR}/pkg-message
CDRTLSTARGET= ${ARCH}-freebsd-${CC}
-.if defined(MKISOFS)
-DOCSSRC= ${WRKSRC}/${PORTNAME}
-PKGMESSAGE= ""
-.else
-DOCSSRC= ${WRKSRC}
-PKGMESSAGE= ${WRKDIR}/pkg-message
.if defined(WITH_RSCSI)
PKGINSTALL= ${PKGDIR}/pkg-install.rscsi
PLIST_SUB= RSCSI=""
@@ -55,12 +47,11 @@ PKGNAMESUFFIX= -rscsi
.else
PLIST_SUB= RSCSI="@comment "
.endif
-.endif
.include <bsd.port.pre.mk>
pre-everything::
-.if !defined(MKISOFS) && !defined(WITH_RSCSI)
+.if !defined(WITH_RSCSI)
@${ECHO_MSG} ""
@${ECHO_MSG} "You may use the following build option(s):"
@${ECHO_MSG} ""
@@ -83,15 +74,6 @@ post-extract:
.endif
post-patch:
-.if defined(MKISOFS)
-.for i in 45libdeflt 45libedc 45libparanoia 55cdda2wav 55cdrecord 55readcd \
- 55rscsi 55scgcheck
- @${RM} ${WRKSRC}/TARGETS/${i}
-.endfor
-.else
-.for i in 45libfile 45libhfs_iso 45libunls 55mkisofs 55mkisofs!@!diag
- @${RM} ${WRKSRC}/TARGETS/${i}
-.endfor
.if !defined(WITH_RSCSI)
@${RM} ${WRKSRC}/TARGETS/55rscsi
.endif
@@ -108,25 +90,20 @@ post-patch:
# ${WRKSRC}/cdrecord/cdrecord.c
@${SED} 's|%%PREFIX%%|${PREFIX}|g' ${PKGDIR}/pkg-message > \
${WRKDIR}/pkg-message
-.endif
do-install:
-.if defined(MKISOFS)
- @${INSTALL_PROGRAM} ${WRKSRC}/mkisofs/OBJ/${CDRTLSTARGET}/mkisofs \
+ @${INSTALL_PROGRAM} ${WRKSRC}/cdda2wav/OBJ/${CDRTLSTARGET}/cdda2wav \
+ ${PREFIX}/bin
+ @${LN} -sf cdda2wav ${PREFIX}/bin/list_audio_tracks
+ @${INSTALL_PROGRAM} ${WRKSRC}/cdrecord/OBJ/${CDRTLSTARGET}/cdrecord \
${PREFIX}/bin
- @${LN} -sf mkisofs ${PREFIX}/bin/mkhybrid
.for i in devdump isodebug isodump isoinfo isovfy
@${INSTALL_PROGRAM} ${WRKSRC}/mkisofs/diag/OBJ/${CDRTLSTARGET}/${i} \
${PREFIX}/bin
.endfor
- @${INSTALL_MAN} ${WRKSRC}/mkisofs/mkisofs.8 ${PREFIX}/man/man8
- @${INSTALL_MAN} ${WRKSRC}/mkisofs/diag/isoinfo.8 ${PREFIX}/man/man8
-.else
- @${INSTALL_PROGRAM} ${WRKSRC}/cdda2wav/OBJ/${CDRTLSTARGET}/cdda2wav \
- ${PREFIX}/bin
- @${LN} -sf cdda2wav ${PREFIX}/bin/list_audio_tracks
- @${INSTALL_PROGRAM} ${WRKSRC}/cdrecord/OBJ/${CDRTLSTARGET}/cdrecord \
+ @${INSTALL_PROGRAM} ${WRKSRC}/mkisofs/OBJ/${CDRTLSTARGET}/mkisofs \
${PREFIX}/bin
+ @${LN} -sf mkisofs ${PREFIX}/bin/mkhybrid
@${INSTALL_PROGRAM} ${WRKSRC}/readcd/OBJ/${CDRTLSTARGET}/readcd \
${PREFIX}/bin
.if defined(WITH_RSCSI)
@@ -140,6 +117,8 @@ do-install:
@${INSTALL_MAN} ${WRKSRC}/cdrecord/cdrecord.1 ${PREFIX}/man/man1
@${INSTALL_MAN} ${WRKSRC}/readcd/readcd.1 ${PREFIX}/man/man1
@${INSTALL_MAN} ${WRKSRC}/scgcheck/scgcheck.1 ${PREFIX}/man/man1
+ @${INSTALL_MAN} ${WRKSRC}/mkisofs/mkisofs.8 ${PREFIX}/man/man8
+ @${INSTALL_MAN} ${WRKSRC}/mkisofs/diag/isoinfo.8 ${PREFIX}/man/man8
@${INSTALL_DATA} ${WRKSRC}/cdrecord/cdrecord.dfl \
${PREFIX}/etc/cdrecord.sample
.if !exists(${PREFIX}/etc/cdrecord)
@@ -151,23 +130,24 @@ do-install:
@${INSTALL_DATA} ${WRKSRC}/rscsi/rscsi.dfl ${PREFIX}/etc/rscsi
.endif
.endif
-.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
.for i in ${DOCS}
- @${INSTALL_DATA} ${DOCSSRC}/${i} ${DOCSDIR}
+ @${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR}
.endfor
-.if !defined(MKISOFS)
@${MKDIR} ${DOCSDIR}/cdda2wav
.for i in ${CDDA2WAVDOCS}
- @${INSTALL_DATA} ${DOCSSRC}/cdda2wav/${i} ${DOCSDIR}/cdda2wav
+ @${INSTALL_DATA} ${WRKSRC}/cdda2wav/${i} ${DOCSDIR}/cdda2wav
+.endfor
+ @${MKDIR} ${DOCSDIR}/mkisofs
+.for i in ${MKISOFSDOCS}
+ @${INSTALL_DATA} ${WRKSRC}/mkisofs/${i} ${DOCSDIR}/mkisofs
.endfor
-.endif
.endif
post-install:
-@if [ -f ${PKGINSTALL} ]; then ${SETENV} PKG_PREFIX=${PREFIX} \
${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL; fi
- @if [ -f ${WRKDIR}/pkg-message ]; then ${CAT} ${WRKDIR}/pkg-message; fi
+ @${CAT} ${WRKDIR}/pkg-message
.include <bsd.port.post.mk>
diff --git a/sysutils/cdrtools/files/patch-README.rscsi b/sysutils/cdrtools/files/patch-README.rscsi
index abad7914c1f4..35db4dd7a694 100644
--- a/sysutils/cdrtools/files/patch-README.rscsi
+++ b/sysutils/cdrtools/files/patch-README.rscsi
@@ -1,6 +1,11 @@
--- README.rscsi.orig Sun Aug 17 11:31:39 2003
+++ README.rscsi Sun Aug 17 14:38:57 2003
-@@ -18,24 +18,21 @@
+@@ -14,28 +14,25 @@
+
+ - Create one or more special user(s) that have /opt/schily/sbin/rscsi
+ as login shell with their own home directory.
+- You then may create special .rhost files for each user.
++ You then may create special .rhosts files for each user.
NOTE: In this case, rscsi must be installed suid root.
**** This is the preferred method ****
diff --git a/sysutils/cdrtools/files/patch-cdda2wav::interface.c b/sysutils/cdrtools/files/patch-cdda2wav::interface.c
index ba5d9bfba731..0e0f7f7c46ab 100644
--- a/sysutils/cdrtools/files/patch-cdda2wav::interface.c
+++ b/sysutils/cdrtools/files/patch-cdda2wav::interface.c
@@ -17,7 +17,33 @@
if (!S_ISCHR(statstruct->st_mode)) {
fprintf(stderr, "%s is not a char device\n",pdev_name);
exit(SYNTAX_ERROR);
-@@ -593,9 +601,6 @@
+@@ -555,8 +563,25 @@
+ }
+ dontneedgroup();
+ dontneedroot();
++#if defined (__FreeBSD__)
++ /*
++ * i_read_c_block(), used by paranoia_read_limited() for reading the
++ * data from the CD, doesn't use a page aligned buffer as required by
++ * FreeBSD for SCSI transfers (well, most OS do). Probably this should
++ * be dealt with in cdda_read() (called by i_read_c_block() with the
++ * unaligned buffer and in turn calls ReadCdRom() to do the actual read)
++ * but it seems like overkill to add yet another buffer (would make it
++ * 3 or so from do_read() to ReadCdRom() alone). Instead, limit the
++ * transfer size via the maximum for the sectors to read at once to a
++ * value that lets the data fit into a page (for FreeBSD the code below
++ * would set the maximum sectors to 27).
++ */
++ if (global.nsectors > 26)
++ global.nsectors = 26;
++#else
+ if (global.nsectors > (unsigned) scg_bufsize(scgp, 3*1024*1024)/CD_FRAMESIZE_RAW)
+ global.nsectors = scg_bufsize(scgp, 3*1024*1024)/CD_FRAMESIZE_RAW;
++#endif
+ if (global.overlap >= global.nsectors)
+ global.overlap = global.nsectors-1;
+
+@@ -593,9 +618,6 @@
exit(RACE_ERROR);
}
#endif
@@ -27,7 +53,7 @@
}
return retval;
}
-@@ -888,6 +893,7 @@
+@@ -888,6 +910,7 @@
FatalError("No memory for SCSI structure.\n");
}
scgp->silent = 0;
diff --git a/sysutils/cdrtools/pkg-descr b/sysutils/cdrtools/pkg-descr
index ca090d58ee54..0218a4984788 100644
--- a/sysutils/cdrtools/pkg-descr
+++ b/sysutils/cdrtools/pkg-descr
@@ -1,15 +1,21 @@
-This package contains the following software:
+The cdrtools software includes tools to create and/or extract
+ISO-9660 filesystems, verify their integrity, and write them to
+disc.
-- cdda2wav (an digital CD audio extraction program)
-
-- cdrecord (a CD recording program)
-
-- readcd (a stripped down version of scgskeleton)
- may be used to read data CD's, to write to DVD-RAM
- and to copy Solaris boot CD's
-
-- scgcheck (checks and validates the ABI of libscg)
-
-- rscsi (daemon providing access to local SCSI-devices over the network)
+This package contains the following programs:
+- cdda2wav (an digital CD audio extraction program)
+- cdrecord (a CD-R[W] recording program)
+- devdump (dump a device or file in hex)
+- isodebug (show debug info contained in an ISO-9660 image)
+- isodump (dump a device or file based on ISO-9660)
+- isoinfo (analyze or list an ISO-9660 image)
+- isovfy (verify an ISO-9660 image)
+- mkisofs (an ISO-9660 filesystem image creator)
+- mkhybrid (an ISO-9660/HFS filesystem image creator)
+ Link to mkisofs.
+- readcd (a data CD reading and recording program)
+ May be used to to write to DVD-RAM and to copy Solaris boot CD's.
+- scgcheck (checks and validates the ABI of libscg)
+- rscsi (daemon providing access to local SCSI-devices over the network)
WWW: http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html
diff --git a/sysutils/cdrtools/pkg-descr.mkisofs b/sysutils/cdrtools/pkg-descr.mkisofs
deleted file mode 100644
index dd8933f67583..000000000000
--- a/sysutils/cdrtools/pkg-descr.mkisofs
+++ /dev/null
@@ -1,21 +0,0 @@
-This package contains the following software:
-
-- mkisofs (an ISO-9660 filesystem image creator)
- It takes a snapshot of a given directory tree, and generates a binary
- image which will correspond to an iso9660 filesystem when written to
- a block device.
-
-- mkhybrid (an ISO-9660/HFS filesystem image creator)
- Link to mkisofs
-
-- several diagnostic programs for ISO-9660
-
- - devdump dump a device or file in hex
-
- - isodump dump a device or file based on ISO-9660
-
- - isoinfo analyze or list an ISO-9660 image
-
- - isovfy verify an ISO-9660 image
-
-WWW: http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html
diff --git a/sysutils/cdrtools/pkg-plist b/sysutils/cdrtools/pkg-plist
index 85b9084df7e0..d323c9bb2cc0 100644
--- a/sysutils/cdrtools/pkg-plist
+++ b/sysutils/cdrtools/pkg-plist
@@ -1,6 +1,13 @@
bin/cdda2wav
bin/cdrecord
+bin/devdump
+bin/isodebug
+bin/isodump
+bin/isoinfo
+bin/isovfy
bin/list_audio_tracks
+bin/mkhybrid
+bin/mkisofs
bin/readcd
bin/scgcheck
%%RSCSI%%sbin/rscsi
@@ -37,4 +44,20 @@ etc/cdrecord.sample
%%PORTDOCS%%%%DOCSDIR%%/cdda2wav/THANKS
%%PORTDOCS%%%%DOCSDIR%%/cdda2wav/TODO
%%PORTDOCS%%@dirrm %%DOCSDIR%%/cdda2wav
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.compression
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.eltorito
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.graft_dirs
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.hfs_boot
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.hfs_magic
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.hide
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.joliet
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.macosx
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.mkhybrid
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.prep_boot
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.rootinfo
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.session
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.sort
+%%PORTDOCS%%%%DOCSDIR%%/mkisofs/README.sparcboot
+%%PORTDOCS%%@dirrm %%DOCSDIR%%/mkisofs
%%PORTDOCS%%@dirrm %%DOCSDIR%%
diff --git a/sysutils/cdrtools/pkg-plist.mkisofs b/sysutils/cdrtools/pkg-plist.mkisofs
deleted file mode 100644
index 6ceb748b1bb9..000000000000
--- a/sysutils/cdrtools/pkg-plist.mkisofs
+++ /dev/null
@@ -1,23 +0,0 @@
-bin/devdump
-bin/isodebug
-bin/isodump
-bin/isoinfo
-bin/isovfy
-bin/mkhybrid
-bin/mkisofs
-%%PORTDOCS%%%%DOCSDIR%%/README
-%%PORTDOCS%%%%DOCSDIR%%/README.compression
-%%PORTDOCS%%%%DOCSDIR%%/README.eltorito
-%%PORTDOCS%%%%DOCSDIR%%/README.graft_dirs
-%%PORTDOCS%%%%DOCSDIR%%/README.hfs_boot
-%%PORTDOCS%%%%DOCSDIR%%/README.hfs_magic
-%%PORTDOCS%%%%DOCSDIR%%/README.hide
-%%PORTDOCS%%%%DOCSDIR%%/README.joliet
-%%PORTDOCS%%%%DOCSDIR%%/README.macosx
-%%PORTDOCS%%%%DOCSDIR%%/README.mkhybrid
-%%PORTDOCS%%%%DOCSDIR%%/README.prep_boot
-%%PORTDOCS%%%%DOCSDIR%%/README.rootinfo
-%%PORTDOCS%%%%DOCSDIR%%/README.session
-%%PORTDOCS%%%%DOCSDIR%%/README.sort
-%%PORTDOCS%%%%DOCSDIR%%/README.sparcboot
-%%PORTDOCS%%@dirrm %%DOCSDIR%%