%global framework kconfig # uncomment to enable bootstrap mode #global bootstrap 1 %if !0%{?bootstrap} # FIXME/TODO: sip currently segfaults on s390x %if 0%{?fedora} %ifnarch ppc64 s390x %if 0%{?fedora} < 29 %global python 1 %endif %endif %endif #endif %global tests 1 %endif # use ninja instead of make %global ninja 1 Name: kf5-%{framework} Version: 5.62.0 Release: 1%{?dist} Summary: KDE Frameworks 5 Tier 1 addon with advanced configuration system License: GPLv2+ and LGPLv2+ and MIT URL: https://cgit.kde.org/%{framework}.git %global majmin %(echo %{version} | cut -d. -f1-2) %global revision %(echo %{version} | cut -d. -f3) %if %{revision} >= 50 %global stable unstable %else %global stable stable %endif Source0: http://download.kde.org/%{stable}/frameworks/%{majmin}/%{framework}-%{version}.tar.xz ## upstream patches ## upstreamable patches %if 0%{?ninja} BuildRequires: ninja-build %endif BuildRequires: extra-cmake-modules >= %{majmin} BuildRequires: kf5-rpm-macros >= %{majmin} BuildRequires: pkgconfig(Qt5Gui) BuildRequires: pkgconfig(Qt5Xml) BuildRequires: qt5-qtbase-devel BuildRequires: qt5-qttools-devel %if 0%{?python} %if 0%{?fedora} && 0%{?fedora} < 27 BuildRequires: bundled(python2-clang) >= 4.0.1 %else BuildRequires: python2-clang %endif BuildRequires: clang BuildRequires: clang-devel BuildRequires: python2-PyQt5-devel BuildRequires: python3-PyQt5-devel %else Obsoletes: python2-pykf5-%{framework} < %{version}-%{release} Obsoletes: python3-pykf5-%{framework} < %{version}-%{release} Obsoletes: pykf5-%{framework}-devel < %{version}-%{release} %endif %if 0%{?tests} BuildRequires: dbus-x11 BuildRequires: time BuildRequires: xorg-x11-server-Xvfb %endif Requires: kf5-filesystem >= %{majmin} Requires: %{name}-core%{?_isa} = %{version}-%{release} Requires: %{name}-gui%{?_isa} = %{version}-%{release} %description KDE Frameworks 5 Tier 1 addon with advanced configuration system made of two parts: KConfigCore and KConfigGui. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: pkgconfig(Qt5Xml) %description devel The %{name}-devel package contains libraries and header files for developing applications that use %{name}. %package core Summary: Non-GUI part of KConfig framework Requires: kde-settings %description core KConfigCore provides access to the configuration files themselves. It features centralized definition and lock-down (kiosk) support. %package gui Summary: GUI part of KConfig framework Requires: %{name}-core%{?_isa} = %{version}-%{release} %description gui KConfigGui provides a way to hook widgets to the configuration so that they are automatically initialized from the configuration and automatically propagate their changes to their respective configuration files. %if 0%{?python} %package -n python2-pykf5-%{framework} Summary: Python2 bindings for %{framework} Requires: %{name} = %{version}-%{release} %description -n python2-pykf5-%{framework} %{summary}. %package -n python3-pykf5-%{framework} Summary: Python3 bindings for %{framework} Requires: %{name} = %{version}-%{release} %description -n python3-pykf5-%{framework} %{summary}. %package -n pykf5-%{framework}-devel Summary: SIP files for %{framework} Python bindings BuildArch: noarch %description -n pykf5-%{framework}-devel %{summary}. %endif %prep %autosetup -n %{framework}-%{version} -p1 %build %if 0%{?python:1} PYTHONPATH=%{_datadir}/ECM/python export PYTHONPATH %endif mkdir %{_target_platform} pushd %{_target_platform} %{cmake_kf5} .. \ %{?ninja:-G Ninja} \ %{?tests:-DBUILD_TESTING:BOOL=ON} popd %if 0%{?ninja} %ninja_build -C %{_target_platform} %else %make_build -C %{_target_platform} %endif %install %if 0%{?ninja} %ninja_install -C %{_target_platform} %else make install/fast DESTDIR=%{buildroot} -C %{_target_platform} %endif %find_lang_kf5 kconfig5_qt %check %if 0%{?tests} export CTEST_OUTPUT_ON_FAILURE=1 ## cant use %%ninja_test here for some reason, doesn't inherit env vars from xvfb or dbus -- rex xvfb-run -a \ %if 0%{?ninja} ninja test -v -C %{_target_platform} ||: %else make test -C %{_target_platform} ARGS="--output-on-failure --timeout 300" ||: %endif %endif %files %doc DESIGN README.md TODO %license COPYING.LIB %ldconfig_scriptlets core %files core -f kconfig5_qt.lang %{_kf5_datadir}/qlogging-categories5/%{framework}* %{_kf5_bindir}/kreadconfig5 %{_kf5_bindir}/kwriteconfig5 %{_kf5_libdir}/libKF5ConfigCore.so.* %{_kf5_libexecdir}/kconfig_compiler_kf5 %{_kf5_libexecdir}/kconf_update %ldconfig_scriptlets gui %files gui %{_kf5_libdir}/libKF5ConfigGui.so.* %files devel %{_kf5_includedir}/kconfig_version.h %{_kf5_includedir}/KConfigCore/ %{_kf5_includedir}/KConfigGui/ %{_kf5_libdir}/libKF5ConfigCore.so %{_kf5_libdir}/libKF5ConfigGui.so %{_kf5_libdir}/cmake/KF5Config/ %{_kf5_archdatadir}/mkspecs/modules/qt_KConfigCore.pri %{_kf5_archdatadir}/mkspecs/modules/qt_KConfigGui.pri %if 0%{?python} %files -n python2-pykf5-%{framework} %{python2_sitearch}/PyKF5/ %files -n python3-pykf5-%{framework} %{python3_sitearch}/PyKF5/ %files -n pykf5-%{framework}-devel %{_datadir}/sip/PyKF5/ %endif %changelog * Mon Sep 16 2019 Rex Dieter - 5.62.0-1 - 5.62.0 * Wed Aug 07 2019 Rex Dieter - 5.61.0-1 - 5.61.0 * Thu Jul 25 2019 Fedora Release Engineering - 5.60.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sat Jul 13 2019 Rex Dieter - 5.60.0-1 - 5.60.0 * Thu Jun 06 2019 Rex Dieter - 5.59.0-1 - 5.59.0 * Tue May 07 2019 Rex Dieter - 5.58.0-1 - 5.58.0 * Tue Apr 09 2019 Rex Dieter - 5.57.0-1 - 5.57.0 * Tue Mar 05 2019 Rex Dieter - 5.56.0-1 - 5.56.0 * Mon Feb 04 2019 Rex Dieter - 5.55.0-1 - 5.55.0 * Fri Feb 01 2019 Fedora Release Engineering - 5.54.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Tue Jan 08 2019 Rex Dieter - 5.54.0-1 - 5.54.0 * Sun Dec 09 2018 Rex Dieter - 5.53.0-1 - 5.53.0 * Sun Nov 04 2018 Rex Dieter - 5.52.0-1 - 5.52.0 * Wed Oct 10 2018 Rex Dieter - 5.51.0-1 - 5.51.0 * Fri Sep 14 2018 Rex Dieter - 5.50.0-2 - disable python on f29+ * Tue Sep 04 2018 Rex Dieter - 5.50.0-1 - 5.50 * Tue Aug 07 2018 Rex Dieter - 5.49.0-1 - 5.49.0 * Wed Aug 01 2018 Rex Dieter - 5.48.0-3 - python: support on f29+ again, add Obsoletes otherwise (like ppc64/s390x) (#1610422) - macro'ize ninja support - .spec cosmetics (whitespace mostly) * Fri Jul 13 2018 Fedora Release Engineering - 5.48.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Mon Jul 09 2018 Rex Dieter - 5.48.0-1 - 5.48.0 * Thu Jun 07 2018 Rex Dieter - 5.47.0-2 - cleanup - use pkgconfig(Qt5...) style deps - use %%majmin %%make_build %%find_lang_kf5 %%ldconfig_scriptlets * Sat Jun 02 2018 Rex Dieter - 5.47.0-1 - 5.47.0 * Sat May 05 2018 Rex Dieter - 5.46.0-1 - 5.46.0 * Sun Apr 08 2018 Rex Dieter - 5.45.0-1 - 5.45.0 * Sat Mar 03 2018 Rex Dieter - 5.44.0-1 - 5.44.0 * Wed Feb 07 2018 Rex Dieter - 5.43.0-1 - 5.43.0 * Mon Jan 08 2018 Rex Dieter - 5.42.0-1 - 5.42.0 * Mon Dec 04 2017 Rex Dieter - 5.41.0-1 - 5.41.0 * Fri Nov 10 2017 Rex Dieter - 5.40.0-1 - 5.40.0 * Thu Oct 19 2017 Troy Dawson - 5.39.0-2 - Cleanup spec file conditionals * Sun Oct 08 2017 Rex Dieter - 5.39.0-1 - 5.39.0 * Wed Sep 13 2017 Rex Dieter - 5.38.0-5 - (re)enable python, use ninja * Wed Sep 13 2017 Rex Dieter - 5.38.0-4 - disable python, failing on arm7hl, aarch64, ppc64le archs * Wed Sep 13 2017 Rex Dieter - 5.38.0-3 - enable python bindings * Wed Sep 13 2017 Rex Dieter - 5.38.0-2 - cosmetics, support %%bootstrap, autotests - initial support for python bindings (not ready yet) * Mon Sep 11 2017 Rex Dieter - 5.38.0-1 - 5.38.0 * Fri Aug 25 2017 Rex Dieter - 5.37.0-1 - 5.37.0 * Thu Aug 03 2017 Fedora Release Engineering - 5.36.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild * Wed Jul 26 2017 Fedora Release Engineering - 5.36.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild * Mon Jul 03 2017 Rex Dieter - 5.36.0-1 - 5.36.0 * Sun Jun 04 2017 Rex Dieter - 5.35.0-1 - 5.35.0 * Mon May 15 2017 Rex Dieter - 5.34.0-1 - 5.34.0 * Mon Apr 03 2017 Rex Dieter - 5.33.0-1 - 5.33.0 * Sat Mar 04 2017 Rex Dieter - 5.32.0-1 - 5.32.0 * Mon Feb 06 2017 Rex Dieter - 5.31.0-1 - 5.31.0 * Fri Dec 16 2016 Rex Dieter - 5.29.0-1 - 5.29.0 * Fri Dec 16 2016 Rex Dieter - 5.29.0-1 - 5.29.0 * Mon Oct 03 2016 Rex Dieter - 5.27.0-1 - 5.27.0 * Wed Sep 07 2016 Daniel Vrátil - 5.26.0-1 - KDE Frameworks 5.26.0 * Mon Aug 08 2016 Daniel Vrátil - 5.25.0-1 - KDE Frameworks 5.25.0 * Wed Jul 06 2016 Daniel Vrátil - 5.24.0-1 - KDE Frameworks 5.24.0 * Tue Jun 07 2016 Daniel Vrátil - 5.23.0-1 - KDE Frameworks 5.23.0 * Mon May 16 2016 Rex Dieter - 5.22.0-1 - KDE Frameworks 5.22.0 * Mon May 16 2016 Rex Dieter - 5.21.0-2 - update URL * Mon Apr 04 2016 Rex Dieter - 5.21.0-1 - KDE Frameworks 5.21.0 * Mon Mar 14 2016 Daniel Vrátil - 5.20.0-1 - KDE Frameworks 5.20.0 * Thu Feb 11 2016 Daniel Vrátil - 5.19.0-1 - KDE Frameworks 5.19.0 * Thu Feb 04 2016 Fedora Release Engineering - 5.18.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild * Thu Jan 14 2016 Rex Dieter 5.18.0-2 - cosmetics, update URL, use %%license, -BR: cmake * Sun Jan 03 2016 Daniel Vrátil - 5.18.0-1 - KDE Frameworks 5.18.0 * Tue Dec 08 2015 Daniel Vrátil - 5.17.0-1 - KDE Frameworks 5.17.0 * Sun Nov 08 2015 Daniel Vrátil - 5.16.0-1 - KDE Frameworks 5.16.0 * Tue Oct 20 2015 Rex Dieter 5.15.0-2 - restore/upstream fullpath patch, BR: cmake, sort BR's * Thu Oct 08 2015 Daniel Vrátil - 5.15.0-1 - KDE Frameworks 5.15.0 * Wed Sep 16 2015 Daniel Vrátil - 5.14.0-1 - KDE Frameworks 5.14.0 * Wed Aug 19 2015 Daniel Vrátil - 5.13.0-1 - KDE Frameworks 5.13.0 * Wed Aug 19 2015 Daniel Vrátil - 5.13.0-1 - KDE Frameworks 5.13.0 * Tue Aug 11 2015 Daniel Vrátil - 5.13.0-0.1 - KDE Frameworks 5.13 * Thu Jul 09 2015 Rex Dieter - 5.12.0-1 - 5.12.0 * Thu Jul 09 2015 Rex Dieter 5.11.0-3 - update URL, minor cosmetics * Wed Jun 17 2015 Fedora Release Engineering - 5.11.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild * Wed Jun 10 2015 Daniel Vrátil - 5.11.0-1 - KDE Frameworks 5.11.0 * Tue May 12 2015 Rex Dieter 5.10.0-3 - followup fix to sm patch * Mon May 11 2015 Rex Dieter 5.10.0-2 - pull in reviewed/upstreamed session management fixes (kde#346768) * Mon May 11 2015 Daniel Vrátil - 5.10.0-1 - KDE Frameworks 5.10.0 * Sat May 09 2015 Rex Dieter 5.9.0-3 - Candidate session management fixes (kde#346768) * Wed Apr 15 2015 Rex Dieter - 5.9.0-2 - -core: Requires: kde-settings - .spec cosmetics * Tue Apr 07 2015 Daniel Vrátil - 5.9.0-1 - KDE Frameworks 5.9.0 * Mon Mar 16 2015 Daniel Vrátil - 5.8.0-1 - KDE Frameworks 5.8.0 * Fri Feb 27 2015 Daniel Vrátil - 5.7.0-2 - Rebuild (GCC 5) * Mon Feb 16 2015 Daniel Vrátil - 5.7.0-1 - KDE Frameworks 5.7.0 * Thu Jan 08 2015 Daniel Vrátil - 5.6.0-1 - KDE Frameworks 5.6.0 * Mon Dec 08 2014 Daniel Vrátil - 5.5.0-1 - KDE Frameworks 5.5.0 * Mon Nov 03 2014 Daniel Vrátil - 5.4.0-1 - KDE Frameworks 5.4.0 * Tue Oct 07 2014 Daniel Vrátil - 5.3.0-1 - KDE Frameworks 5.3.0 * Thu Sep 11 2014 Daniel Vrátil - 5.2.0-1 - KDE Frameworks 5.2.0 * Sat Aug 16 2014 Fedora Release Engineering - 5.1.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild * Wed Aug 06 2014 Daniel Vrátil - 5.1.0-1 - KDE Frameworks 5.1.0 * Wed Jul 09 2014 Daniel Vrátil - 5.0.0-1 - KDE Frameworks 5.0.0 * Sun Jun 08 2014 Fedora Release Engineering - 4.100.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild * Tue Jun 03 2014 Daniel Vrátil - 4.100.0-1 - KDE Frameworks 4.100.0 * Tue May 20 2014 Daniel Vrátil - 4.99.0-3 - Fix license and description - Add %%post and %%postun to subpackages * Tue May 06 2014 Daniel Vrátil - 4.99.0-2 - Rebuild against updated kf5-rpm-macros * Mon May 05 2014 Daniel Vrátil - 4.99.0-1 - KDE Frameworks 4.99.0 * Mon Mar 31 2014 Jan Grulich 4.98.0-1 - Update to KDE Frameworks 5 Beta 1 (4.98.0) * Wed Mar 05 2014 Jan Grulich 4.97.0-1 - Update to KDE Frameworks 5 Alpha 1 (4.97.0) * Wed Feb 12 2014 Daniel Vrátil 4.96.0-1 - Update to KDE Frameworks 5 Alpha 1 (4.96.0) * Wed Feb 05 2014 Daniel Vrátil 4.96.0-0.1.20140205git - Update to pre-release snapshot of 4.96.0 * Thu Jan 09 2014 Daniel Vrátil 4.95.0-1 - Update to KDE Frameworks 5 TP1 (4.95.0) * Sat Jan 4 2014 Daniel Vrátil - initial version