diff options
Diffstat (limited to 'multimedia/vlc')
-rw-r--r-- | multimedia/vlc/patch-libupnp.diff | 194 | ||||
-rw-r--r-- | multimedia/vlc/vlc.SlackBuild | 7 | ||||
-rw-r--r-- | multimedia/vlc/vlc.info | 6 |
3 files changed, 6 insertions, 201 deletions
diff --git a/multimedia/vlc/patch-libupnp.diff b/multimedia/vlc/patch-libupnp.diff deleted file mode 100644 index 2e0580b810..0000000000 --- a/multimedia/vlc/patch-libupnp.diff +++ /dev/null @@ -1,194 +0,0 @@ -From 3eb4e03512f45c1fa27c7f9a6759e8e7d3905720 Mon Sep 17 00:00:00 2001 -From: Sebastian Ramacher <sramacher@debian.org> -Date: Tue, 29 Aug 2017 23:10:15 +0200 -Subject: [PATCH 1/1] upnp: Add support for libupnp 1.8 - -Callbacks now take const void* as second argument and some members can -only be accessed via getter functions. - -Signed-off-by: Sebastian Ramacher <sramacher@debian.org> -Signed-off-by: Jean-Baptiste Kempf <jb@videolan.org> ---- - modules/services_discovery/upnp.cpp | 48 +++++++++++++++++++++++++++---------- - modules/services_discovery/upnp.hpp | 14 +++++++---- - 2 files changed, 46 insertions(+), 16 deletions(-) - -diff --git a/modules/services_discovery/upnp.cpp b/modules/services_discovery/upnp.cpp -index c21b2b1e37..bdd3c55ee5 100644 ---- a/modules/services_discovery/upnp.cpp -+++ b/modules/services_discovery/upnp.cpp -@@ -38,6 +38,30 @@ - #include <set> - #include <string> - -+#if UPNP_VERSION < 10800 -+/* -+ * Compat functions and typedefs for libupnp prior to 1.8 -+ */ -+ -+typedef Upnp_Discovery UpnpDiscovery; -+typedef Upnp_Action_Complete UpnpActionComplete; -+ -+static const char* UpnpDiscovery_get_Location_cstr( const UpnpDiscovery* p_discovery ) -+{ -+ return p_discovery->Location; -+} -+ -+static const char* UpnpDiscovery_get_DeviceID_cstr( const UpnpDiscovery* p_discovery ) -+{ -+ return p_discovery->DeviceId; -+} -+ -+static IXML_Document* UpnpActionComplete_get_ActionResult( const UpnpActionComplete* p_result ) -+{ -+ return p_result->ActionResult; -+} -+#endif -+ - /* - * Constants - */ -@@ -679,19 +703,19 @@ void MediaServerList::removeServer( const std::string& udn ) - /* - * Handles servers listing UPnP events - */ --int MediaServerList::Callback( Upnp_EventType event_type, void* p_event ) -+int MediaServerList::Callback( Upnp_EventType event_type, UpnpEventPtr p_event ) - { - switch( event_type ) - { - case UPNP_DISCOVERY_ADVERTISEMENT_ALIVE: - case UPNP_DISCOVERY_SEARCH_RESULT: - { -- struct Upnp_Discovery* p_discovery = ( struct Upnp_Discovery* )p_event; -+ const UpnpDiscovery* p_discovery = ( const UpnpDiscovery* )p_event; - - IXML_Document *p_description_doc = NULL; - - int i_res; -- i_res = UpnpDownloadXmlDoc( p_discovery->Location, &p_description_doc ); -+ i_res = UpnpDownloadXmlDoc( UpnpDiscovery_get_Location_cstr( p_discovery ), &p_description_doc ); - - MediaServerList *self = UpnpInstanceWrapper::lockMediaServerList(); - if ( !self ) -@@ -704,11 +728,11 @@ int MediaServerList::Callback( Upnp_EventType event_type, void* p_event ) - { - msg_Warn( self->m_sd, "Could not download device description! " - "Fetching data from %s failed: %s", -- p_discovery->Location, UpnpGetErrorMessage( i_res ) ); -+ UpnpDiscovery_get_Location_cstr( p_discovery ), UpnpGetErrorMessage( i_res ) ); - UpnpInstanceWrapper::unlockMediaServerList(); - return i_res; - } -- self->parseNewServer( p_description_doc, p_discovery->Location ); -+ self->parseNewServer( p_description_doc, UpnpDiscovery_get_Location_cstr( p_discovery ) ); - UpnpInstanceWrapper::unlockMediaServerList(); - ixmlDocument_free( p_description_doc ); - } -@@ -716,11 +740,11 @@ int MediaServerList::Callback( Upnp_EventType event_type, void* p_event ) - - case UPNP_DISCOVERY_ADVERTISEMENT_BYEBYE: - { -- struct Upnp_Discovery* p_discovery = ( struct Upnp_Discovery* )p_event; -+ const UpnpDiscovery* p_discovery = ( const UpnpDiscovery* )p_event; - - MediaServerList *self = UpnpInstanceWrapper::lockMediaServerList(); - if ( self ) -- self->removeServer( p_discovery->DeviceId ); -+ self->removeServer( UpnpDiscovery_get_DeviceID_cstr( p_discovery ) ); - UpnpInstanceWrapper::unlockMediaServerList(); - } - break; -@@ -953,7 +977,7 @@ void Upnp_i11e_cb::waitAndRelease( void ) - } - } - --int Upnp_i11e_cb::run( Upnp_EventType eventType, void *p_event, void *p_cookie ) -+int Upnp_i11e_cb::run( Upnp_EventType eventType, UpnpEventPtr p_event, void *p_cookie ) - { - Upnp_i11e_cb *self = static_cast<Upnp_i11e_cb*>( p_cookie ); - -@@ -1082,15 +1106,15 @@ bool MediaServer::addItem( IXML_Element* itemElement ) - } - - int MediaServer::sendActionCb( Upnp_EventType eventType, -- void *p_event, void *p_cookie ) -+ UpnpEventPtr p_event, void *p_cookie ) - { - if( eventType != UPNP_CONTROL_ACTION_COMPLETE ) - return 0; - IXML_Document** pp_sendActionResult = (IXML_Document** )p_cookie; -- Upnp_Action_Complete *p_result = (Upnp_Action_Complete *)p_event; -+ const UpnpActionComplete *p_result = (const UpnpActionComplete *)p_event; - - /* The only way to dup the result is to print it and parse it again */ -- DOMString tmpStr = ixmlPrintNode( ( IXML_Node * ) p_result->ActionResult ); -+ DOMString tmpStr = ixmlPrintNode( ( IXML_Node * ) UpnpActionComplete_get_ActionResult( p_result ) ); - if (tmpStr == NULL) - return 0; - -@@ -1616,7 +1640,7 @@ UpnpClient_Handle UpnpInstanceWrapper::handle() const - return m_handle; - } - --int UpnpInstanceWrapper::Callback(Upnp_EventType event_type, void *p_event, void *p_user_data) -+int UpnpInstanceWrapper::Callback(Upnp_EventType event_type, UpnpEventPtr p_event, void *p_user_data) - { - VLC_UNUSED(p_user_data); - vlc_mutex_lock( &s_lock ); -diff --git a/modules/services_discovery/upnp.hpp b/modules/services_discovery/upnp.hpp -index 033e191aea..39e19cbd56 100644 ---- a/modules/services_discovery/upnp.hpp -+++ b/modules/services_discovery/upnp.hpp -@@ -37,6 +37,12 @@ - #include <vlc_common.h> - #include <vlc_url.h> - -+#if UPNP_VERSION < 10800 -+typedef void* UpnpEventPtr; -+#else -+typedef const void* UpnpEventPtr; -+#endif -+ - namespace SD - { - class MediaServerList; -@@ -63,7 +69,7 @@ public: - static void unlockMediaServerList(); - - private: -- static int Callback( Upnp_EventType event_type, void* p_event, void* p_user_data ); -+ static int Callback( Upnp_EventType event_type, UpnpEventPtr p_event, void* p_user_data ); - - UpnpInstanceWrapper(); - ~UpnpInstanceWrapper(); -@@ -104,7 +110,7 @@ public: - bool addServer(MediaServerDesc *desc ); - void removeServer(const std::string &udn ); - MediaServerDesc* getServer( const std::string& udn ); -- static int Callback( Upnp_EventType event_type, void* p_event ); -+ static int Callback( Upnp_EventType event_type, UpnpEventPtr p_event ); - - private: - void parseNewServer( IXML_Document* doc, const std::string& location ); -@@ -126,7 +132,7 @@ public: - Upnp_i11e_cb( Upnp_FunPtr callback, void *cookie ); - ~Upnp_i11e_cb(); - void waitAndRelease( void ); -- static int run( Upnp_EventType, void *, void *); -+ static int run( Upnp_EventType, UpnpEventPtr, void *); - - private: - vlc_sem_t m_sem; -@@ -152,7 +158,7 @@ private: - - IXML_Document* _browseAction(const char*, const char*, - const char*, const char*, const char* ); -- static int sendActionCb( Upnp_EventType, void *, void *); -+ static int sendActionCb( Upnp_EventType, UpnpEventPtr, void *); - - private: - char* m_psz_root; --- -2.11.0 - diff --git a/multimedia/vlc/vlc.SlackBuild b/multimedia/vlc/vlc.SlackBuild index 2b86dde423..7440672d62 100644 --- a/multimedia/vlc/vlc.SlackBuild +++ b/multimedia/vlc/vlc.SlackBuild @@ -6,7 +6,7 @@ # modified to build VLC only, shared libraries needed. # Copyright (c) 2007,2008,2009,2010,2011 Eric Hameleers, Eindhoven, Netherlands -# Copyright (c) 2014-2017 Christoph Willing, Brisbane, Australia +# Copyright (c) 2014-2018 Christoph Willing, Brisbane, Australia # # Permission to use, copy, modify, and distribute this software for # any purpose with or without fee is hereby granted, provided that @@ -28,8 +28,8 @@ # ----------------------------------------------------------------------------- PRGNAM=vlc -VERSION=${VERSION:-20170523_bec643e} -BUILD=${BUILD:-2} +VERSION=${VERSION:-3.0.0} +BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then @@ -82,7 +82,6 @@ cd $PRGNAM-$VERSION patch -p0 < $CWD/patch-projectM-fontpath.diff patch -p0 < $CWD/patch_vlc_cache_gen.diff -patch -p1 < $CWD/patch-libupnp.diff autoreconf -fiv diff --git a/multimedia/vlc/vlc.info b/multimedia/vlc/vlc.info index 9277196f99..545be23dfc 100644 --- a/multimedia/vlc/vlc.info +++ b/multimedia/vlc/vlc.info @@ -1,8 +1,8 @@ PRGNAM="vlc" -VERSION="20170523_bec643e" +VERSION="3.0.0" HOMEPAGE="http://www.videolan.org/vlc/" -DOWNLOAD="http://ponce.cc/slackware/sources/repo/vlc-20170523_bec643e.tar.xz" -MD5SUM="05fd20851b524bba784640e550bc6812" +DOWNLOAD="http://get.videolan.org/vlc/3.0.0/vlc-3.0.0.tar.xz" +MD5SUM="a953d8b90e56f06828c4ca8e390c5c9b" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="libass libdc1394 libdvbpsi libmpeg2 libupnp lua portaudio twolame opus ffmpeg libwebp gsm opencv libtar libkate faac libdca libmatroska libshout speex avahi projectM jack-audio-connection-kit libsidplay2 zvbi faad2 libavc1394 libmodplug musepack-tools vcdimager dirac gnome-vfs live555 qt5 rtmpdump libdvdcss fluidsynth schroedinger libminizip chromaprint x264 x265 libbluray" |