* Fix build with cdparanoia.

* Add support for optional cdparanoia support [1]

Submitted by:	Arjan van Leeuwen <avleeuwen@piwebs.com> [1]
This commit is contained in:
Joe Marcus Clarke 2003-02-10 02:55:37 +00:00
parent c0d2fa1238
commit 4323a16bf1
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=75219
6 changed files with 84 additions and 2 deletions

View file

@ -32,6 +32,19 @@ CONFIGURE_ENV= CPPFLAGS="${PTHREAD_CFLAGS} -I${LOCALBASE}/include" \
BSD_PTHREAD_LIBS=${PTHREAD_LIBS}
CONFIGURE_TARGET= --target=${MACHINE_ARCH}-unknown-freebsd${OSREL}
.include <bsd.port.pre.mk>
.if exists(${LOCALBASE}/lib/libcdda_paranoia.so.0)
WITH_CDPARANOIA= yes
.endif
.if defined(WITH_CDPARANOIA)
LIB_DEPENDS+= cdda_paranoia.0:${PORTSDIR}/audio/cdparanoia
PLIST_SUB+= CDPARANOIA=""
.else
PLIST_SUB+= CDPARANOIA="@comment "
.endif
post-patch:
@${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|g' ${WRKSRC}/configure
@${FIND} ${WRKSRC} -name "*info.in" | xargs ${REINPLACE_CMD} -e \
@ -39,4 +52,4 @@ post-patch:
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
${WRKSRC}/libgnomevfs/Makefile.in
.include <bsd.port.mk>
.include <bsd.port.post.mk>

View file

@ -0,0 +1,26 @@
--- modules/cdda-method.c.orig Wed Jan 22 13:54:31 2003
+++ modules/cdda-method.c Wed Jan 22 13:54:33 2003
@@ -623,7 +623,11 @@
// Check and see if we already have opened and stashed this drive
if (!use_base) {
if (global_context != NULL) {
+#ifdef Linux
if (strcmp (drive->cdda_device_name, global_context->drive->cdda_device_name) == 0) {
+#elif defined(__FreeBSD__)
+ if (strcmp (drive->dev->device_path, global_context->drive->dev->device_path) == 0) {
+#endif
use_cache = TRUE;
cdda_close (drive);
gnome_vfs_file_info_copy (file_info, global_context->file_info);
@@ -709,7 +713,11 @@
if (!use_base) {
// Check for cache
if (global_context != NULL) {
+#ifdef Linux
if (strcmp (drive->cdda_device_name, global_context->drive->cdda_device_name) != 0) {
+#elif defined(__FreeBSD__)
+ if (strcmp (drive->dev->device_path, global_context->drive->dev->device_path) != 0) {
+#endif
// Clear old cache
cdda_context_free (global_context);
global_context = cdda_context_new (drive, uri);

View file

@ -3,6 +3,7 @@ etc/gconf/gconf.xml.defaults/schemas/system/http_proxy/%gconf.xml
etc/gconf/gconf.xml.defaults/system/%gconf.xml
etc/gconf/gconf.xml.defaults/system/http_proxy/%gconf.xml
etc/gconf/schemas/system_http_proxy.schemas
%%CDPARANOIA%%etc/gnome-vfs-2.0/modules/cdda-module.conf
etc/gnome-vfs-2.0/modules/default-modules.conf
etc/gnome-vfs-2.0/vfolders/applications-all-users.vfolder-info
etc/gnome-vfs-2.0/vfolders/favorites.vfolder-info
@ -50,6 +51,7 @@ include/gnome-vfs-module-2.0/libgnomevfs/gnome-vfs-ssl.h
include/gnome-vfs-module-2.0/libgnomevfs/gnome-vfs-transform.h
lib/bonobo/monikers/libmoniker_gnome_vfs_std.so
lib/gnome-vfs-2.0/modules/libbzip2.so
%%CDPARANOIA%%lib/gnome-vfs-2.0/modules/libcdda.so
lib/gnome-vfs-2.0/modules/libextfs.so
lib/gnome-vfs-2.0/modules/libfile.so
lib/gnome-vfs-2.0/modules/libftp.so

View file

@ -32,6 +32,19 @@ CONFIGURE_ENV= CPPFLAGS="${PTHREAD_CFLAGS} -I${LOCALBASE}/include" \
BSD_PTHREAD_LIBS=${PTHREAD_LIBS}
CONFIGURE_TARGET= --target=${MACHINE_ARCH}-unknown-freebsd${OSREL}
.include <bsd.port.pre.mk>
.if exists(${LOCALBASE}/lib/libcdda_paranoia.so.0)
WITH_CDPARANOIA= yes
.endif
.if defined(WITH_CDPARANOIA)
LIB_DEPENDS+= cdda_paranoia.0:${PORTSDIR}/audio/cdparanoia
PLIST_SUB+= CDPARANOIA=""
.else
PLIST_SUB+= CDPARANOIA="@comment "
.endif
post-patch:
@${REINPLACE_CMD} -e 's|-lpthread|${PTHREAD_LIBS}|g' ${WRKSRC}/configure
@${FIND} ${WRKSRC} -name "*info.in" | xargs ${REINPLACE_CMD} -e \
@ -39,4 +52,4 @@ post-patch:
@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
${WRKSRC}/libgnomevfs/Makefile.in
.include <bsd.port.mk>
.include <bsd.port.post.mk>

View file

@ -0,0 +1,26 @@
--- modules/cdda-method.c.orig Wed Jan 22 13:54:31 2003
+++ modules/cdda-method.c Wed Jan 22 13:54:33 2003
@@ -623,7 +623,11 @@
// Check and see if we already have opened and stashed this drive
if (!use_base) {
if (global_context != NULL) {
+#ifdef Linux
if (strcmp (drive->cdda_device_name, global_context->drive->cdda_device_name) == 0) {
+#elif defined(__FreeBSD__)
+ if (strcmp (drive->dev->device_path, global_context->drive->dev->device_path) == 0) {
+#endif
use_cache = TRUE;
cdda_close (drive);
gnome_vfs_file_info_copy (file_info, global_context->file_info);
@@ -709,7 +713,11 @@
if (!use_base) {
// Check for cache
if (global_context != NULL) {
+#ifdef Linux
if (strcmp (drive->cdda_device_name, global_context->drive->cdda_device_name) != 0) {
+#elif defined(__FreeBSD__)
+ if (strcmp (drive->dev->device_path, global_context->drive->dev->device_path) != 0) {
+#endif
// Clear old cache
cdda_context_free (global_context);
global_context = cdda_context_new (drive, uri);

View file

@ -3,6 +3,7 @@ etc/gconf/gconf.xml.defaults/schemas/system/http_proxy/%gconf.xml
etc/gconf/gconf.xml.defaults/system/%gconf.xml
etc/gconf/gconf.xml.defaults/system/http_proxy/%gconf.xml
etc/gconf/schemas/system_http_proxy.schemas
%%CDPARANOIA%%etc/gnome-vfs-2.0/modules/cdda-module.conf
etc/gnome-vfs-2.0/modules/default-modules.conf
etc/gnome-vfs-2.0/vfolders/applications-all-users.vfolder-info
etc/gnome-vfs-2.0/vfolders/favorites.vfolder-info
@ -50,6 +51,7 @@ include/gnome-vfs-module-2.0/libgnomevfs/gnome-vfs-ssl.h
include/gnome-vfs-module-2.0/libgnomevfs/gnome-vfs-transform.h
lib/bonobo/monikers/libmoniker_gnome_vfs_std.so
lib/gnome-vfs-2.0/modules/libbzip2.so
%%CDPARANOIA%%lib/gnome-vfs-2.0/modules/libcdda.so
lib/gnome-vfs-2.0/modules/libextfs.so
lib/gnome-vfs-2.0/modules/libfile.so
lib/gnome-vfs-2.0/modules/libftp.so