diff options
author | Dima Panov <fluffy@FreeBSD.org> | 2010-05-11 09:47:27 +0000 |
---|---|---|
committer | Dima Panov <fluffy@FreeBSD.org> | 2010-05-11 09:47:27 +0000 |
commit | 41d0bfeb68174becd59e9da96bdc49a090b51a3e (patch) | |
tree | eb633289eed9d478293a97892ca7d7b2bfbe1b53 /multimedia | |
parent | 11026b2530c16eb169a3f9b5c9b876f89b285eef (diff) | |
download | ports-41d0bfeb68174becd59e9da96bdc49a090b51a3e.tar.gz ports-41d0bfeb68174becd59e9da96bdc49a090b51a3e.zip |
- Resurrect multimedia/phonon[-gstreamer] ports
- Update all Phonon parts to 4.4.1
With hat on: kde@
Notes
Notes:
svn path=/head/; revision=254124
Diffstat (limited to 'multimedia')
21 files changed, 578 insertions, 16 deletions
diff --git a/multimedia/phonon-gstreamer/Makefile b/multimedia/phonon-gstreamer/Makefile new file mode 100644 index 000000000000..1519d9806b68 --- /dev/null +++ b/multimedia/phonon-gstreamer/Makefile @@ -0,0 +1,57 @@ +# New ports collection Makefile for: phonon +# Date created: 2008-01-30 +# Whom: Martin Wilke <miwi@FreeBSD.org> +# +# $FreeBSD$ + +PORTNAME= phonon +PORTVERSION= 4.4.1 +PORTREVISION= 0 +CATEGORIES= multimedia kde ipv6 +MASTER_SITES= ${MASTER_SITE_KDE} \ + http://ns.ael.ru/~fluffy.khv/distfiles/ +MASTER_SITE_SUBDIR= ${PHONON_BRANCH}/${PORTNAME}/${PORTVERSION}/ +PKGNAMESUFFIX= -gstreamer +DIST_SUBDIR= KDE + +MAINTAINER= kde@FreeBSD.org +COMMENT= Phonon gstreamer backend + +CONFLICTS= qt4-phonon-gst-4* + +PHONON_BRANCH= stable +USE_BZIP2= yes +USE_CMAKE= yes +USE_KDE4= kdehier automoc4 kdeprefix +USE_QT_VER= 4 +QT_COMPONENTS= gui dbus xml opengl phonon \ + qmake_build moc_build rcc_build uic_build +USE_GSTREAMER= yes + +PLIST_SUB+= QT_PREFIX=${QT_PREFIX} + +# Explicitly disable alsa, see for details: +# http://mail.kde.org/pipermail/kde-freebsd/2010-March/008015.html +CMAKE_ARGS+= -DWITH_Alsa:BOOL=OFF + +.if defined(WITH_QT_PHONON) +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|'\ + ${PATCH_WRKSRC}/CMakeLists.txt + +pre-install: + ${MKDIR} ${QT_PLUGINDIR}/phonon_backend + +post-install: + ${LN} -sf ${PREFIX}/lib/kde4/plugins/phonon_backend/phonon_gstreamer.so ${QT_PLUGINDIR}/phonon_backend/libphonon_gstreamer.so + +.include <bsd.port.mk> diff --git a/multimedia/phonon-gstreamer/distinfo b/multimedia/phonon-gstreamer/distinfo new file mode 100644 index 000000000000..f8471851a1b8 --- /dev/null +++ b/multimedia/phonon-gstreamer/distinfo @@ -0,0 +1,3 @@ +MD5 (KDE/phonon-4.4.1.tar.bz2) = 5a1444f009a77054f16fea38c08e6cb5 +SHA256 (KDE/phonon-4.4.1.tar.bz2) = 8a52b0e74c5fb5c8dd3ce65d745c7052cdcea0e7535658fbc655671cef5e5277 +SIZE (KDE/phonon-4.4.1.tar.bz2) = 625008 diff --git a/multimedia/phonon-gstreamer/files/patch-CMakeLists.txt b/multimedia/phonon-gstreamer/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..a7dc43f09100 --- /dev/null +++ b/multimedia/phonon-gstreamer/files/patch-CMakeLists.txt @@ -0,0 +1,50 @@ +--- ./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__FindGObject.cmake b/multimedia/phonon-gstreamer/files/patch-cmake__FindGObject.cmake new file mode 100644 index 000000000000..cfcd9876a824 --- /dev/null +++ b/multimedia/phonon-gstreamer/files/patch-cmake__FindGObject.cmake @@ -0,0 +1,24 @@ +--- ./cmake/FindGObject.cmake.orig 2008-11-24 20:11:55.000000000 +0300 ++++ ./cmake/FindGObject.cmake 2009-02-21 01:19:39.000000000 +0300 +@@ -23,10 +23,12 @@ + # in the FIND_PATH() and FIND_LIBRARY() calls + PKG_CHECK_MODULES(PKG_GOBJECT2 REQUIRED gobject-2.0) + SET(GOBJECT_DEFINITIONS ${PKG_GOBJECT2_CFLAGS}) ++ PKG_CHECK_MODULES(PKG_GLIB REQUIRED glib-2.0) + ENDIF (NOT WIN32) + + FIND_PATH(GOBJECT_INCLUDE_DIR gobject/gobject.h + PATHS ++ ${PKG_GLIB_INCLUDE_DIRS} + ${PKG_GOBJECT2_INCLUDE_DIRS} + /usr/include/glib-2.0/ + PATH_SUFFIXES glib-2.0 +@@ -52,7 +54,7 @@ + IF (WIN32) + SET (GOBJECT_LIBRARIES ${_GObjectLibs} ${_GModuleLibs} ${_GThreadLibs} ${_GLibs}) + ELSE (WIN32) +-SET (GOBJECT_LIBRARIES ${PKG_GOBJECT2_LIBRARIES}) ++SET (GOBJECT_LIBRARIES ${_GObjectLibs} ${PKG_GOBJECT2_LDFLAGS} ${PKG_GOBJECT2_LIBRARIES}) + ENDIF (WIN32) + + IF (GOBJECT_INCLUDE_DIR AND GOBJECT_LIBRARIES) diff --git a/multimedia/phonon-gstreamer/files/patch-cmake__FindPhonon.cmake b/multimedia/phonon-gstreamer/files/patch-cmake__FindPhonon.cmake new file mode 100644 index 000000000000..44c470dd884b --- /dev/null +++ b/multimedia/phonon-gstreamer/files/patch-cmake__FindPhonon.cmake @@ -0,0 +1,73 @@ +--- ./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 new file mode 100644 index 000000000000..1da5948b40d0 --- /dev/null +++ b/multimedia/phonon-gstreamer/files/patch-gstreamer__CMakeLists.txt @@ -0,0 +1,15 @@ +--- ./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) ++ + if (BUILD_PHONON_GSTREAMER) + include_directories( + ${CMAKE_CURRENT_BINARY_DIR} ++ ${PHONON_INCLUDES} + ${GSTREAMER_INCLUDE_DIR} + ${GLIB2_INCLUDE_DIR} + ${LIBXML2_INCLUDE_DIR} diff --git a/multimedia/phonon-gstreamer/pkg-descr b/multimedia/phonon-gstreamer/pkg-descr new file mode 100644 index 000000000000..fefdbc89bd37 --- /dev/null +++ b/multimedia/phonon-gstreamer/pkg-descr @@ -0,0 +1,2 @@ +Phonon is multimedia framework for QT4/KDE4. +This port provides GStreamer backend. diff --git a/multimedia/phonon-gstreamer/pkg-plist b/multimedia/phonon-gstreamer/pkg-plist new file mode 100644 index 000000000000..e37e9af961fa --- /dev/null +++ b/multimedia/phonon-gstreamer/pkg-plist @@ -0,0 +1,7 @@ +lib/kde4/plugins/phonon_backend/phonon_gstreamer.so +share/kde4/services/phononbackends/gstreamer.desktop +@dirrmtry share/kde4/services/phononbackends +@dirrmtry lib/kde4/plugins/phonon_backend +@cwd %%QT_PREFIX%% +%%QT_PLUGINDIR_REL%%/phonon_backend/libphonon_gstreamer.so +@dirrmtry %%QT_PLUGINDIR_REL%%/phonon_backend diff --git a/multimedia/phonon-xine/Makefile b/multimedia/phonon-xine/Makefile index 40a89f03d741..3775cba3045d 100644 --- a/multimedia/phonon-xine/Makefile +++ b/multimedia/phonon-xine/Makefile @@ -5,12 +5,12 @@ # $FreeBSD$ PORTNAME= phonon -PORTVERSION= 4.3.1 -PORTREVISION= 6 +PORTVERSION= 4.4.1 +PORTREVISION= 0 CATEGORIES= multimedia kde ipv6 -MASTER_SITES= ${MASTER_SITE_LOCAL} \ - http://ns.ael.ru/ports/distfiles/KDE/ -MASTER_SITE_SUBDIR= fluffy +MASTER_SITES= ${MASTER_SITE_KDE} \ + http://ns.ael.ru/~fluffy.khv/distfiles/ +MASTER_SITE_SUBDIR= ${PHONON_BRANCH}/${PORTNAME}/${PORTVERSION}/ PKGNAMESUFFIX= -xine DIST_SUBDIR= KDE @@ -21,6 +21,7 @@ LIB_DEPENDS= xine.1:${PORTSDIR}/multimedia/libxine CONFLICTS= phonon-4.3.0* +PHONON_BRANCH= stable USE_BZIP2= yes USE_CMAKE= yes USE_KDE4= kdehier automoc4 kdeprefix @@ -28,9 +29,17 @@ USE_QT_VER= 4 QT_COMPONENTS= gui dbus xml phonon \ qmake_build moc_build rcc_build uic_build +PLIST_SUB+= QT_PREFIX=${QT_PREFIX} + post-patch: #fix finding automoc when PREFIX is not matched KDE4_PREFIX ${REINPLACE_CMD} -e 's|NO_DEFAULT_PATH|${KDE4_PREFIX} NO_DEFAULT_PATH|' \ ${WRKSRC}/cmake/FindAutomoc4.cmake +pre-install: + ${MKDIR} ${QT_PLUGINDIR}/phonon_backend + +post-install: + ${LN} -sf ${PREFIX}/lib/kde4/plugins/phonon_backend/phonon_xine.so ${QT_PLUGINDIR}/phonon_backend/libphonon_xine.so + .include <bsd.port.mk> diff --git a/multimedia/phonon-xine/distinfo b/multimedia/phonon-xine/distinfo index 7c88843e413a..f8471851a1b8 100644 --- a/multimedia/phonon-xine/distinfo +++ b/multimedia/phonon-xine/distinfo @@ -1,3 +1,3 @@ -MD5 (KDE/phonon-4.3.1.tar.bz2) = 767cb68052c108e95f293f30acdef3fb -SHA256 (KDE/phonon-4.3.1.tar.bz2) = 7fb6d9efad29d7ac390d539cd516177c26cc2f92ddb9b3a5d70f2c49fc15269a -SIZE (KDE/phonon-4.3.1.tar.bz2) = 575856 +MD5 (KDE/phonon-4.4.1.tar.bz2) = 5a1444f009a77054f16fea38c08e6cb5 +SHA256 (KDE/phonon-4.4.1.tar.bz2) = 8a52b0e74c5fb5c8dd3ce65d745c7052cdcea0e7535658fbc655671cef5e5277 +SIZE (KDE/phonon-4.4.1.tar.bz2) = 625008 diff --git a/multimedia/phonon-xine/files/patch-CMakeLists.txt b/multimedia/phonon-xine/files/patch-CMakeLists.txt index a8327f774222..f80b37b9475a 100644 --- a/multimedia/phonon-xine/files/patch-CMakeLists.txt +++ b/multimedia/phonon-xine/files/patch-CMakeLists.txt @@ -1,5 +1,5 @@ --- ./CMakeLists.txt.orig 2009-01-22 11:20:44.000000000 +0300 -+++ ./CMakeLists.txt 2009-02-21 01:22:02.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}") @@ -19,23 +19,23 @@ if (GCC_IS_NEWER_THAN_4_2) set (CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fvisibility-inlines-hidden") -@@ -250,8 +250,8 @@ +@@ -255,8 +255,8 @@ + endif(APPLE) - add_subdirectory(cmake) -add_subdirectory(phonon) -add_subdirectory(includes) -+# 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) -@@ -260,13 +260,13 @@ +@@ -265,13 +265,13 @@ endif (Q_WS_WIN) if (Q_WS_X11) - add_subdirectory(gstreamer) -+# add_subdirectory(gstreamer) ++# add_subdirectory(gstreamer) add_subdirectory(xine) endif (Q_WS_X11) diff --git a/multimedia/phonon-xine/files/patch-xine_audiooutput.cpp b/multimedia/phonon-xine/files/patch-xine_audiooutput.cpp new file mode 100644 index 000000000000..b491d312385e --- /dev/null +++ b/multimedia/phonon-xine/files/patch-xine_audiooutput.cpp @@ -0,0 +1,10 @@ +--- ./xine/audiooutput.cpp ++++ ./xine/audiooutput.cpp +@@ -48,6 +48,7 @@ + + AudioOutput::AudioOutput(QObject *parent) + : AbstractAudioOutput(new AudioOutputXT, parent) ++ , m_volume(1.0) + { + } +
\ No newline at end of file diff --git a/multimedia/phonon-xine/pkg-descr b/multimedia/phonon-xine/pkg-descr index e3459ceb600e..12096a7045e7 100644 --- a/multimedia/phonon-xine/pkg-descr +++ b/multimedia/phonon-xine/pkg-descr @@ -1,2 +1,2 @@ -Phonon is multimedia framework for KDE4. +Phonon is multimedia framework for QT4/KDE4. This port provides xine backend. diff --git a/multimedia/phonon-xine/pkg-plist b/multimedia/phonon-xine/pkg-plist index 2fce39cc3232..c67415409636 100644 --- a/multimedia/phonon-xine/pkg-plist +++ b/multimedia/phonon-xine/pkg-plist @@ -9,3 +9,6 @@ share/icons/oxygen/scalable/apps/phonon-xine.svgz share/kde4/services/phononbackends/xine.desktop @dirrmtry share/kde4/services/phononbackends @dirrmtry lib/kde4/plugins/phonon_backend +@cwd %%QT_PREFIX%% +%%QT_PLUGINDIR_REL%%/phonon_backend/libphonon_xine.so +@dirrmtry %%QT_PLUGINDIR_REL%%/phonon_backend diff --git a/multimedia/phonon/Makefile b/multimedia/phonon/Makefile new file mode 100644 index 000000000000..f3ed1e46432f --- /dev/null +++ b/multimedia/phonon/Makefile @@ -0,0 +1,66 @@ +# New ports collection Makefile for: phonon +# Date created: 2008-01-30 +# Whom: Martin Wilke <miwi@FreeBSD.org> +# +# $FreeBSD$ + +PORTNAME= phonon +PORTVERSION= 4.4.1 +CATEGORIES= multimedia kde ipv6 +MASTER_SITES= ${MASTER_SITE_KDE} \ + http://ns.ael.ru/~fluffy.khv/distfiles/ +MASTER_SITE_SUBDIR= ${PHONON_BRANCH}/${PORTNAME}/${PORTVERSION}/ +DIST_SUBDIR= KDE + +MAINTAINER= kde@FreeBSD.org +COMMENT= Multimedia framework for KDE4 + +CONFLICTS= qt4-phonon-4* kdebase-runtime-4.1.[0-4]* + +PHONON_BRANCH= stable +USE_BZIP2= yes +USE_KDE4= kdehier automoc4 kdeprefix +KDE4_BUILDENV= yes +USE_QT_VER= 4 +QT_COMPONENTS= gui dbus xml qtestlib \ + qmake_build moc_build rcc_build uic_build + +OPTIONS= PULSEAUDIO "Phonon support for PulseAudio" off + +.include <bsd.port.options.mk> + +.if defined(WITH_PULSEAUDIO) +CMAKE_ARGS+= -DWITH_PulseAudio:BOOL=ON +LIB_DEPENDS+= pulse.0:${PORTSDIR}/audio/pulseaudio +USE_GNOME+= glib20 +.else +CMAKE_ARGS+= -DWITH_PulseAudio:BOOL=OFF +.endif + +PLIST_SUB+= QT_PREFIX=${QT_PREFIX} + +.if defined(WITH_QT_PHONON) +IGNORE= conflicts with Qt4 phonon. Please, deinstall qt4-phonon 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|'\ + ${PATCH_WRKSRC}/CMakeLists.txt + +post-install: + ${LN} -sf ${PREFIX}/include/phonon ${QT_INCDIR}/phonon + ${LN} -sf ${PREFIX}/include/phonon ${QT_INCDIR}/Phonon + ${LN} -sf ${PREFIX}/include/KDE/Phonon ${PREFIX}/include/phonon/Phonon + ${LN} -sf ${PREFIX}/lib/libphonon.so.4.4.0 ${QT_LIBDIR}/libphonon.so + ${LN} -sf ${PREFIX}/lib/libphonon.so.4.4.0 ${QT_LIBDIR}/libphonon.so.4 + ${LN} -sf ${PREFIX}/lib/libphononexperimental.so.4.4.0 ${QT_LIBDIR}/libphononexperimental.so + ${LN} -sf ${PREFIX}/lib/libphononexperimental.so.4.4.0 ${QT_LIBDIR}/libphononexperimental.so.4 + @${CAT} ${PKGMESSAGE} + +.include <bsd.port.mk> diff --git a/multimedia/phonon/distinfo b/multimedia/phonon/distinfo new file mode 100644 index 000000000000..f8471851a1b8 --- /dev/null +++ b/multimedia/phonon/distinfo @@ -0,0 +1,3 @@ +MD5 (KDE/phonon-4.4.1.tar.bz2) = 5a1444f009a77054f16fea38c08e6cb5 +SHA256 (KDE/phonon-4.4.1.tar.bz2) = 8a52b0e74c5fb5c8dd3ce65d745c7052cdcea0e7535658fbc655671cef5e5277 +SIZE (KDE/phonon-4.4.1.tar.bz2) = 625008 diff --git a/multimedia/phonon/files/patch-CMakeLists.txt b/multimedia/phonon/files/patch-CMakeLists.txt new file mode 100644 index 000000000000..a3b0e7e15147 --- /dev/null +++ b/multimedia/phonon/files/patch-CMakeLists.txt @@ -0,0 +1,32 @@ +--- ./CMakeLists.txt.orig 2009-01-22 11:20:44.000000000 +0300 ++++ ./CMakeLists.txt 2009-02-21 01:36:17.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") +@@ -260,8 +260,8 @@ + endif (Q_WS_WIN) + + if (Q_WS_X11) +- add_subdirectory(gstreamer) +- add_subdirectory(xine) ++# add_subdirectory(gstreamer) ++# add_subdirectory(xine) + endif (Q_WS_X11) + + if(NOT WIN32) # pkgconfig file diff --git a/multimedia/phonon/files/patch-phonon_pulsesupport.cpp b/multimedia/phonon/files/patch-phonon_pulsesupport.cpp new file mode 100644 index 000000000000..3b54bdce8fcf --- /dev/null +++ b/multimedia/phonon/files/patch-phonon_pulsesupport.cpp @@ -0,0 +1,34 @@ +--- ./phonon/pulsesupport.cpp ++++ ./phonon/pulsesupport.cpp +@@ -569,6 +569,31 @@ + return; + } + pa_operation_unref(o); ++ ++ // In the case of reconnection or simply lagging behind the stream object creation ++ // on startup (due to the probe+reconnect system), we invalidate all loaded streams ++ // and then load up info about all streams. ++ for (QMap<QString, PulseStream*>::iterator it = s_outputStreams.begin(); it != s_outputStreams.end(); ++it) { ++ PulseStream *stream = *it; ++ logMessage(QString("Phonon Output Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(stream->uuid())); ++ stream->setIndex(PA_INVALID_INDEX); ++ } ++ if (!(o = pa_context_get_sink_input_info_list(c, sink_input_cb, NULL))) { ++ logMessage(QString("pa_context_get_sink_input_info_list() failed")); ++ return; ++ } ++ pa_operation_unref(o); ++ ++ for (QMap<QString, PulseStream*>::iterator it = s_captureStreams.begin(); it != s_captureStreams.end(); ++it) { ++ PulseStream *stream = *it; ++ logMessage(QString("Phonon Capture Stream %1 is gone at the PA end. Marking it as invalid in our cache as we may reuse it.").arg(stream->uuid())); ++ stream->setIndex(PA_INVALID_INDEX); ++ } ++ if (!(o = pa_context_get_source_output_info_list(c, source_output_cb, NULL))) { ++ logMessage(QString("pa_context_get_source_output_info_list() failed")); ++ return; ++ } ++ pa_operation_unref(o); + } + + #ifdef HAVE_PULSEAUDIO_DEVICE_MANAGER
\ No newline at end of file diff --git a/multimedia/phonon/pkg-descr b/multimedia/phonon/pkg-descr new file mode 100644 index 000000000000..8b64634e7f07 --- /dev/null +++ b/multimedia/phonon/pkg-descr @@ -0,0 +1 @@ +Phonon is multimedia framework for QT4/KDE4. diff --git a/multimedia/phonon/pkg-message b/multimedia/phonon/pkg-message new file mode 100644 index 000000000000..3aaf6ee5f229 --- /dev/null +++ b/multimedia/phonon/pkg-message @@ -0,0 +1,3 @@ +Please consider to install backends for phonon: +- Xine backend (multimedia/phonon-xine) and/or +- Gstreamer backend (multimedia/phonon-gstreamer) diff --git a/multimedia/phonon/pkg-plist b/multimedia/phonon/pkg-plist new file mode 100644 index 000000000000..99f6c868d474 --- /dev/null +++ b/multimedia/phonon/pkg-plist @@ -0,0 +1,170 @@ +include/KDE/Phonon/AbstractAudioOutput +include/KDE/Phonon/AbstractMediaStream +include/KDE/Phonon/AbstractVideoOutput +include/KDE/Phonon/AddonInterface +include/KDE/Phonon/AudioDevice +include/KDE/Phonon/AudioDeviceEnumerator +include/KDE/Phonon/AudioOutput +include/KDE/Phonon/AudioOutputDevice +include/KDE/Phonon/AudioOutputDeviceModel +include/KDE/Phonon/AudioOutputInterface +include/KDE/Phonon/BackendCapabilities +include/KDE/Phonon/BackendInterface +include/KDE/Phonon/Effect +include/KDE/Phonon/EffectDescription +include/KDE/Phonon/EffectDescriptionModel +include/KDE/Phonon/EffectInterface +include/KDE/Phonon/EffectParameter +include/KDE/Phonon/EffectWidget +include/KDE/Phonon/Experimental/AbstractVideoDataOutput +include/KDE/Phonon/Experimental/AudioDataOutput +include/KDE/Phonon/Experimental/SnapshotInterface +include/KDE/Phonon/Experimental/VideoDataOutput +include/KDE/Phonon/Experimental/VideoDataOutputInterface +include/KDE/Phonon/Experimental/VideoFrame +include/KDE/Phonon/Experimental/VideoFrame2 +include/KDE/Phonon/Experimental/Visualization +include/KDE/Phonon/Global +include/KDE/Phonon/MediaController +include/KDE/Phonon/MediaNode +include/KDE/Phonon/MediaObject +include/KDE/Phonon/MediaObjectInterface +include/KDE/Phonon/MediaSource +include/KDE/Phonon/ObjectDescription +include/KDE/Phonon/ObjectDescriptionModel +include/KDE/Phonon/Path +include/KDE/Phonon/PlatformPlugin +include/KDE/Phonon/SeekSlider +include/KDE/Phonon/StreamInterface +include/KDE/Phonon/VideoPlayer +include/KDE/Phonon/VideoWidget +include/KDE/Phonon/VideoWidgetInterface +include/KDE/Phonon/VolumeFaderEffect +include/KDE/Phonon/VolumeFaderInterface +include/KDE/Phonon/VolumeSlider +include/phonon/AbstractAudioOutput +include/phonon/AbstractMediaStream +include/phonon/AbstractVideoOutput +include/phonon/AddonInterface +include/phonon/AudioCaptureDevice +include/phonon/AudioCaptureDeviceModel +include/phonon/AudioChannelDescription +include/phonon/AudioChannelDescriptionModel +include/phonon/AudioOutput +include/phonon/AudioOutputDevice +include/phonon/AudioOutputDeviceModel +include/phonon/AudioOutputInterface +include/phonon/AudioOutputInterface40 +include/phonon/AudioOutputInterface42 +include/phonon/BackendCapabilities +include/phonon/BackendInterface +include/phonon/Effect +include/phonon/EffectDescription +include/phonon/EffectDescriptionModel +include/phonon/EffectInterface +include/phonon/EffectParameter +include/phonon/EffectWidget +include/phonon/Global +include/phonon/MediaController +include/phonon/MediaNode +include/phonon/MediaObject +include/phonon/MediaObjectInterface +include/phonon/MediaSource +include/phonon/ObjectDescription +include/phonon/ObjectDescriptionData +include/phonon/ObjectDescriptionModel +include/phonon/ObjectDescriptionModelData +include/phonon/Path +include/phonon/Phonon +include/phonon/PlatformPlugin +include/phonon/SeekSlider +include/phonon/StreamInterface +include/phonon/SubtitleDescription +include/phonon/SubtitleDescriptionModel +include/phonon/VideoPlayer +include/phonon/VideoWidget +include/phonon/VideoWidgetInterface +include/phonon/VideoWidgetInterface44 +include/phonon/VideoWidgetInterfaceLatest +include/phonon/VolumeFaderEffect +include/phonon/VolumeFaderInterface +include/phonon/VolumeSlider +include/phonon/abstractaudiooutput.h +include/phonon/abstractmediastream.h +include/phonon/abstractvideooutput.h +include/phonon/addoninterface.h +include/phonon/audiodataoutput.h +include/phonon/audiodataoutputinterface.h +include/phonon/audiooutput.h +include/phonon/audiooutputinterface.h +include/phonon/backendcapabilities.h +include/phonon/backendinterface.h +include/phonon/effect.h +include/phonon/effectinterface.h +include/phonon/effectparameter.h +include/phonon/effectwidget.h +include/phonon/experimental/abstractaudiodataoutput.h +include/phonon/experimental/abstractvideodataoutput.h +include/phonon/experimental/audiodataoutput.h +include/phonon/experimental/audiodataoutputinterface.h +include/phonon/experimental/audioformat.h +include/phonon/experimental/avcapture.h +include/phonon/experimental/backendcapabilities.h +include/phonon/experimental/backendinterface.h +include/phonon/experimental/export.h +include/phonon/experimental/globalconfig.h +include/phonon/experimental/mediasource.h +include/phonon/experimental/objectdescription.h +include/phonon/experimental/packet.h +include/phonon/experimental/packetpool.h +include/phonon/experimental/phononnamespace.h +include/phonon/experimental/snapshotinterface.h +include/phonon/experimental/videodataoutput.h +include/phonon/experimental/videodataoutput2.h +include/phonon/experimental/videodataoutputinterface.h +include/phonon/experimental/videoframe.h +include/phonon/experimental/videoframe2.h +include/phonon/experimental/videowidget.h +include/phonon/experimental/visualization.h +include/phonon/globalconfig.h +include/phonon/mediacontroller.h +include/phonon/medianode.h +include/phonon/mediaobject.h +include/phonon/mediaobjectinterface.h +include/phonon/mediasource.h +include/phonon/objectdescription.h +include/phonon/objectdescriptionmodel.h +include/phonon/path.h +include/phonon/phonon_export.h +include/phonon/phonondefs.h +include/phonon/phononnamespace.h +include/phonon/platformplugin.h +include/phonon/pulsesupport.h +include/phonon/seekslider.h +include/phonon/streaminterface.h +include/phonon/videoplayer.h +include/phonon/videowidget.h +include/phonon/videowidgetinterface.h +include/phonon/volumefadereffect.h +include/phonon/volumefaderinterface.h +include/phonon/volumeslider.h +lib/libphonon.so +lib/libphonon.so.4 +lib/libphonon.so.4.4.0 +lib/libphononexperimental.so +lib/libphononexperimental.so.4 +lib/libphononexperimental.so.4.4.0 +libdata/pkgconfig/phonon.pc +share/dbus-1/interfaces/org.kde.Phonon.AudioOutput.xml +@dirrm include/phonon/experimental +@dirrm include/phonon +@dirrm include/KDE/Phonon/Experimental +@dirrm include/KDE/Phonon +@cwd %%QT_PREFIX%% +%%QT_INCDIR_REL%%/phonon +%%QT_INCDIR_REL%%/Phonon +%%QT_LIBDIR_REL%%/libphonon.so +%%QT_LIBDIR_REL%%/libphonon.so.4 +%%QT_LIBDIR_REL%%/libphononexperimental.so +%%QT_LIBDIR_REL%%/libphononexperimental.so.4 + |