[packages/libaccounts-qt] - build also qt6 version (taken from OpenMandriva) - rel 2
witekfl
witekfl at pld-linux.org
Thu Feb 8 17:36:33 CET 2024
commit a72355977824c118aaa872ed0878d488bf259396
Author: Witold Filipczyk <witekfl at poczta.onet.pl>
Date: Thu Feb 8 17:03:34 2024 +0100
- build also qt6 version (taken from OpenMandriva)
- rel 2
libaccounts-qt.spec | 115 ++++++++++++++++++++++++++++++++++++++++++++--------
1 file changed, 99 insertions(+), 16 deletions(-)
---
diff --git a/libaccounts-qt.spec b/libaccounts-qt.spec
index ccda3e6..f486ab5 100644
--- a/libaccounts-qt.spec
+++ b/libaccounts-qt.spec
@@ -1,23 +1,35 @@
+# Conditional build:
+%bcond_without qt5 # build qt5 version
+%bcond_without qt6 # build qt6 version
Summary: Accounts management library for Qt 4 applications
Summary(pl.UTF-8): Biblioteka do zarządzania kontami dla aplikacji opartych na bibliotece Qt 4
Name: libaccounts-qt
Version: 1.16
-Release: 1
+Release: 2
License: LGPL v2.1
Group: Libraries
#Source0Download: https://gitlab.com/accounts-sso/libaccounts-qt/tags?sort=updated_desc
Source0: https://gitlab.com/accounts-sso/libaccounts-qt/-/archive/VERSION_%{version}/libaccounts-qt-VERSION_%{version}.tar.bz2
# Source0-md5: 36fd9d6b6fd5582bf6c503bfd3827a62
URL: https://gitlab.com/accounts-sso/libaccounts-qt
+%if %{with qt5}
BuildRequires: Qt5Core-devel >= 5
BuildRequires: Qt5Test-devel >= 5
BuildRequires: Qt5Xml-devel >= 5
+BuildRequires: qt5-build >= 5
+BuildRequires: qt5-qmake >= 5
+%endif
+%if %{with qt6}
+BuildRequires: Qt6Core-devel >= 5
+BuildRequires: Qt6Test-devel >= 5
+BuildRequires: Qt6Xml-devel >= 5
+BuildRequires: qt6-build >= 5
+BuildRequires: qt6-qmake >= 5
+%endif
BuildRequires: doxygen
BuildRequires: glib2-devel >= 2.0
BuildRequires: libaccounts-glib-devel
BuildRequires: pkgconfig
-BuildRequires: qt5-build >= 5
-BuildRequires: qt5-qmake >= 5
BuildRequires: rpm-build >= 4.6
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -57,6 +69,33 @@ Development files for libaccounts-qt5 library.
%description -n libaccounts-qt5-devel -l pl.UTF-8
Pliki programistyczne biblioteki libaccounts-qt5.
+%package -n libaccounts-qt6
+Summary: Accounts management library for Qt 6 applications
+Summary(pl.UTF-8): Biblioteka do zarządzania kontami dla aplikacji opartych na bibliotece Qt 6
+Group: Libraries
+
+%description -n libaccounts-qt6
+This project is a library for managing accounts which can be used from
+Qt 6 applications. It is part of the accounts-sso project.
+
+%description -n libaccounts-qt6 -l pl.UTF-8
+Ten projekt to biblioteka do zarządzania kontami, z której można
+korzystać w aplikacjach opartych na bibliotece Qt 6. Jest to część
+projektu accounts-sso.
+
+%package -n libaccounts-qt6-devel
+Summary: Development files for libaccounts-qt6 library
+Summary(pl.UTF-8): Pliki programistyczne biblioteki libaccounts-qt6
+Group: Development/Libraries
+Requires: Qt6Core-devel >= 5
+Requires: libaccounts-qt6 = %{version}-%{release}
+
+%description -n libaccounts-qt6-devel
+Development files for libaccounts-qt6 library.
+
+%description -n libaccounts-qt6-devel -l pl.UTF-8
+Pliki programistyczne biblioteki libaccounts-qt6.
+
%package apidocs
Summary: API documentation for libaccounts-qt library
Summary(pl.UTF-8): Dokumentacja API biblioteki libaccounts-qt
@@ -71,12 +110,33 @@ Dokumentacja API biblioteki libaccounts-qt.
%prep
%setup -q -n %{name}-VERSION_%{version}
+echo 'INCLUDEPATH += ..' >>Accounts/Accounts.pro
+# tests are currently broken for qt6 (qmake not
+# knowing "testlib")
+sed -i -e 's, tests,,' *.pro
+
+mkdir -p qt5
+mv $(ls |grep -v qt5) qt5/
+cp -a qt5 qt6
+find qt6 -name "*5*" |while read i; do
+ mv $i ${i/5/6}
+done
+find qt6 -type f |xargs sed -i -e 's,Qt5,Qt6,g;s,qt5,qt6,g'
%build
-install -d build-qt5
-cd build-qt5
-qmake-qt5 ../accounts-qt.pro \
- BUILD_DIR=build-qt5 \
+%if %{with qt5}
+cd qt5
+qmake-qt5 accounts-qt.pro \
+ LIBDIR=%{_libdir} \
+ QMAKE_CXX="%{__cxx}" \
+ QMAKE_CXXFLAGS_RELEASE="%{rpmcxxflags}" \
+ QMAKE_LFLAGS_RELEASE="%{rpmldflags}"
+%{__make}
+cd ..
+%endif
+%if %{with qt6}
+cd qt6
+qmake-qt6 accounts-qt.pro \
LIBDIR=%{_libdir} \
QMAKE_CXX="%{__cxx}" \
QMAKE_CXXFLAGS_RELEASE="%{rpmcxxflags}" \
@@ -84,39 +144,62 @@ qmake-qt5 ../accounts-qt.pro \
%{__make}
cd ..
+%endif
%install
rm -rf $RPM_BUILD_ROOT
-%{__make} -C build-qt5 install \
+%if %{with qt5}
+%{__make} -C qt5 install \
+ INSTALL_ROOT=$RPM_BUILD_ROOT
+%endif
+%if %{with qt6}
+%{__make} -C qt6 install \
INSTALL_ROOT=$RPM_BUILD_ROOT
+%endif
# useless symlink
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libaccounts-qt5.so.1.?
+%{__rm} -f $RPM_BUILD_ROOT%{_libdir}/libaccounts-qt?.so.1.?
# test suite
-%{__rm} $RPM_BUILD_ROOT%{_bindir}/accountstest
+%{__rm} -f $RPM_BUILD_ROOT%{_bindir}/accountstest
# packaged as %doc
-%{__rm} -r $RPM_BUILD_ROOT%{_docdir}/accounts-qt
+%{__rm} -rf $RPM_BUILD_ROOT%{_docdir}/accounts-qt
%clean
rm -rf $RPM_BUILD_ROOT
%post -n libaccounts-qt5 -p /sbin/ldconfig
%postun -n libaccounts-qt5 -p /sbin/ldconfig
+%post -n libaccounts-qt6 -p /sbin/ldconfig
+%postun -n libaccounts-qt6 -p /sbin/ldconfig
+%if %{with qt5}
%files -n libaccounts-qt5
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libaccounts-qt5.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libaccounts-qt5.so.1
+%attr(755,root,root) %{_libdir}/libaccounts-qt5.so.*.*
+%ghost %{_libdir}/libaccounts-qt5.so.1
%files -n libaccounts-qt5-devel
%defattr(644,root,root,755)
-%attr(755,root,root) %{_libdir}/libaccounts-qt5.so
+%{_libdir}/libaccounts-qt5.so
%{_includedir}/accounts-qt5
-%{_pkgconfigdir}/accounts-qt5.pc
%{_libdir}/cmake/AccountsQt5
+%endif
+
+%if %{with qt6}
+%files -n libaccounts-qt6
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libaccounts-qt6.so.*.*
+%ghost %{_libdir}/libaccounts-qt6.so.1
+
+%files -n libaccounts-qt6-devel
+%defattr(644,root,root,755)
+%{_libdir}/libaccounts-qt6.so
+%{_includedir}/accounts-qt6
+%{_libdir}/cmake/AccountsQt6
+%endif
%files apidocs
%defattr(644,root,root,755)
-%doc build-qt5/doc/html/*
+%doc qt5/doc/html/*
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/libaccounts-qt.git/commitdiff/a72355977824c118aaa872ed0878d488bf259396
More information about the pld-cvs-commit
mailing list