[packages/ktextaddons] - build both kf5/kf6 variants (as kf5-ktextaddons* / kf6-ktextaddons*); release 2

qboosh qboosh at pld-linux.org
Mon Oct 21 22:25:36 CEST 2024


commit adb0c9b117249cfff378795ae0414d6f893dec26
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date:   Mon Oct 21 22:25:05 2024 +0200

    - build both kf5/kf6 variants (as kf5-ktextaddons* / kf6-ktextaddons*); release 2

 ktextaddons.spec | 308 +++++++++++++++++++++++++++++++++++++++++++------------
 1 file changed, 245 insertions(+), 63 deletions(-)
---
diff --git a/ktextaddons.spec b/ktextaddons.spec
index 1e03c94..97c1739 100644
--- a/ktextaddons.spec
+++ b/ktextaddons.spec
@@ -1,43 +1,70 @@
 #
 # Conditional build:
+%bcond_without	kf5		# Qt5/KF5 packages
+%bcond_without	kf6		# Qt6/KF6 packages
 %bcond_with	tests		# test suite
 
 %define		kdeframever	5.105
-%define		qtver		5.15.2
+%define		qt5_ver		5.15.2
+%define		kf5_ver		5.105.0
+%define		qt6_ver		6.5.0
+%define		kf6_ver		5.240.0
 
 Summary:	Various text handling addons
 Summary(pl.UTF-8):	Różne dodatki do obsługi tekstu
 Name:		ktextaddons
 Version:	1.5.4
-Release:	1
-License:	BSD-3-Clause
+Release:	2
+License:	BSD
 Group:		X11/Libraries
 Source0:	https://download.kde.org/stable/ktextaddons/%{name}-%{version}.tar.xz
 # Source0-md5:	0f54cdc35860c7f9d3b6245037bf0b15
 URL:		https://kde.org/
-BuildRequires:	Qt6Core-devel
-BuildRequires:	Qt6Gui-devel >= 5.15.9
-BuildRequires:	Qt6Keychain-devel
-BuildRequires:	Qt6Network-devel
-BuildRequires:	Qt6TextToSpeech-devel
-BuildRequires:	Qt6UiTools-devel
-BuildRequires:	Qt6Widgets-devel >= 5.15.2
 BuildRequires:	cmake >= 3.20
-BuildRequires:	gettext-devel
-BuildRequires:	kf6-extra-cmake-modules >= 5.103.0
-BuildRequires:	kf6-karchive-devel >= 5.103.0
-BuildRequires:	kf6-kauth-devel >= 5.105.0
-BuildRequires:	kf6-kcodecs-devel >= 5.105.0
-BuildRequires:	kf6-kconfigwidgets-devel >= 5.105.0
-BuildRequires:	kf6-kcoreaddons-devel >= 5.103.0
-BuildRequires:	kf6-ki18n-devel >= 5.103.0
-BuildRequires:	kf6-kwidgetsaddons-devel >= 5.105.0
-BuildRequires:	kf6-kxmlgui-devel >= 5.103.0
+BuildRequires:	gettext-tools
+BuildRequires:	kf6-extra-cmake-modules >= 5.105.0
 BuildRequires:	ninja
 BuildRequires:	rpmbuild(macros) >= 1.736
 BuildRequires:	tar >= 1:1.22
 BuildRequires:	xz
-Requires:	kf6-dirs
+%if %{with kf5}
+BuildRequires:	Qt5Core-devel >= %{qt5_ver}
+BuildRequires:	Qt5Gui-devel >= %{qt5_ver}
+BuildRequires:	Qt5Keychain-devel
+BuildRequires:	Qt5Network-devel >= %{qt5_ver}
+BuildRequires:	Qt5Speech-devel >= %{qt5_ver}
+%if %{with tests}
+BuildRequires:	Qt5Test-devel >= %{qt5_ver}
+%endif
+BuildRequires:	Qt5Widgets-devel >= %{qt5_ver}
+BuildRequires:	kf5-karchive-devel >= %{kf5_ver}
+BuildRequires:	kf5-kconfigwidgets-devel >= %{kf5_ver}
+BuildRequires:	kf5-kcoreaddons-devel >= %{kf5_ver}
+BuildRequires:	kf5-ki18n-devel >= %{kf5_ver}
+BuildRequires:	kf5-kio-devel >= %{kf5_ver}
+BuildRequires:	kf5-sonnet-devel >= %{kf5_ver}
+BuildRequires:	kf5-syntax-highlighting-devel >= %{kf5_ver}
+BuildRequires:	kf5-kwidgetsaddons-devel >= %{kf5_ver}
+%endif
+%if %{with kf6}
+BuildRequires:	Qt6Core-devel >= %{qt6_ver}
+BuildRequires:	Qt6Gui-devel >= %{qt6_ver}
+BuildRequires:	Qt6Keychain-devel
+BuildRequires:	Qt6Network-devel >= %{qt6_ver}
+%if %{with tests}
+BuildRequires:	Qt6Test-devel >= %{qt6_ver}
+%endif
+BuildRequires:	Qt6TextToSpeech-devel >= %{qt6_ver}
+BuildRequires:	Qt6Widgets-devel >= %{qt6_ver}
+BuildRequires:	kf6-karchive-devel >= %{kf6_ver}
+BuildRequires:	kf6-kconfigwidgets-devel >= %{kf6_ver}
+BuildRequires:	kf6-kcoreaddons-devel >= %{kf6_ver}
+BuildRequires:	kf6-ki18n-devel >= %{kf6_ver}
+BuildRequires:	kf6-kio-devel >= %{kf6_ver}
+BuildRequires:	kf6-sonnet-devel >= %{kf6_ver}
+BuildRequires:	kf6-syntax-highlighting-devel >= %{kf6_ver}
+BuildRequires:	kf6-kwidgetsaddons-devel >= %{kf6_ver}
+%endif
 BuildRoot:	%{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
 %description
@@ -46,75 +73,229 @@ Various text handling addons.
 %description -l pl.UTF-8
 Różne dodatki do obsługi tekstu.
 
-%package devel
-Summary:	Header files for %{name} development
-Summary(pl.UTF-8):	Pliki nagłówkowe dla programistów używających %{name}
+%package -n kf5-ktextaddons
+Summary:	Various text handling addons for KF5
+Summary(pl.UTF-8):	Różne dodatki do obsługi tekstu dla KF5
+Group:		X11/Libraries
+Requires:	Qt5Core >= %{qt5_ver}
+Requires:	Qt5Gui >= %{qt5_ver}
+Requires:	Qt5Network >= %{qt5_ver}
+Requires:	Qt5Speech >= %{qt5_ver}
+Requires:	Qt5Widgets >= %{qt5_ver}
+Requires:	kf5-dirs
+Requires:	kf5-karchive >= %{kf5_ver}
+Requires:	kf5-kconfigwidgets >= %{kf5_ver}
+Requires:	kf5-kcoreaddons >= %{kf5_ver}
+Requires:	kf5-ki18n >= %{kf5_ver}
+Requires:	kf5-kio >= %{kf5_ver}
+Requires:	kf5-sonnet >= %{kf5_ver}
+Requires:	kf5-syntax-highlighting >= %{kf5_ver}
+Requires:	kf5-kwidgetsaddons >= %{kf5_ver}
+Obsoletes:	ktextaddons < 1.5.3
+
+%description -n kf5-ktextaddons
+Various text handling addons for KF5.
+
+%description -n kf5-ktextaddons -l pl.UTF-8
+Różne dodatki do obsługi tekstu dla KF5.
+
+%package -n kf5-ktextaddons-devel
+Summary:	Header files for KF5 ktextaddons development
+Summary(pl.UTF-8):	Pliki nagłówkowe dla programistów używających KF5 ktextaddons
+Group:		X11/Development/Libraries
+Requires:	Qt5Core-devel >= %{qt5_ver}
+Requires:	Qt5Widgets-devel >= %{qt5_ver}
+Requires:	kf5-ktextaddons = %{version}-%{release}
+Requires:	kf5-kconfigwidgets-devel >= %{kf5_ver}
+Obsoletes:	ktextaddons-devel < 1.5.3
+
+%description -n kf5-ktextaddons-devel
+Header files for KF5 ktextaddons development.
+
+%description -n kf5-ktextaddons-devel -l pl.UTF-8
+Pliki nagłówkowe dla programistów używających KF5 ktextaddons.
+
+%package -n kf6-ktextaddons
+Summary:	Various text handling addons for KF6
+Summary(pl.UTF-8):	Różne dodatki do obsługi tekstu dla KF6
+Group:		X11/Libraries
+Requires:	Qt6Core >= %{qt6_ver}
+Requires:	Qt6Gui >= %{qt6_ver}
+Requires:	Qt6Network >= %{qt6_ver}
+Requires:	Qt6Speech >= %{qt6_ver}
+Requires:	Qt6Widgets >= %{qt6_ver}
+Requires:	kf6-dirs
+Requires:	kf6-karchive >= %{kf6_ver}
+Requires:	kf6-kconfigwidgets >= %{kf6_ver}
+Requires:	kf6-kcoreaddons >= %{kf6_ver}
+Requires:	kf6-ki18n >= %{kf6_ver}
+Requires:	kf6-kio >= %{kf6_ver}
+Requires:	kf6-sonnet >= %{kf6_ver}
+Requires:	kf6-syntax-highlighting >= %{kf6_ver}
+Requires:	kf6-kwidgetsaddons >= %{kf6_ver}
+Obsoletes:	ktextaddons < 1.5.4-2
+
+%description -n kf6-ktextaddons
+Various text handling addons for KF6.
+
+%description -n kf6-ktextaddons -l pl.UTF-8
+Różne dodatki do obsługi tekstu dla KF6.
+
+%package -n kf6-ktextaddons-devel
+Summary:	Header files for KF6 ktextaddons development
+Summary(pl.UTF-8):	Pliki nagłówkowe dla programistów używających KF6 ktextaddons
 Group:		X11/Development/Libraries
-Requires:	%{name} = %{version}-%{release}
-Requires:	Qt6DBus-devel >= %{qtver}
-Requires:	Qt6Xml-devel >= %{qtver}
-Requires:	cmake >= 3.16
+Requires:	Qt6Core-devel >= %{qt6_ver}
+Requires:	Qt6Widgets-devel >= %{qt6_ver}
+Requires:	kf6-ktextaddons = %{version}-%{release}
+Requires:	kf6-kconfigwidgets-devel >= %{kf6_ver}
+Obsoletes:	ktextaddons-devel < 1.5.4-2
 
-%description devel
-Header files for %{name} development.
+%description -n kf6-ktextaddons-devel
+Header files for KF6 ktextaddons development.
 
-%description devel -l pl.UTF-8
-Pliki nagłówkowe dla programistów używających %{name}.
+%description -n kf6-ktextaddons-devel -l pl.UTF-8
+Pliki nagłówkowe dla programistów używających KF6 ktextaddons.
 
 %prep
 %setup -q
 
 %build
-%cmake -B build \
+%if %{with kf5}
+%cmake -B build-kf5 \
 	-G Ninja \
 	%{!?with_tests:-DBUILD_TESTING=OFF} \
 	-DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
-	-DQT_MAJOR_VERSION=6
+	-DQT_MAJOR_VERSION=5
 
-%ninja_build -C build
+%ninja_build -C build-kf5
 
 %if %{with tests}
-cd build
-ctest
+ctest --test-dir build-kf5
+%endif
 %endif
 
+%if %{with kf6}
+%cmake -B build-kf6 \
+	-G Ninja \
+	%{!?with_tests:-DBUILD_TESTING=OFF} \
+	-DKDE_INSTALL_USE_QT_SYS_PATHS=ON \
+	-DQT_MAJOR_VERSION=6
+
+%ninja_build -C build-kf6
+
+%if %{with tests}
+ctest --test-dir build-kf6
+%endif
+%endif
 
 %install
 rm -rf $RPM_BUILD_ROOT
-%ninja_install -C build
 
-%find_lang %{name} --with-qm --all-name --with-kde
+%if %{with kf5}
+%ninja_install -C build-kf5
+%endif
+
+%if %{with kf6}
+%ninja_install -C build-kf6
+%endif
+
+# multiple domains; common for kf5 and kf6
+%find_lang %{name} --all-name
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
-%post -p /sbin/ldconfig
-%postun -p /sbin/ldconfig
+%post	-n kf5-ktextaddons -p /sbin/ldconfig
+%postun	-n kf5-ktextaddons -p /sbin/ldconfig
+
+%post	-n kf6-ktextaddons -p /sbin/ldconfig
+%postun	-n kf6-ktextaddons -p /sbin/ldconfig
+
+%if %{with kf5}
+%files -n kf5-ktextaddons -f %{name}.lang
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libKF5TextAddonsWidgets.so.*.*.*
+%ghost %{_libdir}/libKF5TextAddonsWidgets.so.1
+%attr(755,root,root) %{_libdir}/libKF5TextAutoCorrection.so.*.*.*
+%ghost %{_libdir}/libKF5TextAutoCorrection.so.1
+%attr(755,root,root) %{_libdir}/libKF5TextEditTextToSpeech.so.*.*.*
+%ghost %{_libdir}/libKF5TextEditTextToSpeech.so.1
+%attr(755,root,root) %{_libdir}/libKF5TextEmoticonsCore.so.*.*.*
+%ghost %{_libdir}/libKF5TextEmoticonsCore.so.1
+%attr(755,root,root) %{_libdir}/libKF5TextEmoticonsWidgets.so.*.*.*
+%ghost %{_libdir}/libKF5TextEmoticonsWidgets.so.1
+%attr(755,root,root) %{_libdir}/libKF5TextGrammarCheck.so.*.*.*
+%ghost %{_libdir}/libKF5TextGrammarCheck.so.1
+%attr(755,root,root) %{_libdir}/libKF5TextTranslator.so.*.*.*
+%ghost %{_libdir}/libKF5TextTranslator.so.1
+%attr(755,root,root) %{_libdir}/qt5/plugins/designer/texttranslatorwidgets5.so
+%dir %{_libdir}/qt5/plugins/kf5/translator
+%attr(755,root,root) %{_libdir}/qt5/plugins/kf5/translator/translator_bing.so
+%attr(755,root,root) %{_libdir}/qt5/plugins/kf5/translator/translator_deepl.so
+%attr(755,root,root) %{_libdir}/qt5/plugins/kf5/translator/translator_google.so
+%attr(755,root,root) %{_libdir}/qt5/plugins/kf5/translator/translator_libretranslate.so
+%attr(755,root,root) %{_libdir}/qt5/plugins/kf5/translator/translator_lingva.so
+%attr(755,root,root) %{_libdir}/qt5/plugins/kf5/translator/translator_yandex.so
+
+%files -n kf5-ktextaddons-devel
+%defattr(644,root,root,755)
+%{_libdir}/libKF5TextAddonsWidgets.so
+%{_libdir}/libKF5TextAutoCorrection.so
+%{_libdir}/libKF5TextEditTextToSpeech.so
+%{_libdir}/libKF5TextEmoticonsCore.so
+%{_libdir}/libKF5TextEmoticonsWidgets.so
+%{_libdir}/libKF5TextGrammarCheck.so
+%{_libdir}/libKF5TextTranslator.so
+%{_includedir}/KF5/TextAddonsWidgets
+%{_includedir}/KF5/TextAutoCorrection
+%{_includedir}/KF5/TextEditTextToSpeech
+%{_includedir}/KF5/TextEmoticonsCore
+%{_includedir}/KF5/TextEmoticonsWidgets
+%{_includedir}/KF5/TextGrammarCheck
+%{_includedir}/KF5/TextTranslator
+%{_libdir}/cmake/KF5TextAddonsWidgets
+%{_libdir}/cmake/KF5TextAutoCorrection
+%{_libdir}/cmake/KF5TextEditTextToSpeech
+%{_libdir}/cmake/KF5TextEmoticonsCore
+%{_libdir}/cmake/KF5TextEmoticonsWidgets
+%{_libdir}/cmake/KF5TextGrammarCheck
+%{_libdir}/cmake/KF5TextTranslator
+%{_libdir}/qt5/mkspecs/modules/qt_TextAutoCorrection.pri
+%{_libdir}/qt5/mkspecs/modules/qt_TextEditTextToSpeech.pri
+%{_libdir}/qt5/mkspecs/modules/qt_TextGrammarCheck.pri
+%{_libdir}/qt5/mkspecs/modules/qt_TextTranslator.pri
+%{_libdir}/qt5/mkspecs/modules/qt_textaddonswidgets.pri
+%{_libdir}/qt5/mkspecs/modules/qt_textemoticonscore.pri
+%{_libdir}/qt5/mkspecs/modules/qt_textemoticonswidgets.pri
+%endif
 
-%files -f %{name}.lang
+%if %{with kf6}
+%files -n kf6-ktextaddons -f %{name}.lang
 %defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libKF6TextAddonsWidgets.so.*.*.*
 %ghost %{_libdir}/libKF6TextAddonsWidgets.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextAddonsWidgets.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextAutoCorrectionCore.so.*.*.*
 %ghost %{_libdir}/libKF6TextAutoCorrectionCore.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextAutoCorrectionCore.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextAutoCorrectionWidgets.so.*.*.*
 %ghost %{_libdir}/libKF6TextAutoCorrectionWidgets.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextAutoCorrectionWidgets.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextCustomEditor.so.*.*.*
 %ghost %{_libdir}/libKF6TextCustomEditor.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextCustomEditor.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextEditTextToSpeech.so.*.*.*
 %ghost %{_libdir}/libKF6TextEditTextToSpeech.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextEditTextToSpeech.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextEmoticonsCore.so.*.*.*
 %ghost %{_libdir}/libKF6TextEmoticonsCore.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextEmoticonsCore.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextEmoticonsWidgets.so.*.*.*
 %ghost %{_libdir}/libKF6TextEmoticonsWidgets.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextEmoticonsWidgets.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextGrammarCheck.so.*.*.*
 %ghost %{_libdir}/libKF6TextGrammarCheck.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextGrammarCheck.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextTranslator.so.*.*.*
 %ghost %{_libdir}/libKF6TextTranslator.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextTranslator.so.*.*
+%attr(755,root,root) %{_libdir}/libKF6TextUtils.so.*.*.*
 %ghost %{_libdir}/libKF6TextUtils.so.1
-%attr(755,root,root) %{_libdir}/libKF6TextUtils.so.*.*
 %attr(755,root,root) %{_libdir}/qt6/plugins/designer/textcustomeditor.so
 %attr(755,root,root) %{_libdir}/qt6/plugins/designer/texttranslatorwidgets6.so
+%dir %{_libdir}/qt6/plugins/kf6/translator
 %attr(755,root,root) %{_libdir}/qt6/plugins/kf6/translator/translator_bing.so
 %attr(755,root,root) %{_libdir}/qt6/plugins/kf6/translator/translator_deepl.so
 %attr(755,root,root) %{_libdir}/qt6/plugins/kf6/translator/translator_google.so
@@ -124,8 +305,18 @@ rm -rf $RPM_BUILD_ROOT
 %{_datadir}/qlogging-categories6/ktextaddons.categories
 %{_datadir}/qlogging-categories6/ktextaddons.renamecategories
 
-%files devel
+%files -n kf6-ktextaddons-devel
 %defattr(644,root,root,755)
+%{_libdir}/libKF6TextAddonsWidgets.so
+%{_libdir}/libKF6TextAutoCorrectionCore.so
+%{_libdir}/libKF6TextAutoCorrectionWidgets.so
+%{_libdir}/libKF6TextCustomEditor.so
+%{_libdir}/libKF6TextEditTextToSpeech.so
+%{_libdir}/libKF6TextEmoticonsCore.so
+%{_libdir}/libKF6TextEmoticonsWidgets.so
+%{_libdir}/libKF6TextGrammarCheck.so
+%{_libdir}/libKF6TextTranslator.so
+%{_libdir}/libKF6TextUtils.so
 %{_includedir}/KF6/TextAddonsWidgets
 %{_includedir}/KF6/TextAutoCorrectionCore
 %{_includedir}/KF6/TextAutoCorrectionWidgets
@@ -146,13 +337,4 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/cmake/KF6TextGrammarCheck
 %{_libdir}/cmake/KF6TextTranslator
 %{_libdir}/cmake/KF6TextUtils
-%{_libdir}/libKF6TextAddonsWidgets.so
-%{_libdir}/libKF6TextAutoCorrectionCore.so
-%{_libdir}/libKF6TextAutoCorrectionWidgets.so
-%{_libdir}/libKF6TextCustomEditor.so
-%{_libdir}/libKF6TextEditTextToSpeech.so
-%{_libdir}/libKF6TextEmoticonsCore.so
-%{_libdir}/libKF6TextEmoticonsWidgets.so
-%{_libdir}/libKF6TextGrammarCheck.so
-%{_libdir}/libKF6TextTranslator.so
-%{_libdir}/libKF6TextUtils.so
+%endif
================================================================

---- gitweb:

http://git.pld-linux.org/gitweb.cgi/packages/ktextaddons.git/commitdiff/adb0c9b117249cfff378795ae0414d6f893dec26



More information about the pld-cvs-commit mailing list