[oe-commits] Paul Eggleton : qmmp: update to 0.6.6 and fix
git at git.openembedded.org
git at git.openembedded.org
Wed Feb 6 09:38:27 UTC 2013
Module: openembedded-core.git
Branch: master-next
Commit: 12484dca3bf09dd9a03442a223885deb7472a6cd
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=12484dca3bf09dd9a03442a223885deb7472a6cd
Author: Paul Eggleton <paul.eggleton at linux.intel.com>
Date: Tue Feb 5 15:55:46 2013 +0000
qmmp: update to 0.6.6 and fix
* Update to 0.6.6
* Fix compilation failure due to unconditional call to
QApplication::commitData()
* Disable /usr/local host paths to avoid compilation warnings
* Force use of the cmake configure instead of qmake as the latter is not
dynamic with Qmmp and doesn't let you disable certain dependencies
(e.g. enca)
* Add libsndfile1, libsamplerate0 and curl to DEPENDS since their use
will be non-deterministic otherwise
* Explicitly disable library-requiring options that we don't have
available in OE-Core so that they don't get used if they happen to be
in the sysroot
* Update LIC_FILES_CHKSUM since there were cosmetic changes to the
license file (mostly reformatting and change of references to LGPL
from "Library" to "Lesser".)
Fixes [YOCTO #3822].
Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
Signed-off-by: Saul Wold <sgw at linux.intel.com>
---
meta/recipes-qt/qt-apps/qmmp/no-host-paths.patch | 25 +++++++
.../qt-apps/qmmp/no-sessionmanager.patch | 21 ++++++
meta/recipes-qt/qt-apps/qmmp_0.6.1.bb | 53 --------------
meta/recipes-qt/qt-apps/qmmp_0.6.6.bb | 76 ++++++++++++++++++++
4 files changed, 122 insertions(+), 53 deletions(-)
diff --git a/meta/recipes-qt/qt-apps/qmmp/no-host-paths.patch b/meta/recipes-qt/qt-apps/qmmp/no-host-paths.patch
new file mode 100644
index 0000000..de17b4e
--- /dev/null
+++ b/meta/recipes-qt/qt-apps/qmmp/no-host-paths.patch
@@ -0,0 +1,25 @@
+Do not include /usr/include host paths
+
+These were added upstream apparently for freebsd support, but trigger
+compiler warnings during the build and could be dangerous, so remove
+them.
+
+Upstream-Status: Inappropriate [cross]
+
+Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
+
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -1,12 +1,5 @@
+ cmake_minimum_required(VERSION 2.6.0)
+
+-#freebsd support
+-include_directories(SYSTEM /usr/local/include)
+-link_directories(/usr/local/lib)
+-link_directories(/usr/local/lib32)
+-link_directories(/usr/local/lib64)
+-SET(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} /usr/local/include)
+-
+ #extract version from qmmp.h
+ FILE(STRINGS "${CMAKE_CURRENT_SOURCE_DIR}/src/qmmp/qmmp.h"
+ QMMP_VERSION_DATA REGEX "^#define[ \t]+QMMP_VERSION_[A-Z]+[ \t]+[0-9]+.*$")
diff --git a/meta/recipes-qt/qt-apps/qmmp/no-sessionmanager.patch b/meta/recipes-qt/qt-apps/qmmp/no-sessionmanager.patch
new file mode 100644
index 0000000..5e2978b
--- /dev/null
+++ b/meta/recipes-qt/qt-apps/qmmp/no-sessionmanager.patch
@@ -0,0 +1,21 @@
+Don't call session manager function if not enabled
+
+If session management has been disabled we will get a compilation
+failure if we try to call QApplication::commitData() so don't do so if
+it is disabled.
+
+Upstream-Status: Pending
+
+Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
+
+--- a/src/app/qmmpapplication.cpp
++++ b/src/app/qmmpapplication.cpp
+@@ -29,6 +29,8 @@ void QmmpApplication::commitData(QSessionManager &manager)
+ {
+ if(UiHelper::instance())
+ UiHelper::instance()->exit();
++#ifndef QT_NO_SESSIONMANAGER
+ else
+ QApplication::commitData(manager);
++#endif
+ }
diff --git a/meta/recipes-qt/qt-apps/qmmp_0.6.1.bb b/meta/recipes-qt/qt-apps/qmmp_0.6.1.bb
deleted file mode 100644
index ed096e9..0000000
--- a/meta/recipes-qt/qt-apps/qmmp_0.6.1.bb
+++ /dev/null
@@ -1,53 +0,0 @@
-DESCRIPTION = "Qmmp (Qt-based Multimedia Player) is an audio-player, written with help of Qt library"
-HOMEPAGE = "http://qmmp.ylsoftware.com"
-LICENSE = "GPLv2"
-LICENSE_FLAGS = "commercial"
-LIC_FILES_CHKSUM = "file://COPYING;md5=393a5ca445f6965873eca0259a17f833"
-SECTION = "multimedia"
-
-PR = "r1"
-
-DEPENDS = "taglib libmad libvorbis libogg alsa-lib"
-
-SRC_URI = "http://qmmp.ylsoftware.com/files/${BPN}-${PV}.tar.bz2"
-
-SRC_URI[md5sum] = "23a1a3aa924da901ebc8327ea76135d4"
-SRC_URI[sha256sum] = "b48be8c0e3882088919a77ce7b619cfc99d32af29cc688ba8749a58cbb25fb6f"
-
-inherit cmake qt4x11
-
-export EXTRA_OECMAKE = "-DQT_QMAKE_EXECUTABLE=${OE_QMAKE_QMAKE} \
- -DQT_LRELEASE_EXECUTABLE=${OE_QMAKE_LRELEASE} \
- -DQT_MOC_EXECUTABLE=${OE_QMAKE_MOC} \
- -DQT_UIC_EXECUTABLE=${OE_QMAKE_UIC} \
- -DQT_RCC_EXECUTABLE=${OE_QMAKE_RCC} \
- -DQT_LIBRARY_DIR=${OE_QMAKE_LIBDIR_QT} \
- -DQT_HEADERS_DIR=${OE_QMAKE_INCDIR_QT} \
- -DQT_QTCORE_INCLUDE_DIR=${OE_QMAKE_INCDIR_QT}/QtCore \
- "
-PACKAGES_DYNAMIC += "^qmmp-plugin-.* "
-
-
-python populate_packages_prepend () {
- qmmp_libdir = d.expand('${libdir}/qmmp')
- gd = d.expand('${D}/${libdir}/qmmp')
- plug_dirs = os.listdir(gd)
-
- for plug_dir in plug_dirs:
- g_plug_dir = os.path.join(qmmp_libdir,plug_dir)
- do_split_packages(d, g_plug_dir, '^lib(.*)\.so$', 'qmmp-plugin-' + plug_dir.lower() + '-%s', 'Qmmp' + plug_dir + 'plugin for %s')
-}
-
-FILES_${PN} = "\
- ${bindir}/qmmp \
- ${libdir}/lib*${SOLIBS} \
- ${datadir}/icons/* \
- ${datadir}/qmmp/images/* \
- ${datadir}/applications/* \
- "
-
-FILES_${PN}-dbg += "\
- ${libdir}/qmmp/*/.debug/* \
- "
-
-RDEPENDS_${PN} += "taglib alsa-lib libmad curl"
diff --git a/meta/recipes-qt/qt-apps/qmmp_0.6.6.bb b/meta/recipes-qt/qt-apps/qmmp_0.6.6.bb
new file mode 100644
index 0000000..2f5e0d5
--- /dev/null
+++ b/meta/recipes-qt/qt-apps/qmmp_0.6.6.bb
@@ -0,0 +1,76 @@
+DESCRIPTION = "Qmmp (Qt-based Multimedia Player) is an audio-player, written with help of Qt library"
+HOMEPAGE = "http://qmmp.ylsoftware.com"
+LICENSE = "GPLv2"
+LICENSE_FLAGS = "commercial"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+SECTION = "multimedia"
+
+DEPENDS = "taglib libmad libvorbis libogg alsa-lib libsndfile1 libsamplerate0 curl"
+
+SRC_URI = "http://qmmp.ylsoftware.com/files/${BPN}-${PV}.tar.bz2 \
+ file://no-host-paths.patch \
+ file://no-sessionmanager.patch"
+
+SRC_URI[md5sum] = "0131a9bf7b98737c1a6fd6e1a897e2b2"
+SRC_URI[sha256sum] = "dfa973cca80c020a85a11bb66701a3804f9fde326440abb179559c98bf3b5b99"
+
+inherit cmake qt4x11
+
+QMMP_PLUGIN_OPTIONS ??= "\
+ -DUSE_MMS:BOOL=FALSE \
+ -DUSE_MPC:BOOL=FALSE \
+ -DUSE_MODPLUG:BOOL=FALSE \
+ -DUSE_WAVPACK:BOOL=FALSE \
+ -DUSE_FFMPEG:BOOL=FALSE \
+ -DUSE_AAC:BOOL=FALSE \
+ -DUSE_CDA:BOOL=FALSE \
+ -DUSE_MIDI:BOOL=FALSE \
+ -DUSE_GME:BOOL=FALSE \
+ -DUSE_OSS4:BOOL=FALSE \
+ -DUSE_JACK:BOOL=FALSE \
+ -DUSE_BS2B:BOOL=FALSE \
+ -DUSE_PROJECTM:BOOL=FALSE \
+ -DUSE_ENCA:BOOL=FALSE \
+ "
+
+export EXTRA_OECMAKE = "-DQT_QMAKE_EXECUTABLE=${OE_QMAKE_QMAKE} \
+ -DQT_LRELEASE_EXECUTABLE=${OE_QMAKE_LRELEASE} \
+ -DQT_MOC_EXECUTABLE=${OE_QMAKE_MOC} \
+ -DQT_UIC_EXECUTABLE=${OE_QMAKE_UIC} \
+ -DQT_RCC_EXECUTABLE=${OE_QMAKE_RCC} \
+ -DQT_LIBRARY_DIR=${OE_QMAKE_LIBDIR_QT} \
+ -DQT_HEADERS_DIR=${OE_QMAKE_INCDIR_QT} \
+ -DQT_QTCORE_INCLUDE_DIR=${OE_QMAKE_INCDIR_QT}/QtCore \
+ ${QMMP_PLUGIN_OPTIONS} \
+ "
+
+do_configure() {
+ # Ensure we get the cmake configure and not qmake
+ cmake_do_configure
+}
+
+PACKAGES_DYNAMIC += "^qmmp-plugin-.* "
+
+python populate_packages_prepend () {
+ qmmp_libdir = d.expand('${libdir}/qmmp')
+ gd = d.expand('${D}/${libdir}/qmmp')
+ plug_dirs = os.listdir(gd)
+
+ for plug_dir in plug_dirs:
+ g_plug_dir = os.path.join(qmmp_libdir,plug_dir)
+ do_split_packages(d, g_plug_dir, '^lib(.*)\.so$', 'qmmp-plugin-' + plug_dir.lower() + '-%s', 'Qmmp' + plug_dir + 'plugin for %s')
+}
+
+FILES_${PN} = "\
+ ${bindir}/qmmp \
+ ${libdir}/lib*${SOLIBS} \
+ ${datadir}/icons/* \
+ ${datadir}/qmmp/images/* \
+ ${datadir}/applications/* \
+ "
+
+FILES_${PN}-dbg += "\
+ ${libdir}/qmmp/*/.debug/* \
+ "
+
+RDEPENDS_${PN} += "taglib alsa-lib libmad curl"
More information about the Openembedded-commits
mailing list