[banshee: 55/57] UPnPClient: Make a private copy of the Mono.Upnp assemblies



commit cc9f2b3803cffd9f0562a94e55d9115473b0849f
Author: Bertrand Lorentz <bertrand lorentz gmail com>
Date:   Mon Feb 13 21:16:18 2012 +0100

    UPnPClient: Make a private copy of the Mono.Upnp assemblies
    
    The Mono.Upnp assemblies are not installed in the GAC, so we make a
    private copy, like we do for example with libgpod-sharp.

 build/m4/banshee/mono-upnp.m4                 |   12 ++++++++++++
 src/Extensions/Banshee.UPnPClient/Makefile.am |   12 ++++++++++++
 2 files changed, 24 insertions(+), 0 deletions(-)
---
diff --git a/build/m4/banshee/mono-upnp.m4 b/build/m4/banshee/mono-upnp.m4
index bc90abf..2ae7f93 100644
--- a/build/m4/banshee/mono-upnp.m4
+++ b/build/m4/banshee/mono-upnp.m4
@@ -13,6 +13,18 @@ AC_DEFUN([BANSHEE_CHECK_MONO_UPNP],
 
 		AC_SUBST(MONO_UPNP_LIBS)
 
+		asms="`$PKG_CONFIG --variable=Libraries mono.ssdp` `$PKG_CONFIG --variable=Libraries mono.upnp` `$PKG_CONFIG --variable=Libraries mono.upnp.dcp.mediaserver1`"
+		for asm in $asms; do
+			FILENAME=`basename $asm`
+			if [[ "`echo $SEENBEFORE | grep $FILENAME`" = "" ]]; then
+				MONOUPNP_ASSEMBLIES="$MONOUPNP_ASSEMBLIES $asm"
+				[[ -r "$asm.config" ]] && MONOUPNP_ASSEMBLIES="$MONOUPNP_ASSEMBLIES $asm.config"
+				[[ -r "$asm.mdb" ]] && MONOUPNP_ASSEMBLIES="$MONOUPNP_ASSEMBLIES $asm.mdb"
+				SEENBEFORE="$SEENBEFORE $FILENAME"
+			fi
+		done
+		AC_SUBST(MONOUPNP_ASSEMBLIES)
+
 		AM_CONDITIONAL(UPNP_ENABLED, true)
 	else
 		AM_CONDITIONAL(UPNP_ENABLED, false)
diff --git a/src/Extensions/Banshee.UPnPClient/Makefile.am b/src/Extensions/Banshee.UPnPClient/Makefile.am
index ab7ebb5..cfe3bb6 100644
--- a/src/Extensions/Banshee.UPnPClient/Makefile.am
+++ b/src/Extensions/Banshee.UPnPClient/Makefile.am
@@ -15,6 +15,18 @@ RESOURCES = Banshee.UPnPClient.addin.xml
 
 if UPNP_ENABLED
 include $(top_srcdir)/build/build.mk
+
+define EXTRA_INSTALL_DATA_HOOK
+	for ASM in $(MONOUPNP_ASSEMBLIES); do \
+		$(INSTALL) -m 0755 $$ASM $(DESTDIR)$(moduledir); \
+	done;
+endef
+
+define EXTRA_UNINSTALL_HOOK
+	for ASM in $(MONOUPNP_ASSEMBLIES); do \
+		rm -f $(DESTDIR)$(moduledir)/`basename $$ASM`; \
+	done;
+endef
 else
 include $(top_srcdir)/build/build.dist.mk
 endif



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]