diff --git a/.cvsignore b/.cvsignore index e69de29..08688e3 100644 --- a/.cvsignore +++ b/.cvsignore @@ -0,0 +1 @@ +clementine-0.4.2.tar.gz diff --git a/clementine-desktop-fix.patch b/clementine-desktop-fix.patch new file mode 100644 index 0000000..ad4d075 --- /dev/null +++ b/clementine-desktop-fix.patch @@ -0,0 +1,9 @@ +diff -rupN clementine-0.4.2.old/dist/clementine.desktop clementine-0.4.2/dist/clementine.desktop +--- clementine-0.4.2.old/dist/clementine.desktop 2010-07-01 14:16:36.000000000 -0400 ++++ clementine-0.4.2/dist/clementine.desktop 2010-07-05 14:37:36.000000000 -0400 +@@ -10,4 +10,4 @@ Icon=application-x-clementine + Terminal=false + Categories=AudioVideo;Player;Qt; + StartupNotify=false +-MimeType=application/ogg;application/x-ogg;application/x-ogm-audio;audio/aac;audio/mp4;audio/mpeg;audio/mpegurl;audio/ogg;audio/vnd.rn-realaudio;audio/vorbis;audio/x-flac;audio/x-mp3;audio/x-mpeg;audio/x-mpegurl;audio/x-ms-wma;audio/x-musepack;audio/x-oggflac;audio/x-pn-realaudio;audio/x-scpls;audio/x-speex;audio/x-vorbis;audio/x-vorbis+ogg;audio/x-wav;video/x-ms-asf;x-content/audio-player ++MimeType=application/ogg;application/x-ogg;application/x-ogm-audio;audio/aac;audio/mp4;audio/mpeg;audio/mpegurl;audio/ogg;audio/vnd.rn-realaudio;audio/vorbis;audio/x-flac;audio/x-mp3;audio/x-mpeg;audio/x-mpegurl;audio/x-ms-wma;audio/x-musepack;audio/x-oggflac;audio/x-pn-realaudio;audio/x-scpls;audio/x-speex;audio/x-vorbis;audio/x-vorbis+ogg;audio/x-wav;video/x-ms-asf;x-content/audio-player; diff --git a/clementine-font-paths.patch b/clementine-font-paths.patch new file mode 100644 index 0000000..e24e5c5 --- /dev/null +++ b/clementine-font-paths.patch @@ -0,0 +1,12 @@ +diff -rupN clementine-0.4.2.old/src/visualisations/projectmvisualisation.cpp clementine-0.4.2/src/visualisations/projectmvisualisation.cpp +--- clementine-0.4.2.old/src/visualisations/projectmvisualisation.cpp 2010-07-16 22:37:32.000000000 -0400 ++++ clementine-0.4.2/src/visualisations/projectmvisualisation.cpp 2010-07-17 21:58:04.000000000 -0400 +@@ -106,6 +106,8 @@ void ProjectMVisualisation::InitProjectM + s.windowHeight = 512; + s.smoothPresetDuration = 5; + s.presetDuration = duration_; ++ s.titleFontURL = "/usr/share/fonts/bitstream-vera/Vera.ttf"; ++ s.menuFontURL = "/usr/share/fonts/bitstream-vera/VeraMono.ttf"; + s.presetURL = preset_path.toStdString(); + s.shuffleEnabled = true; + s.easterEgg = 0; // ?? diff --git a/clementine-system-projectM.patch b/clementine-system-projectM.patch new file mode 100644 index 0000000..e78e6cf --- /dev/null +++ b/clementine-system-projectM.patch @@ -0,0 +1,120 @@ +diff -rupN clementine-0.4.2.old/CMakeLists.txt clementine-0.4.2/CMakeLists.txt +--- clementine-0.4.2.old/CMakeLists.txt 2010-07-01 14:18:22.000000000 -0400 ++++ clementine-0.4.2/CMakeLists.txt 2010-07-16 22:31:50.000000000 -0400 +@@ -123,7 +123,16 @@ endif(NOT GETTEXT_XGETTEXT_EXECUTABLE) + option(ENABLE_VISUALISATIONS "Use libprojectm visualisations" ON) + option(BUNDLE_PROJECTM_PRESETS "Install Clementine's own copies of libprojectm presets - disable this if you want to use a system package instead" ON) + if(ENABLE_VISUALISATIONS) +- add_subdirectory(3rdparty/libprojectm) ++ # When/if upstream accepts our patches then these options can be used to link ++ # to system installed 3rdparty libraries instead. ++ option(USE_SYSTEM_PROJECTM "Don't set this option unless your system projectM library has been compiled with the Clementine patches in 3rdparty" OFF) ++ if(USE_SYSTEM_PROJECTM) ++ pkg_check_modules(LIBPROJECTM libprojectM) ++ else(USE_SYSTEM_PROJECTM) ++ add_subdirectory(3rdparty/libprojectm) ++ set(LIBPROJECTM_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/libprojectm) ++ set(LIBPROJECTM_LIBRARIES projectM) ++ endif(USE_SYSTEM_PROJECTM) + endif(ENABLE_VISUALISATIONS) + + # Test whether libsqlite3 is available and if FTS3 is enabled in it +diff -rupN clementine-0.4.2.old/src/CMakeLists.txt clementine-0.4.2/src/CMakeLists.txt +--- clementine-0.4.2.old/src/CMakeLists.txt 2010-07-01 14:17:36.000000000 -0400 ++++ clementine-0.4.2/src/CMakeLists.txt 2010-07-16 22:34:36.000000000 -0400 +@@ -9,11 +9,11 @@ include_directories(../3rdparty/gmock/gt + include_directories(../3rdparty/qtsingleapplication) + include_directories(../3rdparty/qtiocompressor) + include_directories(../3rdparty/qxt) +-include_directories(../3rdparty/libprojectm) + +-include_directories(${GLIB_INCLUDE_DIRECTORIES}) +-include_directories(${LIBXML_INCLUDE_DIRECTORIES}) +-include_directories(${GOBJECT_INCLUDE_DIRECTORIES}) ++include_directories(${GLIB_INCLUDE_DIRS}) ++include_directories(${LIBXML_INCLUDE_DIRS}) ++include_directories(${GOBJECT_INCLUDE_DIRS}) ++include_directories(${LIBPROJECTM_INCLUDE_DIRS}) + + cmake_policy(SET CMP0011 NEW) + include(../cmake/AddEngine.cmake) +@@ -461,7 +461,7 @@ target_link_libraries(clementine_lib + ) + + if(ENABLE_VISUALISATIONS) +- target_link_libraries(clementine_lib projectM) ++ target_link_libraries(clementine_lib ${LIBPROJECTM_LIBRARIES}) + endif(ENABLE_VISUALISATIONS) + + if (APPLE) +diff -rupN clementine-0.4.2.old/src/config.h.in clementine-0.4.2/src/config.h.in +--- clementine-0.4.2.old/src/config.h.in 2010-07-01 14:17:34.000000000 -0400 ++++ clementine-0.4.2/src/config.h.in 2010-07-16 22:35:04.000000000 -0400 +@@ -27,6 +27,7 @@ + + #cmakedefine ENABLE_VISUALISATIONS + #cmakedefine VISUALISATIONS_USE_INSTALL_PREFIX ++#cmakedefine USE_SYSTEM_PROJECTM + + #cmakedefine SNOW_LEOPARD + #cmakedefine LEOPARD +diff -rupN clementine-0.4.2.old/src/visualisations/projectmpresetmodel.cpp clementine-0.4.2/src/visualisations/projectmpresetmodel.cpp +--- clementine-0.4.2.old/src/visualisations/projectmpresetmodel.cpp 2010-07-01 14:16:36.000000000 -0400 ++++ clementine-0.4.2/src/visualisations/projectmpresetmodel.cpp 2010-07-16 22:36:19.000000000 -0400 +@@ -14,10 +14,15 @@ + along with Clementine. If not, see . + */ + ++#include "config.h" + #include "projectmpresetmodel.h" + #include "projectmvisualisation.h" + +-#include ++#ifdef USE_SYSTEM_PROJECTM ++# include ++#else ++# include "projectM.hpp" ++#endif + + #include + #include +diff -rupN clementine-0.4.2.old/src/visualisations/projectmvisualisation.cpp clementine-0.4.2/src/visualisations/projectmvisualisation.cpp +--- clementine-0.4.2.old/src/visualisations/projectmvisualisation.cpp 2010-07-01 14:16:36.000000000 -0400 ++++ clementine-0.4.2/src/visualisations/projectmvisualisation.cpp 2010-07-16 22:37:32.000000000 -0400 +@@ -30,7 +30,11 @@ + #include + #include + +-#include ++#ifdef USE_SYSTEM_PROJECTM ++# include ++#else ++# include "projectM.hpp" ++#endif + + #ifdef Q_OS_MAC + # include "core/mac_startup.h" +diff -rupN clementine-0.4.2.old/src/visualisations/visualisationselector.cpp clementine-0.4.2/src/visualisations/visualisationselector.cpp +--- clementine-0.4.2.old/src/visualisations/visualisationselector.cpp 2010-07-01 14:16:36.000000000 -0400 ++++ clementine-0.4.2/src/visualisations/visualisationselector.cpp 2010-07-16 22:38:00.000000000 -0400 +@@ -14,6 +14,7 @@ + along with Clementine. If not, see . + */ + ++#include "config.h" + #include "projectmpresetmodel.h" + #include "projectmvisualisation.h" + #include "visualisationselector.h" +@@ -21,7 +22,11 @@ + + #include + +-#include ++#ifdef USE_SYSTEM_PROJECTM ++# include ++#else ++# include "projectM.hpp" ++#endif + + VisualisationSelector::VisualisationSelector(QWidget *parent) + : QDialog(parent), diff --git a/clementine-system-qtiocompressor.patch b/clementine-system-qtiocompressor.patch new file mode 100644 index 0000000..6bbcc90 --- /dev/null +++ b/clementine-system-qtiocompressor.patch @@ -0,0 +1,74 @@ +diff -rupN clementine-0.4.2.old/CMakeLists.txt clementine-0.4.2/CMakeLists.txt +--- clementine-0.4.2.old/CMakeLists.txt 2010-07-16 22:42:41.000000000 -0400 ++++ clementine-0.4.2/CMakeLists.txt 2010-07-16 22:46:52.000000000 -0400 +@@ -169,8 +169,17 @@ else(USE_SYSTEM_QTSINGLEAPPLICATION) + set(QTSINGLEAPPLICATION_LIBRARIES qtsingleapplication) + endif(USE_SYSTEM_QTSINGLEAPPLICATION) + ++# QtIoCompressor isn't patched, so we can use a system version if it's ++# available ++find_path(QTIOCOMPRESSOR_INCLUDE_DIRS qtiocompressor.h PATH_SUFFIXES QtSolutions) ++find_library(QTIOCOMPRESSOR_LIBRARIES QtSolutions_IOCompressor-2.3) ++if(NOT QTIOCOMPRESSOR_INCLUDE_DIRS OR NOT QTIOCOMPRESSOR_LIBRARIES) ++ add_subdirectory(3rdparty/qtiocompressor) ++ set(QTIOCOMPRESSOR_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/qtiocompressor) ++ set(QTIOCOMPRESSOR_LIBRARIES qtiocompressor) ++endif(NOT QTIOCOMPRESSOR_INCLUDE_DIRS OR NOT QTIOCOMPRESSOR_LIBRARIES) ++ + # Subdirectories +-add_subdirectory(3rdparty/qtiocompressor) + add_subdirectory(src) + if (NOT APPLE) + add_subdirectory(3rdparty/qxt) +diff -rupN clementine-0.4.2.old/src/CMakeLists.txt clementine-0.4.2/src/CMakeLists.txt +--- clementine-0.4.2.old/src/CMakeLists.txt 2010-07-16 22:43:28.000000000 -0400 ++++ clementine-0.4.2/src/CMakeLists.txt 2010-07-16 22:47:48.000000000 -0400 +@@ -6,7 +6,6 @@ set(CMAKE_CXX_FLAGS "-Woverloaded-virtua + include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}) + include_directories(${SPARKLE}) + include_directories(../3rdparty/gmock/gtest/include) +-include_directories(../3rdparty/qtiocompressor) + include_directories(../3rdparty/qxt) + + include_directories(${GLIB_INCLUDE_DIRS}) +@@ -14,6 +13,7 @@ include_directories(${LIBXML_INCLUDE_DIR + include_directories(${GOBJECT_INCLUDE_DIRS}) + include_directories(${LIBPROJECTM_INCLUDE_DIRS}) + include_directories(${QTSINGLEAPPLICATION_INCLUDE_DIRS}) ++include_directories(${QTIOCOMPRESSOR_INCLUDE_DIRS}) + + cmake_policy(SET CMP0011 NEW) + include(../cmake/AddEngine.cmake) +@@ -449,7 +449,6 @@ add_library(clementine_lib STATIC + add_dependencies(clementine_lib pot) + + target_link_libraries(clementine_lib +- qtiocompressor + chardet + ${GOBJECT_LIBRARIES} + ${GLIB_LIBRARIES} +@@ -458,6 +457,7 @@ target_link_libraries(clementine_lib + ${ENGINE_LIBRARIES} + ${LASTFM_LIBRARIES} + ${QTSINGLEAPPLICATION_LIBRARIES} ++ ${QTIOCOMPRESSOR_LIBRARIES} + ) + + if(ENABLE_VISUALISATIONS) +diff -rupN clementine-0.4.2.old/src/radio/magnatuneservice.cpp clementine-0.4.2/src/radio/magnatuneservice.cpp +--- clementine-0.4.2.old/src/radio/magnatuneservice.cpp 2010-07-01 14:16:36.000000000 -0400 ++++ clementine-0.4.2/src/radio/magnatuneservice.cpp 2010-07-16 22:49:14.000000000 -0400 +@@ -28,11 +28,12 @@ + #include "ui/iconloader.h" + #include "ui/settingsdialog.h" + ++#include "qtiocompressor.h" ++ + #include + #include + #include + #include +-#include + #include + #include + #include diff --git a/clementine-system-qtsingleapplication.patch b/clementine-system-qtsingleapplication.patch new file mode 100644 index 0000000..8a6e2a7 --- /dev/null +++ b/clementine-system-qtsingleapplication.patch @@ -0,0 +1,68 @@ +diff -rupN clementine-0.4.2.old/CMakeLists.txt clementine-0.4.2/CMakeLists.txt +--- clementine-0.4.2.old/CMakeLists.txt 2010-07-16 22:31:50.000000000 -0400 ++++ clementine-0.4.2/CMakeLists.txt 2010-07-16 22:42:41.000000000 -0400 +@@ -124,7 +124,7 @@ option(ENABLE_VISUALISATIONS "Use libpro + option(BUNDLE_PROJECTM_PRESETS "Install Clementine's own copies of libprojectm presets - disable this if you want to use a system package instead" ON) + if(ENABLE_VISUALISATIONS) + # When/if upstream accepts our patches then these options can be used to link +- # to system installed 3rdparty libraries instead. ++ # to system installed projectM instead. + option(USE_SYSTEM_PROJECTM "Don't set this option unless your system projectM library has been compiled with the Clementine patches in 3rdparty" OFF) + if(USE_SYSTEM_PROJECTM) + pkg_check_modules(LIBPROJECTM libprojectM) +@@ -157,8 +157,19 @@ if(STATIC_SQLITE) + add_subdirectory(3rdparty/qsqlite) + endif(STATIC_SQLITE) + ++# When/if upstream accepts our patches then these options can be used to link ++# to system installed qtsingleapplication instead. ++option(USE_SYSTEM_QTSINGLEAPPLICATION "Don't set this option unless your system QtSingleApplication library has been compiled with the Clementine patches in 3rdparty" OFF) ++if(USE_SYSTEM_QTSINGLEAPPLICATION) ++ find_path(QTSINGLEAPPLICATION_INCLUDE_DIRS qtsingleapplication.h PATH_SUFFIXES QtSolutions) ++ find_library(QTSINGLEAPPLICATION_LIBRARIES QtSolutions_SingleApplication-2.6) ++else(USE_SYSTEM_QTSINGLEAPPLICATION) ++ add_subdirectory(3rdparty/qtsingleapplication) ++ set(QTSINGLEAPPLICATION_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/qtsingleapplication) ++ set(QTSINGLEAPPLICATION_LIBRARIES qtsingleapplication) ++endif(USE_SYSTEM_QTSINGLEAPPLICATION) ++ + # Subdirectories +-add_subdirectory(3rdparty/qtsingleapplication) + add_subdirectory(3rdparty/qtiocompressor) + add_subdirectory(src) + if (NOT APPLE) +diff -rupN clementine-0.4.2.old/src/CMakeLists.txt clementine-0.4.2/src/CMakeLists.txt +--- clementine-0.4.2.old/src/CMakeLists.txt 2010-07-16 22:34:36.000000000 -0400 ++++ clementine-0.4.2/src/CMakeLists.txt 2010-07-16 22:43:28.000000000 -0400 +@@ -6,7 +6,6 @@ set(CMAKE_CXX_FLAGS "-Woverloaded-virtua + include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}) + include_directories(${SPARKLE}) + include_directories(../3rdparty/gmock/gtest/include) +-include_directories(../3rdparty/qtsingleapplication) + include_directories(../3rdparty/qtiocompressor) + include_directories(../3rdparty/qxt) + +@@ -14,6 +13,7 @@ include_directories(${GLIB_INCLUDE_DIRS} + include_directories(${LIBXML_INCLUDE_DIRS}) + include_directories(${GOBJECT_INCLUDE_DIRS}) + include_directories(${LIBPROJECTM_INCLUDE_DIRS}) ++include_directories(${QTSINGLEAPPLICATION_INCLUDE_DIRS}) + + cmake_policy(SET CMP0011 NEW) + include(../cmake/AddEngine.cmake) +@@ -449,7 +449,6 @@ add_library(clementine_lib STATIC + add_dependencies(clementine_lib pot) + + target_link_libraries(clementine_lib +- qtsingleapplication + qtiocompressor + chardet + ${GOBJECT_LIBRARIES} +@@ -458,6 +457,7 @@ target_link_libraries(clementine_lib + ${QT_LIBRARIES} + ${ENGINE_LIBRARIES} + ${LASTFM_LIBRARIES} ++ ${QTSINGLEAPPLICATION_LIBRARIES} + ) + + if(ENABLE_VISUALISATIONS) diff --git a/clementine-system-qxt.patch b/clementine-system-qxt.patch new file mode 100644 index 0000000..1c46119 --- /dev/null +++ b/clementine-system-qxt.patch @@ -0,0 +1,69 @@ +diff -rupN clementine-0.4.2.old/CMakeLists.txt clementine-0.4.2/CMakeLists.txt +--- clementine-0.4.2.old/CMakeLists.txt 2010-07-16 22:46:52.000000000 -0400 ++++ clementine-0.4.2/CMakeLists.txt 2010-07-18 14:42:16.000000000 -0400 +@@ -110,7 +110,6 @@ if (WIN32) + SET(CMAKE_RC_COMPILE_OBJECT " -O coff -o -I../../dist/windows") + endif(WIN32) + +-add_definitions(-DQXT_STATIC -DBUILD_QXT_GUI -DBUILD_QXT_CORE) + add_definitions(-DQT_NO_CAST_TO_ASCII) + + # Translations stuff +@@ -179,11 +178,26 @@ if(NOT QTIOCOMPRESSOR_INCLUDE_DIRS OR NO + set(QTIOCOMPRESSOR_LIBRARIES qtiocompressor) + endif(NOT QTIOCOMPRESSOR_INCLUDE_DIRS OR NOT QTIOCOMPRESSOR_LIBRARIES) + ++# When/if upstream accepts our or reimplement our patches then these options can be ++# used to link to system installed qxt instead. ++option(USE_SYSTEM_QXT "Don't set this option unless your system Qxt library has been compiled with the Clementine patches in 3rdparty" OFF) ++if (USE_SYSTEM_QXT) ++ find_path(QXTCORE_INCLUDE_DIRS qxtglobal.h PATH_SUFFIXES QxtCore) ++ find_path(QXTGUI_INCLUDE_DIRS qxtglobalshortcut.h PATH_SUFFIXES QxtGui) ++ set(QXT_INCLUDE_DIRS ${QXTCORE_INCLUDE_DIRS} ${QXTGUI_INCLUDE_DIRS}) ++ # We only need its header. We don't need to link to QxtCore. ++ find_library(QXT_LIBRARIES QxtGui) ++else (USE_SYSTEM_QXT) ++ if (NOT APPLE) ++ add_subdirectory(3rdparty/qxt) ++ add_definitions(-DQXT_STATIC -DBUILD_QXT_GUI -DBUILD_QXT_CORE) ++ set(QXT_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/qxt) ++ set(QXT_LIBRARIES qxt) ++ endif (NOT APPLE) ++endif (USE_SYSTEM_QXT) ++ + # Subdirectories + add_subdirectory(src) +-if (NOT APPLE) +- add_subdirectory(3rdparty/qxt) +-endif (NOT APPLE) + add_subdirectory(3rdparty/universalchardet) + add_subdirectory(tests) + add_subdirectory(dist) +diff -rupN clementine-0.4.2.old/src/CMakeLists.txt clementine-0.4.2/src/CMakeLists.txt +--- clementine-0.4.2.old/src/CMakeLists.txt 2010-07-16 22:47:48.000000000 -0400 ++++ clementine-0.4.2/src/CMakeLists.txt 2010-07-18 14:05:51.000000000 -0400 +@@ -6,7 +6,6 @@ set(CMAKE_CXX_FLAGS "-Woverloaded-virtua + include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}) + include_directories(${SPARKLE}) + include_directories(../3rdparty/gmock/gtest/include) +-include_directories(../3rdparty/qxt) + + include_directories(${GLIB_INCLUDE_DIRS}) + include_directories(${LIBXML_INCLUDE_DIRS}) +@@ -14,6 +13,7 @@ include_directories(${GOBJECT_INCLUDE_DI + include_directories(${LIBPROJECTM_INCLUDE_DIRS}) + include_directories(${QTSINGLEAPPLICATION_INCLUDE_DIRS}) + include_directories(${QTIOCOMPRESSOR_INCLUDE_DIRS}) ++include_directories(${QXT_INCLUDE_DIRS}) + + cmake_policy(SET CMP0011 NEW) + include(../cmake/AddEngine.cmake) +@@ -475,7 +475,7 @@ if (APPLE) + ) + include_directories(${SPARKLE}/Headers) + else (APPLE) +- target_link_libraries(clementine_lib qxt) ++ target_link_libraries(clementine_lib ${QXT_LIBRARIES}) + endif (APPLE) + + # Link against the qsqlite plugin on windows and mac diff --git a/clementine.spec b/clementine.spec new file mode 100644 index 0000000..bdaa23f --- /dev/null +++ b/clementine.spec @@ -0,0 +1,169 @@ +Name: clementine +Version: 0.4.2 +Release: 5%{?dist} +Summary: A music player and library organizer + +Group: Applications/Multimedia +License: GPLv3+ and GPLv2+ +URL: http://code.google.com/p/clementine-player +Source0: http://clementine-player.googlecode.com/files/%{name}-%{version}.tar.gz +# The following patches 0-3 are from the upstream trunk +# Fix trailing semicolon +# http://code.google.com/p/clementine-player/source/detail?r=1486 +Patch0: clementine-desktop-fix.patch +# The next 3 are to split out the bundled libraries +# http://code.google.com/p/clementine-player/source/detail?r=1443 +Patch1: clementine-system-projectM.patch +# http://code.google.com/p/clementine-player/source/detail?r=1444 +Patch2: clementine-system-qtsingleapplication.patch +# http://code.google.com/p/clementine-player/source/detail?r=1445 +Patch3: clementine-system-qtiocompressor.patch +# Also split qxt. This is still under discussion with upstream +# http://code.google.com/p/clementine-player/issues/detail?id=291 +# comments 23 and after +Patch4: clementine-system-qxt.patch +# We need to pass the font paths to the Renderer constructor of libprojectM. +# Otherwise ftgl library segfaults. Note that this is not a problem if projectM +# is not compiled with ftgl support. However, the Fedora package is. More +# details on this at +# http://code.google.com/p/clementine-player/issues/detail?id=291#c22 +Patch5: clementine-font-paths.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +BuildRequires: boost-devel +BuildRequires: cmake +BuildRequires: desktop-file-utils +BuildRequires: gettext +BuildRequires: gstreamer-devel +BuildRequires: gtest-devel +BuildRequires: liblastfm-devel +BuildRequires: libnotify-devel +BuildRequires: libprojectM-devel >= 2.0.1-7 +BuildRequires: libqxt-devel +BuildRequires: notification-daemon +BuildRequires: qt4-devel +BuildRequires: qtiocompressor-devel +BuildRequires: qtsingleapplication-devel >= 2.6.1-2 +BuildRequires: sqlite-devel +BuildRequires: taglib-devel + +Requires: hicolor-icon-theme +Requires: libprojectM >= 2.0.1-7 +Requires: qtsingleapplication >= 2.6.1-2 + +%description +Clementine is a modern music player and library organizer. +It is largely a port of Amarok 1.4, with some features rewritten to take +advantage of Qt4. + +%prep +%setup -q +%patch0 -p1 -b .desktopfix +%patch1 -p1 -b .projectM +%patch2 -p1 -b .qtsingleapplication +%patch3 -p1 -b .qtiocompressor +%patch4 -p1 -b .qxt +%patch5 -p1 -b .fontpaths + +# We already don't use these but just to make sure +rm -fr 3rdparty/gmock +rm -fr 3rdparty/libprojectm +rm -fr 3rdparty/qxt +rm -fr 3rdparty/qsqlite +rm -fr 3rdparty/qtiocompressor +rm -fr 3rdparty/qtsingleapplication + + +# Don't build tests. They require gmock which is not yet available on Fedora +# RHBZ #527402 +sed -i '/tests/d' CMakeLists.txt + + +%build +mkdir -p %{_target_platform} +pushd %{_target_platform} +%{cmake} \ + -DUSE_SYSTEM_QTSINGLEAPPLICATION=1 \ + -DUSE_SYSTEM_PROJECTM=1 \ + -DUSE_SYSTEM_QXT=1 \ + .. + + +# Parallel build fails sometimes +make VERBOSE=1 +popd + +%install +rm -rf %{buildroot} +make install DESTDIR=%{buildroot} -C %{_target_platform} + + +%check +desktop-file-validate \ + %{buildroot}%{_datadir}/applications/%{name}.desktop + +%clean +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 + gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : +fi + +%posttrans +gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : + + +%files +%defattr(-,root,root,-) +%doc Changelog COPYING TODO +%{_bindir}/clementine +%{_datadir}/applications/clementine.desktop +%{_datadir}/icons/hicolor/64x64/apps/application-x-clementine.png + + +%changelog +* Fri Jul 23 2010 Orcan Ogetbil - 0.4.2-5 +- Add missing scriptlets + +* Wed Jul 21 2010 Orcan Ogetbil - 0.4.2-4 +- Use: make VERBOSE=1 +- License is GPLv3+ and GPLv2+ +- Put BRs in alphabetical order +- Remove redundant BRs: glew-devel, xine-lib-devel, and + the extra libprojectM-devel +- Add R: hicolor-icon-theme + +* Sun Jul 18 2010 Orcan Ogetbil - 0.4.2-3 +- Better qxt split patch + +* Sat Jul 17 2010 Orcan Ogetbil - 0.4.2-2 +- Fix font paths issue, which caused a segfault on visualizations + +* Sat Jul 17 2010 Orcan Ogetbil - 0.4.2-1 +- Version 0.4.2 + +* Fri May 07 2010 Orcan Ogetbil - 0.3-1 +- Version 0.3 + +* Sat Apr 17 2010 Orcan Ogetbil - 0.2-2 +- Patch out the external libraries +- Build the libclementine_lib into the final executable + +* Sat Mar 27 2010 Orcan Ogetbil - 0.2-1 +- Fedorized the upstream specfile + +* Mon Mar 22 2010 David Sansome - 0.2 +- Version 0.2 + +* Sun Feb 21 2010 David Sansome - 0.1-5 +- Various last-minute bugfixes + +* Sun Jan 17 2010 David Sansome - 0.1-1 +- Initial package diff --git a/import.log b/import.log new file mode 100644 index 0000000..42857ea --- /dev/null +++ b/import.log @@ -0,0 +1 @@ +clementine-0_4_2-5_fc13:HEAD:clementine-0.4.2-5.fc13.src.rpm:1280064135 diff --git a/sources b/sources index e69de29..6738093 100644 --- a/sources +++ b/sources @@ -0,0 +1 @@ +c6819b0d2a8324f1d686fb5a3b1d287b clementine-0.4.2.tar.gz