Hello community,
here is the log from the commit of package tomahawk for openSUSE:Factory checked in at 2013-05-16 18:16:35
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/tomahawk (Old)
and /work/SRC/openSUSE:Factory/.tomahawk.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "tomahawk"
Changes:
--------
--- /work/SRC/openSUSE:Factory/tomahawk/tomahawk.changes 2013-01-30 22:23:43.000000000 +0100
+++ /work/SRC/openSUSE:Factory/.tomahawk.new/tomahawk.changes 2013-05-16 18:16:37.000000000 +0200
@@ -1,0 +2,44 @@
+Thu May 16 09:09:15 UTC 2013 - dev@dominik-schmidt.de
+
+- Add version to tomahawk-kde requires tomahawk
+
+-------------------------------------------------------------------
+Fri May 10 11:12:28 UTC 2013 - dev@dominik-schmidt.de
+
+- Require the plugins instead of only recommending them
+
+-------------------------------------------------------------------
+Wed May 8 14:41:50 UTC 2013 - dev@dominik-schmidt.de
+
+- Split main package into application, library and plugins packages
+ * Add tomahawk-0.7.0-build-portfwd-statically-and-rename-libtomahawklib-to-libtomahawk.diff:
+ Patch combines three commits from upstream master and can be
+ removed for 0.8.x. Without it there's an unversioned .so that
+ is needed by the main library. The main library also has a
+ wrong soname and filename for calling the package libtomahawk
+
+-------------------------------------------------------------------
+Sun May 5 19:31:37 UTC 2013 - dev@dominik-schmidt.de
+
+- Version 0.7.0
+ * JavaScript Resolvers can now expose collections.
+ * Introduced bundle system for JavaScript Resolvers, called "axes".
+ * Fixed playback-loop caused by duplicate tracks in a playlist.
+ * Improved peer handling.
+ * Taking an account offline now also disconnects associated peers.
+ * Improved spotify protocol handling.
+ * Added "Append to Playlist" context menu item.
+ * User-friendlier collection handling: added info-buttons for artists and
+ albums. Double-clicking an item expands it now.
+ * Charts only load on-demand now.
+ * Fixed Diagnostics information not correctly updating.
+ * Fixed issue with hidden sidebar and panels.
+ * Fixed issues with some color schemes.
+ * Fixed playing files with special characters in the filename.
+ * Improved stability.
+ * Added translations for Catalan, Czech, Galician, Greek, Italian and
+ Chinese.
+ * (Windows) Smoother and more responsive audio playback.
+ * (Linux) Fixed grid issues with GTK-styles.
+
+-------------------------------------------------------------------
Old:
----
tomahawk-0.6.0.tar.bz2
New:
----
tomahawk-0.7.0-build-portfwd-statically-and-rename-libtomahawklib-to-libtomahawk.diff
tomahawk-0.7.0.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ tomahawk.spec ++++++
--- /var/tmp/diff_new_pack.9gi5rT/_old 2013-05-16 18:16:38.000000000 +0200
+++ /var/tmp/diff_new_pack.9gi5rT/_new 2013-05-16 18:16:38.000000000 +0200
@@ -17,17 +17,27 @@
#
+%define _tomahawk_major_version 0
+%define _tomahawk_minor_version 7
+%define _tomahawk_patch_version 0
+
+%define _libtomahawk_soname %{_tomahawk_major_version}_%{_tomahawk_minor_version}_%{_tomahawk_patch_version}
+
Name: tomahawk
Summary: The social media player
License: GPL-3.0+
Group: Productivity/Multimedia/Sound/Players
-Version: 0.6.0
+Version: %{_tomahawk_major_version}.%{_tomahawk_minor_version}.%{_tomahawk_patch_version}
Release: 0
Source: tomahawk-%{version}.tar.bz2
Source2: tomahawk.SuSEfirewall2
Source3: Tomahawk.khotkeys
Source99: tomahawk-rpmlintrc
Patch0: tomahawk-ppc64.patch
+
+# PATCH-FIX-UPSTREAM: taken from master, remove for 0.8.x
+Patch1: tomahawk-0.7.0-build-portfwd-statically-and-rename-libtomahawklib-to-libtomahawk.diff
+
BuildRoot: %{_tmppath}/%{name}-%{version}-build
Url: http://gettomahawk.com
@@ -44,7 +54,7 @@
BuildRequires: boost-devel >= 1.3
BuildRequires: clucene-core-devel >= 2.3.3.4
BuildRequires: libattica-devel >= 0.4.0
-BuildRequires: libechonest-devel >= 2.0
+BuildRequires: libechonest-devel >= 2.0.3
BuildRequires: liblastfm-devel >= 1.0.1
BuildRequires: libqca2-devel
BuildRequires: quazip-devel
@@ -74,15 +84,45 @@
%package kde
Summary: KDE integration for Tomahawk
Group: Productivity/Multimedia/Sound/Players
-Requires: tomahawk
+Requires: tomahawk = %{version}
Supplements: packageand(tomahawk:kdebase4-workspace)
%description kde
This package makes hotkeys configurable in KDE systemsettings
+## Library
+
+%package -n libtomahawk%{_libtomahawk_soname}
+Summary: Library providing the core functionality of Tomahawk Player
+Group: Productivity/Multimedia/Sound/Players
+Requires: libtomahawk-plugins = %{version}
+
+%description -n libtomahawk%{_libtomahawk_soname}
+Library providing the core functionality of Tomahawk Player a multi-source, socially-connected, cross-platform and open-source music player
+
+%package -n libtomahawk-devel
+Summary: Development files for libtomahawk
+Group: Development/Libraries/C and C++
+Requires: libtomahawk%{_libtomahawk_soname} = %{version}
+
+%description -n libtomahawk-devel
+Library providing the core functionality of Tomahawk Player a multi-source, socially-connected, cross-platform and open-source music player
+
+## Plugins
+
+%package -n libtomahawk-plugins
+Summary: Library providing the core functionality of Tomahawk Player
+Group: Productivity/Multimedia/Sound/Players
+
+%description -n libtomahawk-plugins
+Tomahawk is a multi-source, socially-connected, cross-platform and open-source music player
+
+
+
%prep
%setup -q -n tomahawk-%{version}
%patch0 -p1
+%patch1 -p1
%build
cmake . \
@@ -118,12 +158,12 @@
%__rm -rf "%{buildroot}%{_datadir}/icons/hicolor/512x512"
%__rm -rf "%{buildroot}%{_datadir}/icons/hicolor/128x128-grayscale/"
-%post
+%post -n libtomahawk%{_libtomahawk_soname}
/sbin/ldconfig
%desktop_database_post
%icon_theme_cache_post
-%postun
+%postun -n libtomahawk%{_libtomahawk_soname}
/sbin/ldconfig
%desktop_database_postun
%icon_theme_cache_postun
@@ -137,9 +177,6 @@
%{_libexecdir}/tomahawk_crash_reporter
%endif
-%{_libdir}/libtomahawklib.so
-%{_libdir}/libtomahawk_*.so
-
%{_datadir}/applications/tomahawk.desktop
%{_datadir}/icons/*/*/apps/tomahawk.*
@@ -150,4 +187,23 @@
%dir %{_kde4_appsdir}/khotkeys/
%{_kde4_appsdir}/khotkeys/Tomahawk.khotkeys
+## Library
+
+%files -n libtomahawk%{_libtomahawk_soname}
+%defattr(-,root,root,0755)
+%{_libdir}/libtomahawk.so.*
+
+%files -n libtomahawk-devel
+%defattr(-,root,root,0755)
+%{_includedir}/libtomahawk/
+%{_libdir}/cmake/Tomahawk/
+%{_libdir}/libtomahawk.so
+
+## Plugins
+
+%files -n libtomahawk-plugins
+%defattr(-,root,root,0755)
+%{_libdir}/libtomahawk_account_*.so
+%{_libdir}/libtomahawk_infoplugin_*.so
+
%changelog
++++++ tomahawk-0.7.0-build-portfwd-statically-and-rename-libtomahawklib-to-libtomahawk.diff ++++++
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 95d0e6f..0672c18 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -320,7 +320,7 @@ endif()
# Add all targets to the build-tree export set
set(CMAKE_INSTALL_CMAKEDIR "${CMAKE_INSTALL_LIBDIR}/cmake/Tomahawk" CACHE PATH "Installation directory for CMake files")
set(CMAKE_INSTALL_FULL_CMAKEDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_CMAKEDIR}")
-export(TARGETS tomahawklib tomahawk_portfwd
+export(TARGETS tomahawklib
FILE "${PROJECT_BINARY_DIR}/TomahawkLibraryDepends.cmake")
# Export the package for use from the build-tree
diff --git a/CMakeModules/NSIS.template.in b/CMakeModules/NSIS.template.in
index 0390d4f..934d7c3 100644
--- a/CMakeModules/NSIS.template.in
+++ b/CMakeModules/NSIS.template.in
@@ -276,8 +276,7 @@ Section "Tomahawk Player" SEC_TOMAHAWK_PLAYER
File "${INSTALL_PATH}\bin\tomahawk_crash_reporter.exe"
File "${INSTALL_PATH}\bin\libtomahawk_breakpad.dll"
- File "${INSTALL_PATH}\bin\libtomahawk_portfwd.dll"
- File "${INSTALL_PATH}\bin\libtomahawklib.dll"
+ File "${INSTALL_PATH}\bin\libtomahawk.dll"
; plugins
File "${INSTALL_PATH}\lib\libtomahawk_*_*.dll"
!endif
@@ -288,8 +287,7 @@ Section "Tomahawk Player" SEC_TOMAHAWK_PLAYER
File "${BUILD_PATH}\tomahawk_crash_reporter.exe"
File "${BUILD_PATH}\libtomahawk_breakpad.dll"
- File "${BUILD_PATH}\libtomahawklib.dll"
- File "${BUILD_PATH}\libtomahawk_portfwd.dll"
+ File "${BUILD_PATH}\libtomahawk.dll"
; plugins
File "${BUILD_PATH}\libtomahawk_*_*.dll"
!endif
diff --git a/src/AclRegistryImpl.h b/src/AclRegistryImpl.h
index 85b617b..96b8082 100644
--- a/src/AclRegistryImpl.h
+++ b/src/AclRegistryImpl.h
@@ -22,7 +22,6 @@
#include "AclRegistry.h"
#include "HeadlessCheck.h"
-#include "DllMacro.h"
#include <QObject>
#include <QString>
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 6ca16f8..5ae0c86 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -167,18 +167,15 @@ qt_add_resources( RC_SRCS "../resources.qrc" )
SET( final_src ${final_src} ${tomahawkUI_H} ${tomahawkMoc} ${tomahawkSources} ${RC_SRCS} )
-IF( UNIX AND NOT APPLE )
- ADD_EXECUTABLE( tomahawk ${final_src} )
-ENDIF( UNIX AND NOT APPLE )
-IF( APPLE )
- ADD_EXECUTABLE( tomahawk MACOSX_BUNDLE ${final_src} )
- SET_TARGET_PROPERTIES(tomahawk PROPERTIES MACOSX_BUNDLE_INFO_PLIST "${CMAKE_BINARY_DIR}/Info.plist")
-ENDIF( APPLE )
-IF( WIN32 )
- ADD_EXECUTABLE( tomahawk WIN32 ${final_src} )
-ENDIF( WIN32 )
-SET_TARGET_PROPERTIES(tomahawk PROPERTIES AUTOMOC TRUE)
+ADD_EXECUTABLE( tomahawk WIN32 MACOSX_BUNDLE ${final_src} )
+SET_TARGET_PROPERTIES(tomahawk
+ PROPERTIES
+ AUTOMOC TRUE
+ MACOSX_BUNDLE_INFO_PLIST "${CMAKE_BINARY_DIR}/Info.plist"
+)
+
+
qt5_use_modules(tomahawk Core Widgets Network Sql WebKitWidgets)
MESSAGE( STATUS "OS_SPECIFIC_LINK_LIBRARIES: ${OS_SPECIFIC_LINK_LIBRARIES}" )
diff --git a/src/ConfigDelegateBase.h b/src/ConfigDelegateBase.h
index 1a2587e..f530656 100644
--- a/src/ConfigDelegateBase.h
+++ b/src/ConfigDelegateBase.h
@@ -19,14 +19,12 @@
#ifndef CONFIGDELEGATEBASE_H
#define CONFIGDELEGATEBASE_H
-#include "DllMacro.h"
-
#include <QStyledItemDelegate>
#define PADDING 4
class QPainter;
-class Q_DECL_EXPORT ConfigDelegateBase : public QStyledItemDelegate
+class ConfigDelegateBase : public QStyledItemDelegate
{
Q_OBJECT
public:
diff --git a/src/libtomahawk/CMakeLists.txt b/src/libtomahawk/CMakeLists.txt
index 28a2798..c162d90 100644
--- a/src/libtomahawk/CMakeLists.txt
+++ b/src/libtomahawk/CMakeLists.txt
@@ -6,6 +6,7 @@ add_definitions( ${QT_DEFINITIONS} )
add_definitions( -DQT_SHARED )
add_definitions( -DDLLEXPORT_PRO )
add_definitions( -DQT_SHAREDPOINTER_TRACK_POINTERS )
+add_definitions( -DPORTFWDDLLEXPORT_STATIC )
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/../Config.h.in
${CMAKE_CURRENT_BINARY_DIR}/config.h)
@@ -459,6 +460,7 @@ set_target_properties(
AUTOMOC TRUE
VERSION ${TOMAHAWK_VERSION_SHORT}
SOVERSION ${TOMAHAWK_VERSION_SHORT}
+ OUTPUT_NAME "tomahawk"
)
@@ -473,9 +475,11 @@ IF( UNIX AND NOT APPLE )
ENDIF( UNIX AND NOT APPLE )
TARGET_LINK_LIBRARIES( tomahawklib
+ LINK_PRIVATE
# Thirdparty shipped with tomahawk
${LIBPORTFWD_LIBRARIES}
+ LINK_PUBLIC
# External deps
${QJSON_LIBRARIES}
${PHONON_LIBS}
diff --git a/thirdparty/libportfwd/CMakeLists.txt b/thirdparty/libportfwd/CMakeLists.txt
index 1025241..909b1da 100644
--- a/thirdparty/libportfwd/CMakeLists.txt
+++ b/thirdparty/libportfwd/CMakeLists.txt
@@ -8,19 +8,19 @@ SET(NATPMP_DIR "third-party/libnatpmp-20100808")
ADD_DEFINITIONS(-Wall -O2 -DNDEBUG)
IF(WIN32)
- ADD_DEFINITIONS(-DWIN32 -DMINIUPNP_EXPORTS )
+ ADD_DEFINITIONS(-DWIN32 )
ELSE()
ADD_DEFINITIONS(-fPIC)
ENDIF()
INCLUDE_DIRECTORIES( ${MINIUPNP_DIR} include ${QT_INCLUDES} )
SET( CMAKE_C_FLAGS ${CLEAN_C_FLAGS} )
-ADD_DEFINITIONS( -DPORTFWDDLLEXPORT_PRO )
+ADD_DEFINITIONS( -DPORTFWDDLLEXPORT_STATIC -DSTATICLIB )
if (CMAKE_SYSTEM_NAME STREQUAL "Darwin")
ADD_DEFINITIONS( -DMACOSX -D_DARWIN_C_SOURCE )
endif ()
-ADD_LIBRARY(tomahawk_portfwd SHARED
+ADD_LIBRARY(tomahawk_portfwd STATIC
# the needed bits of miniupnpc (no python module, no tests, no cli)
${MINIUPNP_DIR}/connecthostport.c
${MINIUPNP_DIR}/igd_desc_parse.c
@@ -46,14 +46,6 @@ IF(WIN32)
TARGET_LINK_LIBRARIES( tomahawk_portfwd "ws2_32.dll" "iphlpapi.a" )
ENDIF()
-INSTALL( TARGETS tomahawk_portfwd
- EXPORT TomahawkLibraryDepends
- RUNTIME DESTINATION bin
- LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
- ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
- BUNDLE DESTINATION library
-)
-
#INSTALL(FILES include/portfwd/portfwddllmacro.h include/portfwd/portfwd.h DESTINATION include/portfwd)
#ADD_EXECUTABLE(portfwd-demo
diff --git a/thirdparty/libportfwd/include/portfwd/portfwddllmacro.h b/thirdparty/libportfwd/include/portfwd/portfwddllmacro.h
index 7faddc3..c74702b 100644
--- a/thirdparty/libportfwd/include/portfwd/portfwddllmacro.h
+++ b/thirdparty/libportfwd/include/portfwd/portfwddllmacro.h
@@ -21,12 +21,16 @@
#include