diff options
-rw-r--r-- | sysutils/dvd+rw-tools/Makefile | 14 | ||||
-rw-r--r-- | sysutils/dvd+rw-tools/distinfo | 5 | ||||
-rw-r--r-- | sysutils/dvd+rw-tools/files/patch-growisofs.c | 95 | ||||
-rw-r--r-- | sysutils/dvd+rw-tools/files/patch-mp.h | 12 |
4 files changed, 98 insertions, 28 deletions
diff --git a/sysutils/dvd+rw-tools/Makefile b/sysutils/dvd+rw-tools/Makefile index f83eeb8d3d90..50d206e3da81 100644 --- a/sysutils/dvd+rw-tools/Makefile +++ b/sysutils/dvd+rw-tools/Makefile @@ -5,8 +5,7 @@ # $FreeBSD$ PORTNAME= dvd+rw-tools -PORTVERSION= 6.0 -PORTREVISION= 2 +PORTVERSION= 6.1 CATEGORIES= sysutils MASTER_SITES= http://www.franksworld.org/dist/dvd+rw/ \ http://www.pkix.net/mirror/fy.chalmers.se/ \ @@ -17,16 +16,13 @@ COMMENT= DVD burning software RUN_DEPENDS= ${LOCALBASE}/bin/mkisofs:${PORTSDIR}/sysutils/cdrtools -USE_REINPLACE= yes -USE_GMAKE= yes - MAN1= growisofs.1 BIN_FILES= growisofs dvd+rw-format dvd+rw-booktype dvd+rw-mediainfo dvd-ram-control PLIST_FILES= ${BIN_FILES:S|^|bin/|} PORTDOCS= index.html post-patch: - ${REINPLACE_CMD} -E \ + @${REINPLACE_CMD} -E \ -e 's/-D_THREAS_SAFE/-D_THREAD_SAFE/' \ -e 's/-D_THREAD_SAFE/-D_THREAD_SAFE ${PTHREAD_CFLAGS}/' \ -e 's/-pthread/${PTHREAD_LIBS}/' \ @@ -38,9 +34,11 @@ do-install: ${INSTALL_PROGRAM} ${WRKSRC}/${i} ${PREFIX}/bin .endfor ${INSTALL_MAN} ${WRKSRC}/growisofs.1 ${MANPREFIX}/man/man1/ + +post-install: .if !defined(NOPORTDOCS) - ${MKDIR} ${DOCSDIR} - ${INSTALL_MAN} ${WRKSRC}/index.html ${DOCSDIR}/ + @${MKDIR} ${DOCSDIR} + ${INSTALL_MAN} ${WRKSRC}/index.html ${DOCSDIR} .endif .include <bsd.port.mk> diff --git a/sysutils/dvd+rw-tools/distinfo b/sysutils/dvd+rw-tools/distinfo index 5790adea80ef..fa51ae8ecf05 100644 --- a/sysutils/dvd+rw-tools/distinfo +++ b/sysutils/dvd+rw-tools/distinfo @@ -1,3 +1,2 @@ -MD5 (dvd+rw-tools-6.0.tar.gz) = 0c2b8afa027b93b84005ccd1c06fbd54 -SHA256 (dvd+rw-tools-6.0.tar.gz) = 17cdb64c5daa0ee553984a397434a8ed63a25fae5807b39613fec8df382e4729 -SIZE (dvd+rw-tools-6.0.tar.gz) = 118804 +MD5 (dvd+rw-tools-6.1.tar.gz) = d6bad594e55a2e0d7cf76ce452fce399 +SIZE (dvd+rw-tools-6.1.tar.gz) = 121425 diff --git a/sysutils/dvd+rw-tools/files/patch-growisofs.c b/sysutils/dvd+rw-tools/files/patch-growisofs.c index 5b89815d6611..48ca6107791c 100644 --- a/sysutils/dvd+rw-tools/files/patch-growisofs.c +++ b/sysutils/dvd+rw-tools/files/patch-growisofs.c @@ -1,12 +1,85 @@ ---- growisofs.c_old Mon Jan 16 06:09:41 2006 -+++ growisofs.c Mon Jan 16 12:02:04 2006 -@@ -2194,7 +2194,9 @@ - nice(-20); - /* I'd rather do it right after I allocate ring buffer and fire off - * threads, but I'll be running without extra privileges by then:-( */ -+#if !defined(__FreeBSD__) || __FreeBSD__ >= 5 - mlockall(MCL_CURRENT|MCL_FUTURE); -+#endif - #endif +--- growisofs.c_old 2006-01-26 22:16:54.000000000 +0100 ++++ growisofs.c 2006-02-15 00:00:44.000000000 +0100 +@@ -355,12 +355,17 @@ + * - Treat only x73xx OPC errors as fatal; + * - Fix typo in -speed scaling code; + * - permit tracksize to be not divisible by 32KB in DAO mode; ++ * 6.1.1: (by Nicolas Boichat, Bacula project) ++ * - Allow session to cross 4GB boundary regardless of medium type ++ * (don't need to have a DL media) ++ * - Add a -F option (used instead of -M or -Z), which displays next_session ++ * offset and capacity (free space = next_session - capacity). + */ + #define PRINT_VERSION(cmd) do { \ + char *s=strrchr((cmd),'/'); \ + s ? s++ : (s=(cmd)); \ + printf ("* %.*sgrowisofs by <appro@fy.chalmers.se>,"\ +- " version 6.1,\n",(int)(s-(cmd)),(cmd)); \ ++ " version 6.1.1,\n",(int)(s-(cmd)),(cmd)); \ + } while (0) + + #define _LARGEFILE_SOURCE +@@ -2329,6 +2334,18 @@ + else in_device = argv[++i]; + dev_found = 'Z'; + } ++ else if (argv[i][1] == 'F') ++ { if (len > 2) in_device = argv[i]+2; ++ else in_device = argv[++i]; ++ dev_found = 'F'; ++ dry_run = 1; /* NEVER write anything with -F */ ++ } ++ else if (!strncmp(opt,"-free-space",11)) ++ { if (len > 11) in_device = opt+11; ++ else in_device = argv[++i]; ++ dev_found = 'F'; ++ dry_run = 1; /* NEVER write anything with -F */ ++ } + else if (!strcmp(opt,"-poor-man")) + { if (poor_man<0) poor_man = 1; + continue; +@@ -2542,7 +2559,9 @@ + fprintf (stderr," you most likely want to use -Z option.\n"), + exit (FATAL_START(errno)); - mkisofs_argv = malloc ((argc+3)*sizeof(char *)); +- if (dev_found == 'M') ++ if ((dev_found == 'M') || ++ ((dev_found == 'F') && !(mmc_profile&0x10000)) && (saved_descriptors[0].type[0] || saved_descriptors[0].type[1] || saved_descriptors[0].type[2])) ++ /* -F : The medium is not blank, there is a fs on it (the_buffer[0,1 or 2] != 0), so compute next_session. */ + { if (memcmp (saved_descriptors[0].type,"\1CD001",6)) + fprintf (stderr,":-( %s doesn't look like isofs...\n", + in_device), exit(FATAL_START(EMEDIUMTYPE)); +@@ -2565,7 +2584,7 @@ + exit(FATAL_START(EINVAL)); + } + else if (next_session > (0x200000-0x5000)) /* 4GB/2K-40MB/2K */ +- if ((mmc_profile&0xFFFF)!=0x2B || !no_4gb_check) ++ if (!no_4gb_check) + fprintf (stderr,":-( next session would cross 4GB " + "boundary, aborting...\n"), + exit (FATAL_START(ENOSPC)); +@@ -2608,7 +2627,7 @@ + exit (FATAL_START(EINVAL)); + + if (imgfd<0) +- { if (mkisofs_argc==1) ++ { if ((mkisofs_argc==1) && (dev_found != 'F')) + fprintf (stderr,"%s: no mkisofs options specified, " + "aborting...\n",argv[0]), + exit (FATAL_START(EINVAL)); +@@ -2880,6 +2899,15 @@ + } + } + ++ if (dev_found == 'F') { ++ off64_t capacity = 0; ++ printf("next_session=%lld\n", next_session*CD_BLOCK); ++ if (ioctl_handle!=INVALID_HANDLE) ++ capacity = get_capacity (ioctl_handle); ++ printf("capacity=%lld\n", capacity); ++ exit(0); ++ } ++ + if (imgfd>=0) + { quiet--; + if (builtin_dd (imgfd,out_fd,next_session*CD_BLOCK) < 0) diff --git a/sysutils/dvd+rw-tools/files/patch-mp.h b/sysutils/dvd+rw-tools/files/patch-mp.h index c9e4569be9f3..d9f5dad46cc9 100644 --- a/sysutils/dvd+rw-tools/files/patch-mp.h +++ b/sysutils/dvd+rw-tools/files/patch-mp.h @@ -1,12 +1,12 @@ ---- mp.h.orig Mon Jan 16 11:34:56 2006 -+++ mp.h Thu Jan 19 20:22:30 2006 -@@ -39,7 +39,9 @@ - pthread_attr_t attr; +--- mp.h.orig Wed May 10 16:01:28 2006 ++++ mp.h Wed May 10 16:06:04 2006 +@@ -40,7 +40,9 @@ if (pthread_attr_init(&attr)==0 && -+#if !defined(__FreeBSD__) || __FreeBSD__ >= 5 + pthread_attr_setstacksize(&attr,64*1024)==0 && ++#if !defined(__FreeBSD__) || __FreeBSD_version >= 500000 pthread_attr_setscope(&attr,PTHREAD_SCOPE_SYSTEM)==0 && -+#endif /* FreeBSD 4 does not support PTHREAD_SCOPE_SYSTEM */ ++#endif /* FreeBSD 4 does not support PTHREAD_SCOPE_SYSTEM */ pthread_create(&h,&attr,(void *(*)(void *))func,arg)==0 ) return (void *)h; |