aboutsummaryrefslogtreecommitdiffstats
path: root/sysutils/cdrdao
diff options
context:
space:
mode:
authormarius <marius@FreeBSD.org>2005-08-13 00:20:44 +0800
committermarius <marius@FreeBSD.org>2005-08-13 00:20:44 +0800
commit95931c2d4ab6d0d8f5dfc31224164c305b0ab4bc (patch)
tree8fc949080724359cc210322eba00614c3228bdaa /sysutils/cdrdao
parentd6fc6ec838141a76209c2309dc9202b73ed7052d (diff)
downloadfreebsd-ports-gnome-95931c2d4ab6d0d8f5dfc31224164c305b0ab4bc.tar.gz
freebsd-ports-gnome-95931c2d4ab6d0d8f5dfc31224164c305b0ab4bc.tar.zst
freebsd-ports-gnome-95931c2d4ab6d0d8f5dfc31224164c305b0ab4bc.zip
- Update to 1.2.0. [1]
<snip> Cdrdao changes: o SECURITY FIX: cdrdao now gives up its root privileges after setting up real-time scheduling, as well as before saving settings through the --save option. This fixes a potential local root exploit when cdrdao is installed with the +s chmod flag. Using --save now also forces an early exit after the settings are saved. o Added MP3 and Ogg Vorbis file support (through respectively the libmad and libvorbis libraries). cdrdao will decode the MP3 and Ogg files into temporary WAV files that will be deleted upon exit (unless the new option --keep is used). The directory used to store those temporary WAV files can be specified with the --tmpdir option (default is /tmp). o Improved native CUE file support: replaced old incomplete existing parser with the one from Matthias Czapla's excellent cue2toc. Added support for cutting binary files. o Added --rspeed option to manually set the device reading speed. Be warned not all devices support this. o Packaged scsilib library upgraded from cdrtools 2.01 (previously was from 2.01a31). o Added --no-mode2-mixed option. Don't read a MODE2 disk as MODE2_FORM_MIXED, only read MODE2_FORM1 or MODE2_FORM2 (Matthieu Castet). o Added help for little-known drive-info command. GCDMaster changes: o MP3 and Ogg Vorbis support: you can drag and drop .mp3, .m3u and .ogg files from Nautilus into the sample display window. o Switched to gtkmm24 API. Improved file browsers. o CUE files support. o Sound output now uses libao library. o Added 'Select All' item in menu. o Added 'Eject' button to progress dialog. o Bug fixes (sample selection weirdness, couldn't close window during play, problems with gcdmaster command-line argument, crashes with multiple project windows, drive status not reported correctly). <snip> Note that the FreeBSD ports doesn't install cdrdao setuid root so you are not vulnerable by default. - Fix building on FreeBSD 7. - Turn on the usage of mlockall(2) again as it no longer causes negative side effects on FreeBSD >= 502113. Requested by: will [1] Approved by: portmgr (linimon) Security: http://vuxml.freebsd.org/d51a7e6e-c546-11d9-9aed-000e0c2e438a.html
Diffstat (limited to 'sysutils/cdrdao')
-rw-r--r--sysutils/cdrdao/Makefile55
-rw-r--r--sysutils/cdrdao/distinfo4
-rw-r--r--sysutils/cdrdao/files/patch-configure29
-rw-r--r--sysutils/cdrdao/files/patch-dao::dao.cc29
-rw-r--r--sysutils/cdrdao/files/patch-scsilib::RULES::i386-freebsd-cc.rul9
-rw-r--r--sysutils/cdrdao/files/patch-scsilib::RULES::rules.cnf12
-rw-r--r--sysutils/cdrdao/files/patch-xdao::Project.h28
-rw-r--r--sysutils/cdrdao/pkg-plist2
8 files changed, 83 insertions, 85 deletions
diff --git a/sysutils/cdrdao/Makefile b/sysutils/cdrdao/Makefile
index d4a11ed552f9..d763a17af9e4 100644
--- a/sysutils/cdrdao/Makefile
+++ b/sysutils/cdrdao/Makefile
@@ -6,7 +6,7 @@
#
PORTNAME?= cdrdao
-PORTVERSION= 1.1.9
+PORTVERSION= 1.2.0
PORTREVISION?= 0
CATEGORIES= sysutils audio
MASTER_SITES= ${MASTER_SITE_SOURCEFORGE_EXTENDED}
@@ -23,16 +23,22 @@ USE_GMAKE= yes
USE_REINPLACE= yes
GNU_CONFIGURE= yes
+MP3OGG_LIB_DEPENDS= ao.3:${PORTSDIR}/audio/libao \
+ mad.2:${PORTSDIR}/audio/libmad \
+ vorbis.3:${PORTSDIR}/audio/libvorbis
+
.if ${PORTNAME} == "gcdmaster"
-USE_GNOME= gnomelibs pkgconfig
-LIB_DEPENDS= gnomeuimm-2.0:${PORTSDIR}/x11-toolkits/libgnomeuimm
-RUN_DEPENDS= ${LOCALBASE}/bin/cdrdao:${PORTSDIR}/sysutils/cdrdao
+USE_GCC= 3.4
+USE_GNOME= gnomehier pkgconfig
+LIB_DEPENDS= ${MP3OGG_LIB_DEPENDS} \
+ gnomeuimm-2.6.1:${PORTSDIR}/x11-toolkits/libgnomeuimm26
+RUN_DEPENDS= ${LOCALBASE}/bin/cdrdao:${PORTSDIR}/sysutils/cdrdao \
+ ${LOCALBASE}/share/mime/packages/freedesktop.org.xml:${PORTSDIR}/misc/shared-mime-info
MAN1= gcdmaster.1
CONFIGURE_ARGS= --without-lame
.else
MAN1= cdrdao.1 cue2toc.1
CONFIGURE_ARGS= --without-xdao
-PLIST_SUB= PORTVERSION=${PORTVERSION}
.if defined(WITH_TOC2MP3)
LIB_DEPENDS= mp3lame.0:${PORTSDIR}/audio/lame
CONFIGURE_ARGS+= --with-lame-include=${LOCALBASE}/include \
@@ -42,6 +48,12 @@ PLIST_SUB+= TOC2MP3=""
CONFIGURE_ARGS+= --without-lame
PLIST_SUB+= TOC2MP3="@comment "
.endif
+.if !defined(WITHOUT_MP3OGG)
+USE_GNOME= pkgconfig
+LIB_DEPENDS+= ${MP3OGG_LIB_DEPENDS}
+.else
+CONFIGURE_ARGS+= --without-mp3-support --without-ogg-support
+.endif
.endif
CONFIGURE_ARGS+= --with-pcctsbin=${LOCALBASE}/bin \
@@ -49,16 +61,24 @@ CONFIGURE_ARGS+= --with-pcctsbin=${LOCALBASE}/bin \
--without-posix-threads
#CONFIGURE_ARGS+= --without-scglib
CONFIGURE_TARGET= --build=${ARCH}-portbld-freebsd${OSREL}
-MAKE_ENV= CCOM=${CC} LANG=C
+MAKE_ENV= LANG=C
.include <bsd.port.pre.mk>
pre-everything::
-.if ${PORTNAME} != "gcdmaster" && !defined(WITH_TOC2MP3)
+.if ${PORTNAME} != "gcdmaster" && \
+ (!defined(WITH_TOC2MP3) || !defined(WITHOUT_MP3OGG))
@${ECHO_MSG} ""
@${ECHO_MSG} "You may use the following build option(s):"
@${ECHO_MSG} ""
+.if !defined(WITH_TOC2MP3)
@${ECHO_MSG} "WITH_TOC2MP3=yes builds with toc2mp3 (requires audio/lame)"
+.endif
+.if !defined(WITHOUT_MP3OGG)
+ @${ECHO_MSG} "WITHOUT_MP3OGG=yes builds without support for decoding MP3 and Ogg Vorbis"
+ @${ECHO_MSG} " files (not required unless using sysutils/gcdmaster;"
+ @${ECHO_MSG} " disabling saves a couple of dependencies)"
+.endif
@${ECHO_MSG} ""
.endif
@@ -76,9 +96,14 @@ post-patch:
.endfor
.if ${PORTNAME} == "gcdmaster"
@${REINPLACE_CMD} -E -e 's|(^SUBDIRS.+) utils|\1|' ${WRKSRC}/Makefile.in
+ @${REINPLACE_CMD} -E -e 's|(^gladedir.+=).+|\1 ${DATADIR}|' \
+ ${WRKSRC}/xdao/Makefile.in
@${REINPLACE_CMD} -E -e \
's|(SET_CDRDAO_PATH.+path=)(cdrdao)|\1${LOCALBASE}\/bin\/\2|g' \
${WRKSRC}/xdao/Settings.cc
+ @${REINPLACE_CMD} -E -e \
+ 's|(icon-filename=).+(gcdmaster-doc.png)|\1${X11BASE}\/share\/gnome\/mime-info\/\2|g' \
+ ${WRKSRC}/xdao/gcdmaster.keys
.else
.for i in cdrdao.man main.cc
@${REINPLACE_CMD} -e 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/dao/${i}
@@ -92,10 +117,22 @@ do-install:
@${INSTALL_PROGRAM} ${WRKSRC}/xdao/gcdmaster ${PREFIX}/bin
@${INSTALL_MAN} ${WRKSRC}/xdao/gcdmaster.man \
${PREFIX}/man/man1/gcdmaster.1
+ @${INSTALL_DATA} ${WRKSRC}/xdao/gcdmaster-doc.png \
+ ${X11BASE}/share/gnome/pixmaps/document-icons
+ @${INSTALL_DATA} ${WRKSRC}/xdao/gcdmaster.applications \
+ ${X11BASE}/share/gnome/application-registry
@${INSTALL_DATA} ${WRKSRC}/xdao/gcdmaster.desktop \
- ${X11BASE}/share/gnome/apps/Applications
+ ${X11BASE}/share/gnome/applications
+ @${INSTALL_DATA} ${WRKSRC}/xdao/gcdmaster.keys \
+ ${X11BASE}/share/gnome/mime-info
+ @${INSTALL_DATA} ${WRKSRC}/xdao/gcdmaster.mime \
+ ${X11BASE}/share/gnome/mime-info
@${INSTALL_DATA} ${WRKSRC}/xdao/gcdmaster.png \
${X11BASE}/share/gnome/pixmaps
+ @${INSTALL_DATA} ${WRKSRC}/xdao/gcdmaster.xml \
+ ${X11BASE}/share/mime/packages
+ @${MKDIR} ${DATADIR}
+ @${INSTALL_DATA} ${WRKSRC}/xdao/glade/ProjectChooser.glade ${DATADIR}
.else
@${INSTALL_PROGRAM} ${WRKSRC}/dao/cdrdao ${PREFIX}/bin
@${INSTALL_MAN} ${WRKSRC}/dao/cdrdao.man ${PREFIX}/man/man1/cdrdao.1
@@ -110,7 +147,7 @@ do-install:
.endif
.if !defined(NOPORTDOCS)
@${MKDIR} ${DOCSDIR}
-.for i in CREDITS README README.PlexDAE Release-${PORTVERSION}
+.for i in CREDITS ChangeLog README README.PlexDAE
@${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR}
.endfor
.endif
diff --git a/sysutils/cdrdao/distinfo b/sysutils/cdrdao/distinfo
index 802efd1f984c..d3e3b463680c 100644
--- a/sysutils/cdrdao/distinfo
+++ b/sysutils/cdrdao/distinfo
@@ -1,2 +1,2 @@
-MD5 (cdrdao-1.1.9.tar.gz) = dd7df809fca7db8e212a6522688c166b
-SIZE (cdrdao-1.1.9.tar.gz) = 1581717
+MD5 (cdrdao-1.2.0.tar.gz) = dc2bdef7a7c8973e678ba4a4a2d9cc7e
+SIZE (cdrdao-1.2.0.tar.gz) = 2041966
diff --git a/sysutils/cdrdao/files/patch-configure b/sysutils/cdrdao/files/patch-configure
new file mode 100644
index 000000000000..15320fa0e453
--- /dev/null
+++ b/sysutils/cdrdao/files/patch-configure
@@ -0,0 +1,29 @@
+--- configure.orig Mon Oct 7 03:53:55 2002
++++ configure Sat Oct 12 18:06:18 2002
+@@ -10250,7 +10250,7 @@
+ *-freebsd2*)
+ scsilib_libs="$scsilib_libs"
+ ;;
+- *-freebsd[3456]*)
++ *-freebsd[34567]*)
+ scsilib_libs="$scsilib_libs -lcam"
+ ;;
+ esac
+@@ -10268,7 +10268,7 @@
+ scsilib_objs="ScsiIf-linux.o sg_err.o"
+ ;;
+
+- *-freebsd[3456]*)
++ *-freebsd[34567]*)
+ scsilib_libs="-lcam"
+ scsilib_objs="ScsiIf-freebsd-cam.o"
+ ;;
+@@ -10514,7 +10514,7 @@
+ esac
+
+ case "$host" in
+- *-linux-* | *-freebsd[456]* | *-solaris*)
++ *-linux-* | *-freebsd[4567]* | *-solaris*)
+ sound_if_obj=SoundIF-ao.o
+ ;;
+
diff --git a/sysutils/cdrdao/files/patch-dao::dao.cc b/sysutils/cdrdao/files/patch-dao::dao.cc
deleted file mode 100644
index a96d0e6251b3..000000000000
--- a/sysutils/cdrdao/files/patch-dao::dao.cc
+++ /dev/null
@@ -1,29 +0,0 @@
---- dao/dao.cc.orig Thu Feb 12 02:13:31 2004
-+++ dao/dao.cc Tue Mar 2 17:22:11 2004
-@@ -703,7 +703,7 @@
-
- setsid(); // detach from controlling terminal
-
--#ifdef HAVE_MLOCKALL
-+#if defined(HAVE_MLOCKALL) && !defined(__FreeBSD__)
- if (geteuid() == 0) {
- if (mlockall(MCL_CURRENT|MCL_FUTURE) != 0) {
- message(-1, "Cannot lock memory pages: %s", strerror(errno));
-@@ -737,7 +737,7 @@
- break;
- }
-
--#ifdef HAVE_MLOCKALL
-+#if defined(HAVE_MLOCKALL) && !defined(__FreeBSD__)
- if (geteuid() == 0) {
- if (mlockall(MCL_CURRENT|MCL_FUTURE) != 0) {
- message(-1, "Cannot lock memory pages: %s", strerror(errno));
-@@ -762,7 +762,7 @@
- cdr->abortDao(); // abort writing process
-
- fail:
--#ifdef HAVE_MUNLOCKALL
-+#if defined(HAVE_MUNLOCKALL) && !defined(__FreeBSD__)
- munlockall();
- #endif
-
diff --git a/sysutils/cdrdao/files/patch-scsilib::RULES::i386-freebsd-cc.rul b/sysutils/cdrdao/files/patch-scsilib::RULES::i386-freebsd-cc.rul
index 4f398a59d5bd..e63ce76c6b21 100644
--- a/sysutils/cdrdao/files/patch-scsilib::RULES::i386-freebsd-cc.rul
+++ b/sysutils/cdrdao/files/patch-scsilib::RULES::i386-freebsd-cc.rul
@@ -10,7 +10,7 @@
CPPOPTS= -I. -I$(ARCHDIR) -I$(OINCSDIR) $(INCDIRS:%=-I%) $(OSDEFS)
COPTS=
-@@ -57,14 +58,13 @@
+@@ -57,14 +58,14 @@
FLOAT_OPTIONS=
@@ -18,8 +18,9 @@
-LDCC= @echo " ==> LINKING \"$@\""; gcc
-DYNLD= @echo " ==> LINKING dynamic library \"$@\""; gcc
-RANLIB= @echo " ==> RANDOMIZING ARCHIVE \"$@\""; ranlib
-+LDCC= $(CCOM)
-+DYNLD= $(CCOM)
++CCCOM= $(CC)
++LDCC= $(CCCOM)
++DYNLD= $(CCCOM)
+RANLIB= ranlib
ARFLAGS= cr
LORDER= lorder
@@ -27,5 +28,5 @@
RMDEP= :
-MKDEP= @echo " ==> MAKING DEPENDENCIES \"$@\""; $(RMDEP); gcc -M
-+MKDEP= $(CCOM) -M
++MKDEP= $(CCCOM) -M
MKDEP_OUT=
diff --git a/sysutils/cdrdao/files/patch-scsilib::RULES::rules.cnf b/sysutils/cdrdao/files/patch-scsilib::RULES::rules.cnf
deleted file mode 100644
index 270cb234a215..000000000000
--- a/sysutils/cdrdao/files/patch-scsilib::RULES::rules.cnf
+++ /dev/null
@@ -1,12 +0,0 @@
---- scsilib/RULES/rules.cnf.orig Sun Jan 27 16:11:31 2002
-+++ scsilib/RULES/rules.cnf Sun Jun 1 18:58:37 2003
-@@ -33,8 +33,7 @@
- #
- # Hack until the <mach>-<os>-*cc.rul files are updated
- #
--_HCCCOM= $(OARCH:%-gcc=gcc)
--HCCCOM= $(_HCCCOM:%-cc=cc)
-+HCCCOM= $(C_ARCH)
-
- _CCCOM= $(_UNIQ)$(CCCOM)
- __CCCOM= $(_CCCOM:$(_UNIQ)=$(HCCCOM))
diff --git a/sysutils/cdrdao/files/patch-xdao::Project.h b/sysutils/cdrdao/files/patch-xdao::Project.h
deleted file mode 100644
index 69819b19d3f6..000000000000
--- a/sysutils/cdrdao/files/patch-xdao::Project.h
+++ /dev/null
@@ -1,28 +0,0 @@
---- xdao/Project.h.orig 12 Feb 2004 01:13:32 -0000 1.11
-+++ xdao/Project.h 4 Jun 2004 21:52:40 -0000 1.11.2.1
-@@ -51,14 +51,12 @@
- virtual void createToolbar() = 0;
- virtual void createStatusbar();
- void updateWindowTitle();
-- void saveProject();
- void saveAsProject();
- Gtk::FileSelection *saveFileSelector_;
- void saveFileSelectorOKCB();
- void saveFileSelectorCancelCB();
-
- virtual bool on_delete_event(GdkEventAny *event);
-- virtual void recordToc2CD() = 0;
- virtual void projectInfo() = 0;
-
- public:
-@@ -67,7 +65,9 @@
- void readToc(char *name);
- void statusMessage(const char *fmt, ...);
- void tocBlockedMsg(const char *);
-- virtual bool closeProject() = 0;
-+ virtual bool closeProject() = 0;
-+ virtual void saveProject();
-+ virtual void recordToc2CD() = 0;
- int projectNumber();
- TocEdit *tocEdit();
- gint getViewNumber();
diff --git a/sysutils/cdrdao/pkg-plist b/sysutils/cdrdao/pkg-plist
index 108a3c964142..d4549681c7f0 100644
--- a/sysutils/cdrdao/pkg-plist
+++ b/sysutils/cdrdao/pkg-plist
@@ -7,7 +7,7 @@ bin/toc2cue
%%DATADIR%%/drivers
@dirrm %%DATADIR%%
%%PORTDOCS%%%%DOCSDIR%%/CREDITS
+%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
%%PORTDOCS%%%%DOCSDIR%%/README
%%PORTDOCS%%%%DOCSDIR%%/README.PlexDAE
-%%PORTDOCS%%%%DOCSDIR%%/Release-%%PORTVERSION%%
%%PORTDOCS%%@dirrm %%DOCSDIR%%