aboutsummaryrefslogtreecommitdiff
path: root/multimedia/phonon-gstreamer
diff options
context:
space:
mode:
authorAlberto Villa <avilla@FreeBSD.org>2011-03-25 10:14:53 +0000
committerAlberto Villa <avilla@FreeBSD.org>2011-03-25 10:14:53 +0000
commitccd7c5cb51b94b642004686079f4244d6eb1f0d1 (patch)
tree0ef43adf034a830b4d08842bd2cad5030e1f29b9 /multimedia/phonon-gstreamer
parent6951a4e2684cc1085bc30b0ac843f4feadbde7db (diff)
Notes
Diffstat (limited to 'multimedia/phonon-gstreamer')
-rw-r--r--multimedia/phonon-gstreamer/Makefile15
-rw-r--r--multimedia/phonon-gstreamer/distinfo5
-rw-r--r--multimedia/phonon-gstreamer/files/patch-CMakeLists.txt50
-rw-r--r--multimedia/phonon-gstreamer/files/patch-cmake__FindPhonon.cmake73
-rw-r--r--multimedia/phonon-gstreamer/files/patch-gstreamer__CMakeLists.txt21
-rw-r--r--multimedia/phonon-gstreamer/files/patch-gstreamer__mediaobject.cpp35
-rw-r--r--multimedia/phonon-gstreamer/pkg-plist6
7 files changed, 56 insertions, 149 deletions
diff --git a/multimedia/phonon-gstreamer/Makefile b/multimedia/phonon-gstreamer/Makefile
index 1c6e05ab959e..29de4a7aa617 100644
--- a/multimedia/phonon-gstreamer/Makefile
+++ b/multimedia/phonon-gstreamer/Makefile
@@ -5,11 +5,12 @@
# $FreeBSD$
PORTNAME= phonon
-PORTVERSION= 4.4.2
+PORTVERSION= 4.4.4
CATEGORIES= multimedia kde ipv6
MASTER_SITES= ${MASTER_SITE_KDE}
-MASTER_SITE_SUBDIR= ${PHONON_BRANCH}/${PORTNAME}/${PORTVERSION}/
+MASTER_SITE_SUBDIR= ${PHONON_BRANCH}/${PORTNAME}/${PORTNAME}-backend${PKGNAMESUFFIX}/${PORTVERSION}/src
PKGNAMESUFFIX= -gstreamer
+DISTNAME= ${PORTNAME}-backend${PKGNAMESUFFIX}-${PORTVERSION}
DIST_SUBDIR= KDE
MAINTAINER= kde@FreeBSD.org
@@ -36,17 +37,11 @@ CMAKE_ARGS+= -DWITH_Alsa:BOOL=OFF
IGNORE= conflicts with Qt4 phonon. Please, deinstall qt4-phonon-gst and set WITH_KDE_PHONON to continue
.endif
-post-patch:
-#fix finding automoc when PREFIX is not matched KDE4_PREFIX
- ${REINPLACE_CMD} -e 's|NO_DEFAULT_PATH|${KDE4_PREFIX} NO_DEFAULT_PATH|' \
- ${PATCH_WRKSRC}/cmake/FindAutomoc4.cmake
-
pre-configure:
- ${REINPLACE_CMD} -e '/phonon.pc/s|pkgconfig|../libdata/pkgconfig|' \
- -e 's|{QT_INCLUDES}|{QT_INCLUDES} ${LOCALBASE}/include|'\
+ ${REINPLACE_CMD} -e 's|{QT_INCLUDES}|{QT_INCLUDES} ${LOCALBASE}/include|'\
${PATCH_WRKSRC}/CMakeLists.txt
-pre-install:
+pre-su-install:
${MKDIR} ${QT_PLUGINDIR}/phonon_backend
post-install:
diff --git a/multimedia/phonon-gstreamer/distinfo b/multimedia/phonon-gstreamer/distinfo
index 5a88286e5da7..521a3919b8e1 100644
--- a/multimedia/phonon-gstreamer/distinfo
+++ b/multimedia/phonon-gstreamer/distinfo
@@ -1,3 +1,2 @@
-MD5 (KDE/phonon-4.4.2.tar.bz2) = d9eab28383783261254f1cef3b92a3fa
-SHA256 (KDE/phonon-4.4.2.tar.bz2) = f1404c3f326201b382c26ba37f2d885d30bc71ba5fd8e1479afb632f92d93486
-SIZE (KDE/phonon-4.4.2.tar.bz2) = 629193
+SHA256 (KDE/phonon-backend-gstreamer-4.4.4.tar.bz2) = 5696eadfab929bede4b04991e35291317571b8584b3c5fa6cdb158052fd3909e
+SIZE (KDE/phonon-backend-gstreamer-4.4.4.tar.bz2) = 87242
diff --git a/multimedia/phonon-gstreamer/files/patch-CMakeLists.txt b/multimedia/phonon-gstreamer/files/patch-CMakeLists.txt
deleted file mode 100644
index a7dc43f09100..000000000000
--- a/multimedia/phonon-gstreamer/files/patch-CMakeLists.txt
+++ /dev/null
@@ -1,50 +0,0 @@
---- ./CMakeLists.txt.orig 2009-01-22 11:20:44.000000000 +0300
-+++ ./CMakeLists.txt 2009-02-21 01:22:42.000000000 +0300
-@@ -127,12 +127,12 @@
-
- try_run(_run_result _compile_result ${CMAKE_BINARY_DIR} ${_source_file} CMAKE_FLAGS "${_include_dirs}")
-
-- if(NOT _compile_result)
-- message(FATAL_ERROR "Could not compile simple test program:\n ${_source}")
-- endif(NOT _compile_result)
-- if(_run_result)
-- message(FATAL_ERROR "Qt compiled without support for -fvisibility=hidden. This will break plugins and linking of some applications. Please fix your Qt installation.")
-- endif(_run_result)
-+# if(NOT _compile_result)
-+# message(FATAL_ERROR "Could not compile simple test program:\n ${_source}")
-+# endif(NOT _compile_result)
-+# if(_run_result)
-+# message(FATAL_ERROR "Qt compiled without support for -fvisibility=hidden. This will break plugins and linking of some applications. Please fix your Qt installation.")
-+# endif(_run_result)
-
- if (GCC_IS_NEWER_THAN_4_2)
- set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden")
-@@ -255,8 +255,8 @@
- endif(APPLE)
-
-
--add_subdirectory(phonon)
--add_subdirectory(includes)
-+#add_subdirectory(phonon)
-+#add_subdirectory(includes)
- if (Q_WS_MAC AND BUILD_PHONON_QT7)
- add_subdirectory(qt7)
- endif (Q_WS_MAC AND BUILD_PHONON_QT7)
-@@ -266,12 +266,12 @@
-
- if (Q_WS_X11)
- add_subdirectory(gstreamer)
-- add_subdirectory(xine)
-+# add_subdirectory(xine)
- endif (Q_WS_X11)
-
--if(NOT WIN32) # pkgconfig file
-- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/phonon.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/phonon.pc @ONLY)
-- install(FILES ${CMAKE_CURRENT_BINARY_DIR}/phonon.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig)
--endif(NOT WIN32)
-+# if(NOT WIN32) # pkgconfig file
-+# configure_file(${CMAKE_CURRENT_SOURCE_DIR}/phonon.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/phonon.pc @ONLY)
-+# install(FILES ${CMAKE_CURRENT_BINARY_DIR}/phonon.pc DESTINATION ${LIB_INSTALL_DIR}/../libdata/../libdata/../libdata/../libdata/../libdata/pkgconfig)
-+# endif(NOT WIN32)
-
- macro_display_feature_log()
diff --git a/multimedia/phonon-gstreamer/files/patch-cmake__FindPhonon.cmake b/multimedia/phonon-gstreamer/files/patch-cmake__FindPhonon.cmake
deleted file mode 100644
index 44c470dd884b..000000000000
--- a/multimedia/phonon-gstreamer/files/patch-cmake__FindPhonon.cmake
+++ /dev/null
@@ -1,73 +0,0 @@
---- ./cmake/FindPhonon.cmake.orig 2009-02-21 01:19:39.000000000 +0300
-+++ ./cmake/FindPhonon.cmake 2009-02-21 01:19:39.000000000 +0300
-@@ -0,0 +1,70 @@
-+# Find libphonon
-+# Once done this will define
-+#
-+# PHONON_FOUND - system has Phonon Library
-+# PHONON_INCLUDES - the Phonon include directory
-+# PHONON_LIBS - link these to use Phonon
-+# PHONON_VERSION - the version of the Phonon Library
-+
-+# Copyright (c) 2008, Matthias Kretz <kretz@kde.org>
-+#
-+# Redistribution and use is allowed according to the terms of the BSD license.
-+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
-+
-+macro(_phonon_find_version)
-+ file(READ "${PHONON_INCLUDE_DIR}/phonon/phononnamespace.h" _phonon_header LIMIT 5000 OFFSET 1000)
-+ string(REGEX MATCH "define PHONON_VERSION_STR \"(4\\.[0-9]+\\.[0-9a-z]+)\"" _phonon_version_match "${_phonon_header}")
-+ set(PHONON_VERSION "${CMAKE_MATCH_1}")
-+ message(STATUS "Phonon Version: ${PHONON_VERSION}")
-+endmacro(_phonon_find_version)
-+
-+find_package(PkgConfig)
-+PKG_CHECK_MODULES(PKG_PHONON phonon)
-+
-+if(PHONON_FOUND)
-+ # Already found, nothing more to do except figuring out the version
-+ _phonon_find_version()
-+else(PHONON_FOUND)
-+ if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY)
-+ set(PHONON_FIND_QUIETLY TRUE)
-+ endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY)
-+
-+ # As discussed on kde-buildsystem: first look at CMAKE_PREFIX_PATH, then at the suggested PATHS (kde4 install dir)
-+ find_library(PHONON_LIBRARY NAMES phonon PATHS ${PKG_PHONON_LIBRARY_DIRS} ${KDE4_PREFIX}/lib ${KDE4_LIB_INSTALL_DIR} ${QT_LIBRARY_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH)
-+ # then at the default system locations (CMAKE_SYSTEM_PREFIX_PATH, i.e. /usr etc.)
-+ find_library(PHONON_LIBRARY NAMES phonon)
-+
-+ find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h PATHS ${PKG_PHONON_INCLUDE_DIRS} ${KDE4_PREFIX}/include ${KDE4_INCLUDE_INSTALL_DIR} ${QT_INCLUDE_DIR} ${INCLUDE_INSTALL_DIR} NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH)
-+ find_path(PHONON_INCLUDE_DIR NAMES phonon/phonon_export.h)
-+
-+ if(PHONON_INCLUDE_DIR AND PHONON_LIBRARY)
-+ set(PHONON_LIBS ${phonon_LIB_DEPENDS} ${PHONON_LIBRARY})
-+ set(PHONON_INCLUDES ${PHONON_INCLUDE_DIR}/KDE ${PHONON_INCLUDE_DIR}/phonon ${PHONON_INCLUDE_DIR})
-+ set(PHONON_FOUND TRUE)
-+ _phonon_find_version()
-+ else(PHONON_INCLUDE_DIR AND PHONON_LIBRARY)
-+ set(PHONON_FOUND FALSE)
-+ endif(PHONON_INCLUDE_DIR AND PHONON_LIBRARY)
-+
-+ if(PHONON_FOUND)
-+ if(NOT PHONON_FIND_QUIETLY)
-+ message(STATUS "Found Phonon: ${PHONON_LIBRARY}")
-+ message(STATUS "Found Phonon Includes: ${PHONON_INCLUDES}")
-+ endif(NOT PHONON_FIND_QUIETLY)
-+ else(PHONON_FOUND)
-+ if(Phonon_FIND_REQUIRED)
-+ if(NOT PHONON_INCLUDE_DIR)
-+ message(STATUS "Phonon includes NOT found!")
-+ endif(NOT PHONON_INCLUDE_DIR)
-+ if(NOT PHONON_LIBRARY)
-+ message(STATUS "Phonon library NOT found!")
-+ endif(NOT PHONON_LIBRARY)
-+ message(FATAL_ERROR "Phonon library or includes NOT found!")
-+ else(Phonon_FIND_REQUIRED)
-+ message(STATUS "Unable to find Phonon")
-+ endif(Phonon_FIND_REQUIRED)
-+ endif(PHONON_FOUND)
-+
-+
-+ mark_as_advanced(PHONON_INCLUDE_DIR PHONON_LIBRARY PHONON_INCLUDES)
-+endif(PHONON_FOUND)
diff --git a/multimedia/phonon-gstreamer/files/patch-gstreamer__CMakeLists.txt b/multimedia/phonon-gstreamer/files/patch-gstreamer__CMakeLists.txt
index 1da5948b40d0..26036ba4be74 100644
--- a/multimedia/phonon-gstreamer/files/patch-gstreamer__CMakeLists.txt
+++ b/multimedia/phonon-gstreamer/files/patch-gstreamer__CMakeLists.txt
@@ -1,15 +1,10 @@
---- ./gstreamer/CMakeLists.txt.orig 2008-11-24 20:12:02.000000000 +0300
-+++ ./gstreamer/CMakeLists.txt 2009-02-21 01:19:39.000000000 +0300
-@@ -16,9 +16,12 @@
- project(phonon-gstreamer)
- include(ConfigureChecks.cmake)
-
-+find_package(Phonon)
-+
+--- ./gstreamer/CMakeLists.txt.orig 2010-11-24 21:26:19.000000000 +0300
++++ ./gstreamer/CMakeLists.txt 2010-11-27 00:44:31.334007404 +0300
+@@ -19,6 +19,7 @@
if (BUILD_PHONON_GSTREAMER)
include_directories(
- ${CMAKE_CURRENT_BINARY_DIR}
-+ ${PHONON_INCLUDES}
- ${GSTREAMER_INCLUDE_DIR}
- ${GLIB2_INCLUDE_DIR}
- ${LIBXML2_INCLUDE_DIR}
+ ${CMAKE_CURRENT_BINARY_DIR}
++ ${PHONON_INCLUDES}
+ ${GSTREAMER_INCLUDE_DIR}
+ ${GSTREAMER_PLUGIN_VIDEO_INCLUDE_DIR}
+ ${GSTREAMER_PLUGIN_AUDIO_INCLUDE_DIR}
diff --git a/multimedia/phonon-gstreamer/files/patch-gstreamer__mediaobject.cpp b/multimedia/phonon-gstreamer/files/patch-gstreamer__mediaobject.cpp
new file mode 100644
index 000000000000..b3d41d3dc006
--- /dev/null
+++ b/multimedia/phonon-gstreamer/files/patch-gstreamer__mediaobject.cpp
@@ -0,0 +1,35 @@
+--- gstreamer/mediaobject.cpp
++++ gstreamer/mediaobject.cpp
+@@ -31,6 +31,7 @@
+ #include <QtCore/QEvent>
+ #include <QtCore/QFile>
+ #include <QtCore/QLibrary>
++#include <QtCore/QPointer>
+ #include <QtCore/QStringList>
+ #include <QtCore/QTimer>
+ #include <QtCore/QVector>
+@@ -244,10 +245,11 @@ void MediaObject::pluginInstallationResult(GstInstallPluginsReturn result)
+
+ void MediaObject::pluginInstallationDone(GstInstallPluginsReturn result, gpointer userData)
+ {
+- MediaObject *mediaObject = static_cast<MediaObject*>(userData);
+- Q_ASSERT(mediaObject);
+- qRegisterMetaType<GstInstallPluginsReturn>("GstInstallPluginsReturn");
+- QMetaObject::invokeMethod(mediaObject, "pluginInstallationResult", Qt::QueuedConnection, Q_ARG(GstInstallPluginsReturn, result));
++ QPointer<MediaObject> *that = static_cast<QPointer<MediaObject>*>(userData);
++ if (*that) {
++ qRegisterMetaType<GstInstallPluginsReturn>("GstInstallPluginsReturn");
++ QMetaObject::invokeMethod(*that, "pluginInstallationResult", Qt::QueuedConnection, Q_ARG(GstInstallPluginsReturn, result));
++ }
+ }
+ #endif // PLUGIN_INSTALL_API
+
+@@ -268,7 +270,7 @@ void MediaObject::installMissingCodecs()
+ details[1] = NULL;
+ GstInstallPluginsReturn status;
+
+- status = gst_install_plugins_async(details, ctx, pluginInstallationDone, this);
++ status = gst_install_plugins_async(details, ctx, pluginInstallationDone, new QPointer<MediaObject>(this));
+ gst_install_plugins_context_free(ctx);
+
+ if (status != GST_INSTALL_PLUGINS_STARTED_OK) {
diff --git a/multimedia/phonon-gstreamer/pkg-plist b/multimedia/phonon-gstreamer/pkg-plist
index e37e9af961fa..8d4842f1c520 100644
--- a/multimedia/phonon-gstreamer/pkg-plist
+++ b/multimedia/phonon-gstreamer/pkg-plist
@@ -1,4 +1,10 @@
lib/kde4/plugins/phonon_backend/phonon_gstreamer.so
+share/icons/hicolor/32x32/apps/phonon-gstreamer.png
+share/icons/hicolor/22x22/apps/phonon-gstreamer.png
+share/icons/hicolor/128x128/apps/phonon-gstreamer.png
+share/icons/hicolor/16x16/apps/phonon-gstreamer.png
+share/icons/hicolor/48x48/apps/phonon-gstreamer.png
+share/icons/hicolor/scalable/apps/phonon-gstreamer.svgz
share/kde4/services/phononbackends/gstreamer.desktop
@dirrmtry share/kde4/services/phononbackends
@dirrmtry lib/kde4/plugins/phonon_backend