diff --git a/do_not_build_qtonly_and_mobile.diff b/do_not_build_qtonly_and_mobile.diff deleted file mode 100644 index d65473d..0000000 --- a/do_not_build_qtonly_and_mobile.diff +++ /dev/null @@ -1,11 +0,0 @@ -Index: src/apps/CMakeLists.txt -=================================================================== ---- src/apps/CMakeLists.txt.orig 2014-03-31 09:51:15.000000000 +0200 -+++ src/apps/CMakeLists.txt 2014-04-25 22:22:29.253322142 +0200 -@@ -1,6 +1,4 @@ - add_subdirectory(marble-ui) --add_subdirectory(marble-qt) --add_subdirectory(marble-mobile) - - if (NOT QTONLY) - add_subdirectory(marble-kde) diff --git a/marble.changes b/marble.changes index 2f73547..eea041c 100644 --- a/marble.changes +++ b/marble.changes @@ -5,6 +5,10 @@ Fri Aug 7 07:04:33 UTC 2015 - tittiatcoke@gmail.com * KDE Applications 15.08.0 RC1 * https://www.kde.org/announcements/announce-applications-15.07.90.php +- Switch to Qt5 build +- Drop patch do_not_build_qtonly_and_mobile.diff which is no + longer required + ------------------------------------------------------------------- Mon Jul 6 05:33:45 UTC 2015 - tittiatcoke@gmail.com diff --git a/marble.spec b/marble.spec index 2e480a3..6ae5784 100644 --- a/marble.spec +++ b/marble.spec @@ -16,7 +16,7 @@ # -%define _so 21 +%define _so 22 Name: marble Version: 15.07.90 @@ -26,32 +26,73 @@ License: LGPL-2.1+ Group: Amusements/Teaching/Other Url: http://edu.kde.org Source0: %{name}-%{version}.tar.xz -# PATCH-FIX-OPENSUSE do_not_build_qtonly_and_mobile.diff do not build qt-only version and mobile version -Patch0: do_not_build_qtonly_and_mobile.diff BuildRequires: fdupes BuildRequires: gpsd-devel -BuildRequires: libkde4-devel +BuildRequires: kconfig-devel +BuildRequires: pkgconfig(Qt5Core) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Xml) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Network) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Test) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Script) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Widgets) >= 5.2.0 +BuildRequires: pkgconfig(Qt5WebKitWidgets) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Svg) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Sql) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Concurrent) >= 5.2.0 +BuildRequires: pkgconfig(Qt5PrintSupport) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Quick) >= 5.2.0 +BuildRequires: pkgconfig(Qt5OpenGL) >= 5.2.0 +BuildRequires: pkgconfig(Qt5DBus) >= 5.2.0 +BuildRequires: pkgconfig(Qt5SerialPort) >= 5.2.0 +BuildRequires: pkgconfig(Qt5Designer) >= 5.2.0 +BuildRequires: kf5-filesystem +BuildRequires: extra-cmake-modules +BuildRequires: kwallet-devel +BuildRequires: knewstuff-devel +BuildRequires: kparts-devel +BuildRequires: kcoreaddons-devel +BuildRequires: kdoctools-devel +BuildRequires: ki18n-devel +BuildRequires: phonon4qt5-devel +BuildRequires: kservice-devel +BuildRequires: krunner-devel BuildRequires: perl -BuildRequires: quazip-devel -BuildRequires: xz +BuildRequires: libquazip-qt5-devel Requires: %{name}-data = %{version} -Requires: libastro1 = %{version} -Requires: libmarblewidget%{_so} = %{version} +Requires: libastro2 = %{version} +Requires: libmarblewidget-qt5%{_so} = %{version} +Requires: marble-frontend = %{version} Recommends: %{name}-doc = %{version} -Provides: kde4-marble = 4.3.0 -Obsoletes: kde4-marble < 4.3.0 BuildRoot: %{_tmppath}/%{name}-%{version}-build -%kde4_runtime_requires %description Marble is a viewer of map data. +%package qt +Summary: Qt Frontend for Marble +Group: Amusements/Teaching/Other +Requires: %{name} = %{version} +Provides: marble-frontend = %{version} +Conflicts: otherproviders(marble-frontend) + +%description qt +The Qt frontend for the Marble map viewer + +%package kde +Summary: The KDE optimized frontend for Marble +Group: Amusements/Teaching/Other +Requires: %{name} = %{version} +Provides: marble-frontend = %{version} +Conflicts: otherproviders(marble-frontend) +Supplements: packageand(marble:plasma5-desktop) + +%description kde +The KDE frontend for the Marble map viewer + %package data Summary: Generic map viewer: data Group: Amusements/Teaching/Other Requires: %{name} = %{version} -Provides: kde4-marble-data = 4.3.0 -Obsoletes: kde4-marble-data < 4.3.0 BuildArch: noarch %description data @@ -60,9 +101,7 @@ Marble is a viewer of map data. This package contains its data. %package devel Summary: Generic map viewer: Build Environment Group: Development/Libraries/KDE -Requires: libmarblewidget%{_so} = %{version} -Provides: kde4-marble-devel = 4.3.0 -Obsoletes: kde4-marble-devel < 4.3.0 +Requires: libmarblewidget-qt5%{_so} = %{version} %description devel Development headers and libraries for Marble. @@ -76,102 +115,122 @@ BuildArch: noarch %description doc Marble is a viewer of map data. This package contains its documentation. -%package -n libmarblewidget%{_so} +%package -n libmarblewidget-qt5%{_so} Summary: Generic map viewer: Shared Library Group: Development/Libraries/KDE -%description -n libmarblewidget%{_so} +%description -n libmarblewidget-qt5%{_so} The shared library for the MarbleWidget shared library. -%package -n libastro1 +%package -n libastro2 Summary: Astronomy: Shared Library Group: Development/Libraries/KDE -%description -n libastro1 +%description -n libastro2 The Astronomy shared library for the MarbleWidget shared library. %prep %setup -q -#patch0 %build +export SUSE_ASNEEDED=0 %ifarch ppc ppc64 export RPM_OPT_FLAGS="%{optflags} -mminimal-toc" %endif - %cmake_kde4 -d build - %make_jobs +mkdir build +cd build +cmake -DCMAKE_BUILD_TYPE=%{_kf5_build_type} \ + -DCMAKE_INSTALL_PREFIX=%{_kf5_prefix} \ + -DCMAKE_PREFIX_PATH=%{_kf5_prefix} \ + -DKDE_INSTALL_LIBDIR=%{_lib} \ + -DKDE_INSTALL_SYSCONFDIR=%{_kf5_sysconfdir} \ + -DKDE_INSTALL_QTPLUGINDIR=%{_lib}/qt5/plugins \ + -DKDE_INSTALL_PLUGINDIR=%{_lib}/qt5/plugins \ + -DKDE_INSTALL_QMLDIR=%{_lib}/qt5/qml \ + -DKDE_INSTALL_QTQUICKIMPORTSDIR=%{_lib}/qt5/imports \ + -DECM_MKSPECS_INSTALL_DIR=%{_kf5_mkspecsdir} \ + -DBUILD_TESTING=OFF \ + -DBUILD_MARBLE_TESTS=NO \ +%ifarch x86_64 + -DLIB_SUFFIX=64 \ +%endif + -DWITH_KF5=TRUE \ + .. +%make_jobs %install - %kde4_makeinstall -C build - %kde_post_install + %kf5_makeinstall -C build %fdupes -s %{buildroot} + rm -rf %{buildroot}/designer + rm -rf %{buildroot}%{_bindir}/marble-mobile + rm -rf %{buildroot}%{_bindir}/marble-touch + rm -rf %{buildroot}%{_kf5_applicationsdir}/marble-mobile.desktop + rm -rf %{buildroot}%{_kf5_applicationsdir}/marble-touch.desktop -#remove additional desktop files as they cause multiple non distinguishable entries in the homerun (https://bugs.kde.org/show_bug.cgi?id=327405#c8) or even a single random entry in kickoff - rm -rf %{buildroot}/usr/share/applications/kde4/marble-touch.desktop +%post -n libmarblewidget-qt5%{_so} -p /sbin/ldconfig -%post -n libmarblewidget%{_so} -p /sbin/ldconfig +%postun -n libmarblewidget-qt5%{_so} -p /sbin/ldconfig -%postun -n libmarblewidget%{_so} -p /sbin/ldconfig +%post -n libastro2 -p /sbin/ldconfig -%post -n libastro1 -p /sbin/ldconfig - -%postun -n libastro1 -p /sbin/ldconfig +%postun -n libastro2 -p /sbin/ldconfig %files %defattr(-,root,root) %doc CREDITS ChangeLog COPYING* LICENSE* MANIFESTO.txt -%dir %{_kde4_datadir}/appdata -%dir %{_kde4_libdir}/qt4/plugins/imports/org -%dir %{_kde4_libdir}/qt4/plugins/imports/org/kde/ -%dir %{_kde4_libdir}/qt4/plugins/imports/org/kde/edu/ -%exclude %{_kde4_appsdir}/marble/data -%{_kde4_applicationsdir}/marble.desktop -%{_kde4_applicationsdir}/marble_gpx.desktop -%{_kde4_applicationsdir}/marble_kml.desktop -%{_kde4_applicationsdir}/marble_osm.desktop -%{_kde4_applicationsdir}/marble_kmz.desktop -%{_kde4_applicationsdir}/marble_geo.desktop -%{_kde4_applicationsdir}/marble_worldwind.desktop -%{_kde4_appsdir}/marble/ -%{_kde4_bindir}/marble* -#{_kde4_bindir}/routing-instructions -#{_kde4_bindir}/tilecreator -%{_kde4_configkcfgdir}/marble.kcfg -%{_kde4_datadir}/appdata/marble.appdata.xml -%{_kde4_datadir}/mime/packages/geo.xml -%{_kde4_iconsdir}/hicolor/*/apps/marble.* -%{_kde4_libdir}/qt4/plugins/imports/org/kde/edu/marble/ -%{_kde4_modulesdir}/libmarble_part.so -%{_kde4_modulesdir}/marblethumbnail.so -%{_kde4_modulesdir}/plasma_applet_worldclock.so -%{_kde4_modulesdir}/plasma_runner_marble.so -%{_kde4_modulesdir}/plugins/designer/* -%{_kde4_modulesdir}/plugins/marble/ -%{_kde4_servicesdir}/*.desktop +%{_datadir}/marble/ +%{_datadir}/appdata/ +%{_kf5_iconsdir}/hicolor/*/apps/marble.* +%{_libdir}/marble/ +%{_libdir}/libmarbledeclarative.so +%dir %{_libdir}/plugins/ +%{_libdir}/plugins/designer/ +%exclude %{_datadir}/marble/data +%_kf5_plugindir/libmarble*so +%_kf5_plugindir/libplasma_runner_marble.so +%_kf5_servicesdir/*desktop +%_kf5_kxmlguidir/marble/ +%_kf5_configkcfgdir/ +%_kf5_applicationsdir/marble_geo.desktop +%_kf5_applicationsdir/marble_gpx.desktop +%_kf5_applicationsdir/marble_kml.desktop +%_kf5_applicationsdir/marble_kmz.desktop +%_kf5_applicationsdir/marble_osm.desktop +%_kf5_applicationsdir/marble_worldwind.desktop +%_kf5_bindir/marble-maps %files devel %defattr(-,root,root) %doc BUGS CODING %{_includedir}/marble/ %{_includedir}/astro/ -%{_kde4_libdir}/libmarblewidget.so -%{_kde4_libdir}/libastro.so -%{_kde4_appsdir}/cmake/modules/FindMarble.cmake +%{_kf5_libdir}/libmarblewidget-qt5.so +%{_kf5_libdir}/libastro.so %files data %defattr(-,root,root) -%{_kde4_appsdir}/marble/data +%{_datadir}/marble/data %files doc %defattr(-,root,root) -%{_kde4_htmldir}/en/marble/ +%_kf5_htmldir/en/marble/ -%files -n libmarblewidget%{_so} +%files -n libmarblewidget-qt5%{_so} %defattr(-,root,root) -%{_kde4_libdir}/libmarblewidget.so.* +%{_kf5_libdir}/libmarblewidget-qt5.so.* -%files -n libastro1 +%files -n libastro2 %defattr(-,root,root) -%{_kde4_libdir}/libastro.so.* +%{_kf5_libdir}/libastro.so.* + +%files qt +%defattr(-,root,root) +%{_kf5_applicationsdir}/marble-qt.desktop +%{_kf5_bindir}/marble-qt + +%files kde +%defattr(-,root,root) +%{_kf5_applicationsdir}/marble.desktop +%{_kf5_bindir}/marble %changelog