automatic version update by autodist [release 1.2.3-1mamba;Sun Apr 27 2014]

This commit is contained in:
Automatic Build System 2024-01-05 21:25:21 +01:00
parent 9f07390407
commit d6a7295886
6 changed files with 579 additions and 0 deletions

View File

@ -1,2 +1,4 @@
# clementine # clementine
Clementine is a modern music player and library organiser. Clementine is a port of Amarok 1.4, with some features rewritten to take advantage of Qt4.

View File

@ -0,0 +1,283 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 34f6951..b5b38e9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -9,7 +9,18 @@ include(cmake/Rpm.cmake)
find_package(Qt4 4.5.0 REQUIRED QtCore QtGui QtOpenGL QtSql QtNetwork QtXml)
if(UNIX AND NOT APPLE)
- find_package(Qt4 REQUIRED QtDbus)
+ option(ENABLE_DBUS "Enable D-Bus, MPRIS and native notifications. Required for DeviceKit and Wii remote support" ON)
+ if(ENABLE_DBUS)
+ find_package(Qt4 REQUIRED QtDbus)
+ set(HAVE_DBUS ON)
+
+ option(ENABLE_DEVICEKIT "DeviceKit backend" ON)
+ if(ENABLE_DEVICEKIT)
+ set(HAVE_DEVICEKIT ON)
+ endif(ENABLE_DEVICEKIT)
+
+ option(ENABLE_WIIMOTEDEV "Enable Wii remote support in Clementine" ON)
+ endif(ENABLE_DBUS)
endif(UNIX AND NOT APPLE)
find_package(Qt4 COMPONENTS Phonon QtWebKit)
@@ -127,10 +138,6 @@ option(BUNDLE_PROJECTM_PRESETS "Install Clementine's own copies of libprojectm p
option(ENABLE_SOUNDMENU "Add Clementine to the Gnome sound menu" ON)
option(ENABLE_LIBLASTFM "Use liblastfm for fetching song info, scrobbling and radio streams" ON)
-if(NOT APPLE AND NOT WIN32)
- option(ENABLE_WIIMOTEDEV "Enable Wii remote support in Clementine" ON)
-endif(NOT APPLE AND NOT WIN32)
-
if(ENABLE_LIBGPOD AND LIBGPOD_FOUND)
set(HAVE_LIBGPOD ON)
endif(ENABLE_LIBGPOD AND LIBGPOD_FOUND)
@@ -252,10 +259,12 @@ add_custom_target(uninstall
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
# Show a summary of what we have enabled
+summary_add("devices: DeviceKit backend" HAVE_DEVICEKIT)
summary_add("devices: iPod classic support" HAVE_LIBGPOD)
summary_add("devices: iPod Touch, iPhone, iPad support" HAVE_IMOBILEDEVICE)
summary_add("devices: MTP support" HAVE_LIBMTP)
summary_add("devices: GIO backend" HAVE_GIO)
+summary_add("D-Bus support" HAVE_DBUS)
summary_add("Gnome sound menu integration" HAVE_LIBINDICATE)
summary_add("Wiimote support" ENABLE_WIIMOTEDEV)
summary_add("Visualisations" ENABLE_VISUALISATIONS)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 530ff23..e327701 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -557,7 +557,7 @@ else(APPLE)
endif(APPLE)
# DBUS and MPRIS - Linux specific
-if(NOT APPLE AND NOT WIN32)
+if(HAVE_DBUS)
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/dbus)
# Hack to get it to generate interfaces without namespaces - required
@@ -593,12 +593,14 @@ if(NOT APPLE AND NOT WIN32)
dbus/notification)
# DeviceKit DBUS interfaces
+ if(HAVE_DEVICEKIT)
qt4_add_dbus_interface(SOURCES
dbus/org.freedesktop.UDisks.xml
dbus/udisks)
qt4_add_dbus_interface(SOURCES
dbus/org.freedesktop.UDisks.Device.xml
dbus/udisksdevice)
+ endif(HAVE_DEVICEKIT)
# MPRIS source
list(APPEND SOURCES core/mpris.cpp core/mpris2.cpp)
@@ -622,12 +624,14 @@ if(NOT APPLE AND NOT WIN32)
endif(ENABLE_WIIMOTEDEV)
# DeviceKit lister source
+ if(HAVE_DEVICEKIT)
list(APPEND SOURCES devices/devicekitlister.cpp)
list(APPEND HEADERS devices/devicekitlister.h)
+ endif(HAVE_DEVICEKIT)
# Gnome Screensaver DBus interface
list(APPEND SOURCES ui/dbusscreensaver.cpp)
-endif(NOT APPLE AND NOT WIN32)
+endif(HAVE_DBUS)
# Libgpod device backend
if(HAVE_LIBGPOD)
diff --git a/src/core/player.cpp b/src/core/player.cpp
index 2c0ba2d..3b26e95 100644
--- a/src/core/player.cpp
+++ b/src/core/player.cpp
@@ -39,7 +39,7 @@
# include "radio/lastfmservice.h"
#endif
-#ifdef Q_WS_X11
+#ifdef HAVE_DBUS
# include "mpris.h"
# include "mpris2.h"
# include <QDBusConnection>
@@ -77,7 +77,7 @@ Player::Player(MainWindow* main_window, PlaylistManager* playlists,
connect(playlists, SIGNAL(CurrentSongChanged(Song)),
art_loader_, SLOT(LoadArt(Song)));
-#ifdef Q_WS_X11
+#ifdef HAVE_DBUS
// MPRIS DBus interface.
qDBusRegisterMetaType<QImage>();
qDBusRegisterMetaType<TrackMetadata>();
diff --git a/src/core/player.h b/src/core/player.h
index ef6999b..94b247b 100644
--- a/src/core/player.h
+++ b/src/core/player.h
@@ -42,7 +42,7 @@ namespace mpris {
class ArtLoader;
}
-#ifdef Q_WS_X11
+#ifdef HAVE_DBUS
# include <QDBusArgument>
QDBusArgument& operator<< (QDBusArgument& arg, const QImage& image);
const QDBusArgument& operator>> (const QDBusArgument& arg, QImage& image);
diff --git a/src/devices/devicemanager.cpp b/src/devices/devicemanager.cpp
index a4fe94a..cc12c21 100644
--- a/src/devices/devicemanager.cpp
+++ b/src/devices/devicemanager.cpp
@@ -182,7 +182,7 @@ DeviceManager::DeviceManager(BackgroundThread<Database>* database,
connected_devices_model_ = new DeviceStateFilterModel(this);
connected_devices_model_->setSourceModel(this);
-#ifdef Q_WS_X11
+#ifdef HAVE_DEVICEKIT
AddLister(new DeviceKitLister);
#endif
#ifdef HAVE_GIO
diff --git a/src/ui/screensaver.cpp b/src/ui/screensaver.cpp
index a8353b1..b548ce1 100644
--- a/src/ui/screensaver.cpp
+++ b/src/ui/screensaver.cpp
@@ -19,7 +19,7 @@
#include <QtGlobal>
-#ifdef Q_WS_X11
+#ifdef HAVE_DBUS
#include "dbusscreensaver.h"
#include <QDBusConnection>
#include <QDBusConnectionInterface>
@@ -42,7 +42,7 @@ Screensaver* Screensaver::screensaver_ = 0;
Screensaver* Screensaver::GetScreensaver() {
if (!screensaver_) {
- #if defined(Q_WS_X11)
+ #if defined(HAVE_DBUS)
if (QDBusConnection::sessionBus().interface()->isServiceRegistered(kGnomeService)) {
screensaver_ = new DBusScreensaver(kGnomeService, kGnomePath, kGnomeInterface);
} else if (QDBusConnection::sessionBus().interface()->isServiceRegistered(kKdeService)) {
diff --git a/src/widgets/osd.cpp b/src/widgets/osd.cpp
index 29dc2ff..f38379f 100644
--- a/src/widgets/osd.cpp
+++ b/src/widgets/osd.cpp
@@ -19,7 +19,7 @@
#include "osdpretty.h"
#include "ui/systemtrayicon.h"
-#ifdef Q_WS_X11
+#ifdef HAVE_DBUS
# include "dbus/notification.h"
#endif
@@ -193,7 +193,7 @@ void OSD::ShowMessage(const QString& summary,
}
}
-#ifndef Q_WS_X11
+#ifndef HAVE_DBUS
void OSD::CallFinished(QDBusPendingCallWatcher*) {}
#endif
diff --git a/src/widgets/osd.h b/src/widgets/osd.h
index 7e25d1a..e899c63 100644
--- a/src/widgets/osd.h
+++ b/src/widgets/osd.h
@@ -33,7 +33,7 @@ class SystemTrayIcon;
class QDBusPendingCallWatcher;
-#ifdef Q_WS_X11
+#ifdef HAVE_DBUS
# include <QDBusArgument>
# include <boost/scoped_ptr.hpp>
@@ -127,7 +127,7 @@ class OSD : public QObject {
GrowlNotificationWrapper* wrapper_;
#endif // Q_OS_DARWIN
-#ifdef Q_WS_X11
+#ifdef HAVE_DBUS
boost::scoped_ptr<OrgFreedesktopNotificationsInterface> interface_;
uint notification_id_;
QDateTime last_notification_time_;
diff --git a/src/widgets/osd_x11.cpp b/src/widgets/osd_x11.cpp
index b87e0ad..d1d26d6 100644
--- a/src/widgets/osd_x11.cpp
+++ b/src/widgets/osd_x11.cpp
@@ -16,11 +16,13 @@
*/
#include "osd.h"
-#include "dbus/notification.h"
-#include <QCoreApplication>
#include <QtDebug>
-#include <QTextDocument>
+
+#ifdef HAVE_DBUS
+ #include "dbus/notification.h"
+ #include <QCoreApplication>
+ #include <QTextDocument>
using boost::scoped_ptr;
@@ -52,8 +54,10 @@ const QDBusArgument& operator>> (const QDBusArgument& arg, QImage& image) {
Q_ASSERT(0);
return arg;
}
+#endif
void OSD::Init() {
+ #ifdef HAVE_DBUS
interface_.reset(new OrgFreedesktopNotificationsInterface(
OrgFreedesktopNotificationsInterface::staticInterfaceName(),
"/org/freedesktop/Notifications",
@@ -63,10 +67,15 @@ void OSD::Init() {
}
notification_id_ = 0;
+ #endif
}
bool OSD::SupportsNativeNotifications() {
+ #ifdef HAVE_DBUS
return true;
+ #else
+ return false;
+ #endif
}
bool OSD::SupportsTrayPopups() {
@@ -75,6 +84,7 @@ bool OSD::SupportsTrayPopups() {
void OSD::ShowMessageNative(const QString& summary, const QString& message,
const QString& icon, const QImage& image) {
+ #ifdef HAVE_DBUS
QVariantMap hints;
if (!image.isNull()) {
hints["image_data"] = QVariant(image);
@@ -101,8 +111,12 @@ void OSD::ShowMessageNative(const QString& summary, const QString& message,
QDBusPendingCallWatcher* watcher = new QDBusPendingCallWatcher(reply, this);
connect(watcher, SIGNAL(finished(QDBusPendingCallWatcher*)),
SLOT(CallFinished(QDBusPendingCallWatcher*)));
+ #else
+ qWarning() << __PRETTY_FUNCTION__ << ": NOT IMPLEMENTED";
+ #endif
}
+#ifdef HAVE_DBUS
void OSD::CallFinished(QDBusPendingCallWatcher* watcher) {
scoped_ptr<QDBusPendingCallWatcher> w(watcher);
@@ -118,3 +132,4 @@ void OSD::CallFinished(QDBusPendingCallWatcher* watcher) {
last_notification_time_ = QDateTime::currentDateTime();
}
}
+#endif
-
1.6.1

View File

@ -0,0 +1,55 @@
diff -Nru clementine-0.7.1.orig/src/devices/giolister.cpp clementine-0.7.1/src/devices/giolister.cpp
--- clementine-0.7.1.orig/src/devices/giolister.cpp 2011-03-29 21:23:34.000000000 +0200
+++ clementine-0.7.1/src/devices/giolister.cpp 2011-11-10 06:00:35.671356613 +0100
@@ -458,19 +458,34 @@
if (info.volume) {
if (g_volume_can_eject(info.volume)) {
- g_volume_eject(info.volume, G_MOUNT_UNMOUNT_NONE, NULL,
- (GAsyncReadyCallback) VolumeEjectFinished, NULL);
+ g_volume_eject_with_operation(
+ info.volume,
+ G_MOUNT_UNMOUNT_NONE,
+ NULL,
+ NULL,
+ (GAsyncReadyCallback) VolumeEjectFinished,
+ NULL);
g_object_unref(info.volume);
return;
}
}
if (g_mount_can_eject(info.mount)) {
- g_mount_eject(info.mount, G_MOUNT_UNMOUNT_NONE, NULL,
- (GAsyncReadyCallback) MountEjectFinished, NULL);
+ g_mount_eject_with_operation(
+ info.mount,
+ G_MOUNT_UNMOUNT_NONE,
+ NULL,
+ NULL,
+ (GAsyncReadyCallback) MountEjectFinished,
+ NULL);
} else if (g_mount_can_unmount(info.mount)) {
- g_mount_unmount(info.mount, G_MOUNT_UNMOUNT_NONE, NULL,
- (GAsyncReadyCallback) MountUnmountFinished, NULL);
+ g_mount_unmount_with_operation(
+ info.mount,
+ G_MOUNT_UNMOUNT_NONE,
+ NULL,
+ NULL,
+ (GAsyncReadyCallback) MountUnmountFinished,
+ NULL);
}
}
--- clementine-0.7.1.orig/src/main.cpp 2011-03-29 21:16:24.000000000 +0200
+++ clementine-0.7.1/src/main.cpp 2011-11-10 06:16:27.777883663 +0100
@@ -61,7 +61,7 @@
#include <QtDebug>
#include <glib-object.h>
-#include <glib/gutils.h>
+#include <glib.h>
#include <gst/gst.h>
#include <boost/scoped_ptr.hpp>

View File

@ -0,0 +1,63 @@
commit 119c9c27ac74d4e0f2941a66143afde2b3c64870
Author: David Sansome <m...@davidsansome.com>
Date: Tue Mar 27 21:24:38 2012 +0100
Detect libimobiledevice 1.1.2 and use its new "udid" field instead of "uuid".
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index c250704..3339ba1 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -25,6 +25,10 @@ if (QT_VERSION_MINOR GREATER 5)
endif(QT_VERSION_MINOR GREATER 7)
endif(QT_VERSION_MINOR GREATER 5)
+if(ENABLE_IMOBILEDEVICE AND IMOBILEDEVICE_VERSION VERSION_GREATER 1.1.1)
+ set(IMOBILEDEVICE_USES_UDIDS ON)
+endif()
+
include_directories(${CMAKE_BINARY_DIR})
include_directories(${GLIB_INCLUDE_DIRS})
include_directories(${LIBXML_INCLUDE_DIRS})
@@ -1079,6 +1083,7 @@ if(HAVE_IMOBILEDEVICE)
${USBMUXD_LIBRARIES}
gstafcsrc
)
+ link_directories(${IMOBILEDEVICE_LIBRARY_DIRS})
link_directories(${USBMUXD_LIBRARY_DIRS})
endif(HAVE_IMOBILEDEVICE)
diff --git a/src/config.h.in b/src/config.h.in
index aae8b77..e2b1ce5 100644
--- a/src/config.h.in
+++ b/src/config.h.in
@@ -39,6 +39,7 @@
#cmakedefine HAVE_SPOTIFY
#cmakedefine HAVE_STATIC_SQLITE
#cmakedefine HAVE_WIIMOTEDEV
+#cmakedefine IMOBILEDEVICE_USES_UDIDS
#cmakedefine LEOPARD
#cmakedefine SNOW_LEOPARD
#cmakedefine USE_INSTALL_PREFIX
diff --git a/src/devices/ilister.cpp b/src/devices/ilister.cpp
index c0140d9..a27f37b 100644
--- a/src/devices/ilister.cpp
+++ b/src/devices/ilister.cpp
@@ -1,3 +1,4 @@
+#include "config.h"
#include "ilister.h"
#include "imobiledeviceconnection.h"
@@ -17,7 +18,11 @@ void iLister::Init() {
void iLister::EventCallback(const idevice_event_t* event, void* context) {
iLister* me = reinterpret_cast<iLister*>(context);
+#ifdef IMOBILEDEVICE_USES_UDIDS
+ const char* uuid = event->udid;
+#else
const char* uuid = event->uuid;
+#endif
switch (event->event) {
case IDEVICE_DEVICE_ADD:

View File

@ -0,0 +1,22 @@
diff -ru Clementine-1.2.2/src/core/utilities.cpp Clementine-1.2.2.orig/src/core/utilities.cpp
--- Clementine-1.2.2/src/core/utilities.cpp 2014-03-07 15:44:34.000000000 +0100
+++ Clementine-1.2.2.orig/src/core/utilities.cpp 2014-03-22 12:21:28.919223867 +0100
@@ -50,6 +50,7 @@
#endif
#ifdef Q_OS_LINUX
+# include <unistd.h>
# include <sys/syscall.h>
#endif
#ifdef Q_OS_DARWIN
diff -ru Clementine-1.2.2/src/internet/spotifyblobdownloader.cpp Clementine-1.2.2.orig/src/internet/spotifyblobdownloader.cpp
--- Clementine-1.2.2/src/internet/spotifyblobdownloader.cpp 2014-03-07 15:44:34.000000000 +0100
+++ Clementine-1.2.2.orig/src/internet/spotifyblobdownloader.cpp 2014-03-22 16:07:52.461080157 +0100
@@ -21,6 +21,7 @@
#include "core/logging.h"
#include "core/network.h"
#include "core/utilities.h"
+#include "unistd.h"
#include <QCoreApplication>
#include <QDir>

154
clementine.spec Normal file
View File

@ -0,0 +1,154 @@
Name: clementine
Version: 1.2.3
Release: 1mamba
Summary: A modern music player and library organiser
Group: Graphical Desktop/Applications/Multimedia
Vendor: openmamba
Distribution: openmamba
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
URL: http://code.google.com/p/clementine-player/
Source: https://github.com/clementine-player/Clementine.git/%{version}/Clementine-%{version}.tar.bz2
#Source: http://clementine-player.googlecode.com/files/clementine-%{version}.tar.gz
Patch0: %{name}-0.6-optional-dbus-devicekit.patch
Patch1: %{name}-0.7.1-glibc-2.31.patch
Patch2: %{name}-1.0.1-libimobiledevice-1.1.2.patch
Patch3: clementine-1.2.2-glibc-2.19.patch
License: GPL
## AUTOBUILDREQ-BEGIN
BuildRequires: glibc-devel
BuildRequires: libcdio-devel
BuildRequires: libchromaprint-devel
BuildRequires: libfftw-devel
BuildRequires: libgcc
BuildRequires: libgdk-pixbuf-devel
BuildRequires: libGL-devel
BuildRequires: libglew-devel
BuildRequires: libglib-devel
BuildRequires: libGLU-devel
BuildRequires: libgpod-devel
BuildRequires: libgst-plugins-base010-devel
BuildRequires: libgstreamer010-devel
BuildRequires: libICE-devel
BuildRequires: libimobiledevice-devel
BuildRequires: libmtp-devel
BuildRequires: libopenssl-devel
BuildRequires: libplist-devel
BuildRequires: libqca-devel
BuildRequires: libqjson-devel
BuildRequires: libqt4-devel
BuildRequires: libSM-devel
BuildRequires: libstdc++6-devel
BuildRequires: libtag-devel
BuildRequires: libusb-devel
BuildRequires: libusbmuxd-devel
BuildRequires: libX11-devel
BuildRequires: libXext-devel
BuildRequires: libxml2-devel
BuildRequires: libz-devel
BuildRequires: protobuf-devel
## AUTOBUILDREQ-END
BuildRequires: cmake
BuildRequires: liblastfm-devel >= 0.3.3
BuildRequires: libboost-devel
BuildRequires: protobuf-devel >= 2.4.1
BuildRequires: libavformat-devel
Requires: udisks
Requires: upower
Requires: gst-plugins-good010
Requires: gst-plugins-ugly010
BuildRoot: %{_tmppath}/%{name}-%{version}-root
%description
Clementine is a modern music player and library organiser. Clementine is a port of Amarok 1.4, with some features rewritten to take advantage of Qt4.
%prep
%setup -q -n Clementine-%{version}
#%patch0 -p1
#%patch1 -p1
#%patch2 -p1
#%patch3 -p1
%build
%cmake -d build
%make
%install
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%makeinstall -C build
%clean
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
%post
update-desktop-database &> /dev/null || :
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
%postun
update-desktop-database &> /dev/null || :
if [ $1 -eq 0 ] ; then
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
%{_bindir}/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
fi
:
%posttrans
%{_bindir}/gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
%files
%defattr(-,root,root)
%{_bindir}/clementine-tagreader
%{_bindir}/clementine
%{_datadir}/applications/clementine.desktop
%{_datadir}/kde4/services/clementine-*.protocol
%{_datadir}/icons/hicolor/*/apps/application-x-clementine.png
%{_datadir}/icons/hicolor/scalable/apps/application-x-clementine.svg
%dir %{_datadir}/clementine
%dir %{_datadir}/clementine/projectm-presets
%{_datadir}/clementine/projectm-presets/*
%doc COPYING
%changelog
* Sun Apr 27 2014 Automatic Build System <autodist@mambasoft.it> 1.2.3-1mamba
- automatic version update by autodist
* Sat Mar 01 2014 Silvan Calarco <silvan.calarco@mambasoft.it> 1.2.2-1mamba
- update to 1.2.2
* Tue Nov 26 2013 Automatic Build System <autodist@mambasoft.it> 1.2.1-1mamba
- automatic version update by autodist
* Tue Nov 19 2013 Silvan Calarco <silvan.calarco@mambasoft.it> 1.2.0-2mamba
- rebuilt with protobuf 2.5.0
* Sun Oct 20 2013 Automatic Build System <autodist@mambasoft.it> 1.2.0-1mamba
- automatic version update by autodist
* Sun Nov 18 2012 Automatic Build System <autodist@mambasoft.it> 1.1.1-1mamba
- automatic version update by autodist
* Sun Oct 28 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 1.1.0-2mamba
- require gst-plugins-good010 and gst-pluguns-ugly010 (devel)
* Sat Oct 27 2012 Automatic Build System <autodist@mambasoft.it> 1.1.0-1mamba
- automatic version update by autodist
* Mon Aug 13 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 1.0.1-2mamba
- rebuilt with protobuf 2.4.1
* Tue May 15 2012 Silvan Calarco <silvan.calarco@mambasoft.it> 1.0.1-1mamba
- update to 1.0.1
* Thu Nov 10 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 0.7.1-1mamba
- update to 0.7.1
* Sat Feb 19 2011 Silvan Calarco <silvan.calarco@mambasoft.it> 0.6-1mamba
- update to 0.6
* Fri Dec 03 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 0.5.3-1mamba
- update to 0.5.3
* Tue Sep 21 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 0.5.1-1mamba
- update to 0.5.1
* Mon Sep 20 2010 Silvan Calarco <silvan.calarco@mambasoft.it> 0.5-1mamba
- package created by autospec