From 4fc30e4e13ecfbe29fbef3b5caf96218eab30b68 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 12 Jan 2024 19:10:40 +0000 Subject: gentoo auto-resync : 12:01:2024 - 19:10:40 --- net-libs/accounts-qt/Manifest | 12 +- net-libs/accounts-qt/accounts-qt-1.16.ebuild | 4 +- .../accounts-qt/accounts-qt-1.16_p20220803.ebuild | 127 +++++++++++++++++++ ...001-Port-away-from-deprecated-QList-toSet.patch | 92 ++++++++++++++ net-libs/accounts-qt/files/0002-Add-Qt6-CI.patch | 137 +++++++++++++++++++++ .../0003-Use-undeprecated-Account-value.patch | 28 +++++ ...0004-Don-t-access-a-QString-out-of-bounds.patch | 42 +++++++ ...dsystem-to-include-correct-Qt-Major-versi.patch | 118 ++++++++++++++++++ .../files/accounts-qt-1.16-libdir.patch | 116 +++++++++++++++++ net-libs/accounts-qt/metadata.xml | 3 + 10 files changed, 675 insertions(+), 4 deletions(-) create mode 100644 net-libs/accounts-qt/accounts-qt-1.16_p20220803.ebuild create mode 100644 net-libs/accounts-qt/files/0001-Port-away-from-deprecated-QList-toSet.patch create mode 100644 net-libs/accounts-qt/files/0002-Add-Qt6-CI.patch create mode 100644 net-libs/accounts-qt/files/0003-Use-undeprecated-Account-value.patch create mode 100644 net-libs/accounts-qt/files/0004-Don-t-access-a-QString-out-of-bounds.patch create mode 100644 net-libs/accounts-qt/files/0005-Adjust-buildsystem-to-include-correct-Qt-Major-versi.patch create mode 100644 net-libs/accounts-qt/files/accounts-qt-1.16-libdir.patch (limited to 'net-libs/accounts-qt') diff --git a/net-libs/accounts-qt/Manifest b/net-libs/accounts-qt/Manifest index aa059ec64072..5613f964c319 100644 --- a/net-libs/accounts-qt/Manifest +++ b/net-libs/accounts-qt/Manifest @@ -1,3 +1,11 @@ +AUX 0001-Port-away-from-deprecated-QList-toSet.patch 3641 BLAKE2B 25a036baf7ff4864d205d0eded66ef7651ed51a3608fa7f0a72e40eefa3331e3741718b0161fe5a882a6c08f382362c494ffa5f8546f57f2365d5f77fcf22d88 SHA512 26c84e920c772f346f82f8886a6d0ce05117ed1bfbafcba843486e0f22f4c49f806c475a3a73b3c76173e9409a3b17d1ce89a0148877bccf9e8808eda35b1796 +AUX 0002-Add-Qt6-CI.patch 5085 BLAKE2B 2dec34a0b6726a780e593fbb74745951041f3e6cbe6b95c15229bb6aefc8ecc5f6ecb6c6a8f3d81f84939bca45c45ad0edc8370f4c1ac2f35a8840ba72cf28ed SHA512 82c9fe0e377180b1f9014376f6cdba67985f003f7ed5bf967f6ad03b52e38169cf62cdc50f3306a7d9862b33dd62ca412bd871a4d465184a5c4fb6d1b751d631 +AUX 0003-Use-undeprecated-Account-value.patch 914 BLAKE2B 42b2483989abea47e96c6b450ab395ff8ad81c56932f422f7f3b378cf16af62eef1c5f1ac93ae6174cf2d25ba8724332714a44b3eb3919f2c3c8368467807e3e SHA512 6f5b5189246cf6ae3cb15a48878d95fff91563127c0888da784cc4fc126ba576214ae801bb24912e6d147d99b300629971c2a874a1087e7d0c3d20b0118b28e4 +AUX 0004-Don-t-access-a-QString-out-of-bounds.patch 1414 BLAKE2B 611ee017ba8db1440c9954bd6c58c724f8b790374a126658826157a61e4e5c5fe5493ee49371fbbb1e5abd638dbe1e8f26574d5266d80ca6a581870bd6f32c82 SHA512 5ccff28c1ab3951f093d4dcc0dad782b60118e7abc978564b60c1463efb683f9f495f6cf7e100d96fc28e60980ffd2a79ab6f1b471ff5fa15823c113003c0a7e +AUX 0005-Adjust-buildsystem-to-include-correct-Qt-Major-versi.patch 4128 BLAKE2B 86f3a68616ee7919d8d0123ff3373583d5c6f52dd0a77d3fd480e8556d78a09643f0007d343a143c1c79005147a59febe80d23a0417446c4f62fb040ea0f2701 SHA512 5bb20f5086c10d68aae819314137b221c34fc8a57a7eed1c44b0e96e64e1cf973df82c19698487297c452f704769cb26ffeb799b8ec3e30c3d4741fb313b63fc +AUX accounts-qt-1.16-libdir.patch 4809 BLAKE2B 50c73a04be62a4748278f7cf46a8c06286363b9929324863af079e4da2c487d36194231a06d15ccb159d0a1f668fcf1a1ad80330730bebc08f53d29bbaa499f0 SHA512 dde1e34655952e8ae0ade756d8ff8559b4049eed0d273c078043eafe24751edf57e66b6300ee875c28b56978ed502bef79186605b3bc73b752fb226ae2bda90d +DIST accounts-qt-1.16_p20220803.tar.bz2 55304 BLAKE2B 3143894e0b0887cbcd07391330a6c5fc423b2d1609c3057b2ee921a8c3ae78d9c149c39f74c29b50cc5e28428bef31d8ed598ca76beacd3946d6f99109d24aa0 SHA512 c919cc2b70de5a0a288a942297480ee68568ab5f708a504801ce953193a5d7e30be159a517f1566c283436663052e6d0fbd6eef1386376cb3cba0144505318df DIST accounts-qt-1.16a.tar.gz 64376 BLAKE2B 39abe10249efff2edeae1a8ce210be3ce06656311ed5a3a3fbcb847194ebbd8ec6e111ef070fb29a2a847591304cf22a7cb60e9d1178a201b886313c4c8aaadb SHA512 a2a65899a258ac41c67fe496ba14468a95615fe8cfc518b7aaf7d3e72e0088304c61f5d76d50bd26a95b5f56dea4d0191bf08ecead508286504161aa05b7a05b -EBUILD accounts-qt-1.16.ebuild 1245 BLAKE2B 1e24188b096835f96e009dbf3a60a74c1036d1bda9fe40018afccb7f25e00aebf120c1683fbadd4fe601adcb4b25f4a69fb358a848119851b96e82d3458e85c8 SHA512 526fa6895c8534232bea65063643c33ccd25bcb12927480b8a6906f6bf78ca58c61d7a8f07c446f9c05e92c23825ab2e1d0c1aee7736eec012ddd27a30134701 -MISC metadata.xml 250 BLAKE2B f3e9395137ebb9adf46cd35c1b6156f82c04cfa94f964f6da24fe71eb560cf51b4f70ebfa10daaa4884400ec22782d819ab794dfd29e7a47559f07208397195d SHA512 78c4ff15eed76ba883b457be95dabd41e928a0e64a42b758b5eab4d8a95afca27d5ea6a7cfe0948de578b169153a05f08aadfce1ddd41a88732212a1e76e565f +EBUILD accounts-qt-1.16.ebuild 1246 BLAKE2B c827ee70ba0344e152692559d76a6866840651083e509434c65cf997f4826669b6f173af24de9f58aa5f2690eee28a4150e7907655303ae654db113cdb7ff146 SHA512 bde1752c2640107c64286b5415294c71dab734eca555d259658d1d99ec89273a512f76396d02600b52fd54068b2a72c6497292a995a6453b967bc7f64d84cc93 +EBUILD accounts-qt-1.16_p20220803.ebuild 2967 BLAKE2B b380eb877d95f820de84466a2277d92ba4eb6cdcb055ea8a455bd041d754065f5129c39cb3347015a42867bd61afba7658b73c3b1774e9e574421e43a815e637 SHA512 b64f8268132e757305168ef7b48814f1b592d9131def5e4d7dab4fd97053cd7e403a4c48c9872759754f6f29fbe1d2b685eac6853ac75e3c8b8ff5543224b9d1 +MISC metadata.xml 342 BLAKE2B 220884a62a67c3bc3417a30099191a253c3af9144d30fb04bc6b495c9a665e167392d96421a707bdc9d7d3737781650e48839ec9db12047590a69e8b1704730f SHA512 2525b4cab71fe0a925d2acea96ec7a164f1df175f7699b9b26d30a2642559627790d264b147c40365162ce3dda67fbbde2ed8115bc42e4ed284b970658bb3779 diff --git a/net-libs/accounts-qt/accounts-qt-1.16.ebuild b/net-libs/accounts-qt/accounts-qt-1.16.ebuild index 9614b92cac2c..e49f56bfcaae 100644 --- a/net-libs/accounts-qt/accounts-qt-1.16.ebuild +++ b/net-libs/accounts-qt/accounts-qt-1.16.ebuild @@ -1,4 +1,4 @@ -# Copyright 1999-2023 Gentoo Authors +# Copyright 1999-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 @@ -29,7 +29,7 @@ DEPEND="${RDEPEND} " BDEPEND=" doc? ( - app-doc/doxygen[dot] + app-text/doxygen[dot] dev-qt/qthelp:5 ) " diff --git a/net-libs/accounts-qt/accounts-qt-1.16_p20220803.ebuild b/net-libs/accounts-qt/accounts-qt-1.16_p20220803.ebuild new file mode 100644 index 000000000000..d90c6af12cdd --- /dev/null +++ b/net-libs/accounts-qt/accounts-qt-1.16_p20220803.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit qmake-utils multibuild + +if [[ ${PV} = *9999* ]] ; then + EGIT_REPO_URI="https://gitlab.com/nicolasfella/lib${PN}.git/" + EGIT_BRANCH="qt6" + inherit git-r3 +else + COMMIT=c86db79be389601bf6798f815ca5b8f78a524156 + if [[ -n ${COMMIT} ]] ; then + SRC_URI="https://gitlab.com/accounts-sso/lib${PN}/-/archive/${COMMIT}/lib${PN}-${COMMIT}.tar.bz2 -> ${P}.tar.bz2" + S="${WORKDIR}/lib${PN}-${COMMIT}" + else + SRC_URI="https://gitlab.com/accounts-sso/lib${PN}/-/archive/VERSION_${PV}/lib${PN}-VERSION_${PV}.tar.bz2 -> ${P}a.tar.bz2" + S="${WORKDIR}/lib${PN}-VERSION_${PV}" + fi + KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86" +fi + +DESCRIPTION="Qt bindings for libaccounts-glib" +HOMEPAGE="https://accounts-sso.gitlab.io" + +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="doc +qt5 qt6 test" +REQUIRED_USE="|| ( qt5 qt6 )" + +# dbus problems +RESTRICT="test" + +RDEPEND=" + dev-libs/glib:2 + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtxml:5 + ) + qt6? ( dev-qt/qtbase:6[xml] ) + >=net-libs/libaccounts-glib-1.23:= +" +DEPEND="${RDEPEND} + test? ( + qt5? ( dev-qt/qttest:5 ) + ) +" +BDEPEND=" + doc? ( + app-text/doxygen[dot] + || ( + dev-qt/qttools:6[assistant] + dev-qt/qthelp:5 + ) + ) +" + +PATCHES=( + "${FILESDIR}"/0001-Port-away-from-deprecated-QList-toSet.patch + "${FILESDIR}"/0002-Add-Qt6-CI.patch + "${FILESDIR}"/0003-Use-undeprecated-Account-value.patch + "${FILESDIR}"/0004-Don-t-access-a-QString-out-of-bounds.patch + "${FILESDIR}"/0005-Adjust-buildsystem-to-include-correct-Qt-Major-versi.patch + "${FILESDIR}/${PN}-1.16-libdir.patch" +) + +pkg_setup() { + MULTIBUILD_VARIANTS=( $(usev qt5) $(usev qt6) ) +} + +src_prepare() { + default + + local qhelpgeneratorpath + if has_version "dev-qt/qttools:6[assistant]"; then + qhelpgeneratorpath="$(qt6_get_libdir)/qt6/libexec" + elif has_version "dev-qt/qthelp:5"; then + qhelpgeneratorpath="$(qt5_get_bindir)" + else + eerror "dev-qt/qttools:6[assistant] nor dev-qt/qthelp:5 available even though in deps(?)" + fi + + sed -e "s|share/doc/\$\${PROJECT_NAME}|share/doc/${PF}|" \ + -i doc/doc.pri || die + sed -e "/QHG_LOCATION/s|qhelpgenerator|${qhelpgeneratorpath}/&|" \ + -i doc/doxy.conf || die + if ! use doc; then + sed -e "/include( doc\/doc.pri )/d" -i ${PN}.pro || die + fi + if ! use test; then + sed -e '/^SUBDIRS/s/tests//' \ + -i accounts-qt.pro || die "couldn't disable tests" + fi + + multibuild_copy_sources +} + +src_configure() { + my_src_configure() { + cd "${BUILD_DIR}" || die + + if [[ ${MULTIBUILD_VARIANT} == qt6 ]]; then + eqmake6 PREFIX="${EPREFIX}"/usr LIBDIR=$(get_libdir) + else + eqmake5 PREFIX="${EPREFIX}"/usr LIBDIR=$(get_libdir) + fi + } + + multibuild_foreach_variant my_src_configure +} + +src_compile() { + my_src_compile() { + emake -C "${BUILD_DIR}" + } + + multibuild_foreach_variant my_src_compile +} + +src_install() { + my_src_install() { + emake -C "${BUILD_DIR}" INSTALL_ROOT="${D}" install + } + + multibuild_foreach_variant my_src_install +} diff --git a/net-libs/accounts-qt/files/0001-Port-away-from-deprecated-QList-toSet.patch b/net-libs/accounts-qt/files/0001-Port-away-from-deprecated-QList-toSet.patch new file mode 100644 index 000000000000..190178cc3030 --- /dev/null +++ b/net-libs/accounts-qt/files/0001-Port-away-from-deprecated-QList-toSet.patch @@ -0,0 +1,92 @@ +https://gitlab.com/accounts-sso/libaccounts-qt/-/merge_requests/21 + +From 3107822e036300684c2bdf587838a110eea8ba30 Mon Sep 17 00:00:00 2001 +From: Nicolas Fella +Date: Mon, 1 Aug 2022 20:35:03 +0200 +Subject: [PATCH 1/5] Port away from deprecated QList::toSet + +--- + tests/tst_libaccounts.cpp | 44 +++++++++++++++++++++++++++++---------- + 1 file changed, 33 insertions(+), 11 deletions(-) + +diff --git a/tests/tst_libaccounts.cpp b/tests/tst_libaccounts.cpp +index 471e3d5..efede91 100644 +--- a/tests/tst_libaccounts.cpp ++++ b/tests/tst_libaccounts.cpp +@@ -326,11 +326,11 @@ void AccountsTest::testService() + QCOMPARE(service.description(), QStringLiteral("Test description")); + QCOMPARE(service.iconName(), QString("general_myservice")); + QCOMPARE(service.trCatalog(), QString("accounts")); +- QStringList tags; ++ QSet tags; + tags << "email" << "e-mail"; +- QCOMPARE(service.tags(), tags.toSet()); ++ QCOMPARE(service.tags(), tags); + // Called twice, because the second time it returns a cached result +- QCOMPARE(service.tags(), tags.toSet()); ++ QCOMPARE(service.tags(), tags); + QVERIFY(service.hasTag("email")); + QVERIFY(!service.hasTag("chat")); + +@@ -687,10 +687,15 @@ void AccountsTest::testAccountService() + spyChanged.clear(); + spyEnabled.clear(); + +- QStringList expectedChanges; ++ QSet expectedChanges; + expectedChanges << "parameters/server"; + expectedChanges << "enabled"; +- QCOMPARE(m_accountServiceChangedFields.toSet(), expectedChanges.toSet()); ++#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) ++ QSet changedFields(m_accountServiceChangedFields.begin(), m_accountServiceChangedFields.end()); ++#else ++ QSet changedFields = m_accountServiceChangedFields.toSet(); ++#endif ++ QCOMPARE(changedFields, expectedChanges); + + QCOMPARE(accountService->value("server").toString(), + UTF8("www.example.com")); +@@ -727,17 +732,34 @@ void AccountsTest::testAccountService() + + + /* test some more APIs */ +- QStringList expectedList; ++ QSet expectedList; + expectedList << "server" << "fallback-conference-server" << + "port" << "old-ssl"; +- QCOMPARE(accountService->childKeys().toSet(), expectedList.toSet()); +- QCOMPARE(accountService->childGroups().toSet(), QSet()); ++#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) ++ QStringList childKeysList = accountService->childKeys(); ++ QSet childKeys(childKeysList.begin(), childKeysList.end()); ++ ++ QStringList childGroupsList = accountService->childGroups(); ++ QSet childGroups(childGroupsList.begin(), childGroupsList.end()); ++#else ++ QSet childKeys = accountService->childKeys().toSet(); ++ QSet childGroups = accountService->childGroups().toSet(); ++#endif ++ ++ QCOMPARE(childKeys, expectedList); ++ QCOMPARE(childGroups, QSet()); + QCOMPARE(accountService->contains("port"), true); + accountService->endGroup(); + +- expectedList.clear(); +- expectedList << "parameters"; +- QCOMPARE(accountService->childGroups().toSet(), expectedList.toSet()); ++ QSet expectedList2; ++ expectedList2 << "parameters"; ++#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) ++ QStringList childGroupsList2 = accountService->childGroups(); ++ QSet childGroups2(childGroupsList2.begin(), childGroupsList2.end()); ++#else ++ QSet childGroups2 = accountService->childGroups().toSet(); ++#endif ++ QCOMPARE(childGroups2, expectedList2); + + /* Remove one key */ + accountService->remove("parameters/port"); +-- +2.43.0 + diff --git a/net-libs/accounts-qt/files/0002-Add-Qt6-CI.patch b/net-libs/accounts-qt/files/0002-Add-Qt6-CI.patch new file mode 100644 index 000000000000..f8383b5f8a43 --- /dev/null +++ b/net-libs/accounts-qt/files/0002-Add-Qt6-CI.patch @@ -0,0 +1,137 @@ +https://gitlab.com/accounts-sso/libaccounts-qt/-/merge_requests/21 + +From d00f7346b091b885ba0ea3f6055e74a173fd0034 Mon Sep 17 00:00:00 2001 +From: Nicolas Fella +Date: Mon, 17 Oct 2022 23:33:16 +0200 +Subject: [PATCH 2/5] Add Qt6 CI + +--- + .gitlab-ci.yml | 80 +++++++++++++++++++++++++++++++++++++++++--------- + 1 file changed, 66 insertions(+), 14 deletions(-) + +diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml +index 95d5a92..f8b5bf6 100644 +--- a/.gitlab-ci.yml ++++ b/.gitlab-ci.yml +@@ -1,5 +1,3 @@ +-image: ubuntu:bionic +- + cache: + key: apt-cache + paths: +@@ -13,23 +11,19 @@ stages: + - test + - deploy + +-before_script: +- - export APT_CACHE_DIR=`pwd`/apt-cache && mkdir -pv $APT_CACHE_DIR +- - PACKAGES+=" wget" # for downloading dependencies +- - PACKAGES+=" libglib2.0-dev libsqlite3-dev libxml2-dev gtk-doc-tools libgirepository1.0-dev gobject-introspection libxml2-utils python3-gi python-gi-dev valac check python3-pip" # for libaccounts-glib +- - | +- apt-get update -yq && apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y \ +- qt5-qmake qttools5-dev-tools qtbase5-dev qtchooser pkg-config doxygen \ +- $PACKAGES +- - apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y dbus-test-runner lcov gcovr +- - pip3 install meson ninja +- +- + build_dependencies: ++ image: ubuntu:bionic + stage: deps + artifacts: + paths: + - staging ++ before_script: ++ - export APT_CACHE_DIR=`pwd`/apt-cache && mkdir -pv $APT_CACHE_DIR ++ - PACKAGES+=" wget" # for downloading dependencies ++ - PACKAGES+=" libglib2.0-dev libsqlite3-dev libxml2-dev gtk-doc-tools libgirepository1.0-dev gobject-introspection libxml2-utils python3-gi python-gi-dev valac check python3-pip" # for libaccounts-glib ++ - apt-get update -yq && apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y $PACKAGES ++ - pip3 install meson ninja ++ + script: + - STAGING="$PWD/staging" + +@@ -52,7 +46,15 @@ build_dependencies: + + + build_amd64: ++ image: ubuntu:bionic + stage: build ++ before_script: ++ - export APT_CACHE_DIR=`pwd`/apt-cache && mkdir -pv $APT_CACHE_DIR ++ - | ++ apt-get update -yq && apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y \ ++ qt5-qmake qttools5-dev-tools qtbase5-dev qtchooser pkg-config doxygen wget libglib2.0-dev libsqlite3-dev libxml2-dev gtk-doc-tools libgirepository1.0-dev gobject-introspection libxml2-utils python3-gi python-gi-dev valac check python3-pip ++ - apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y dbus-test-runner lcov gcovr ++ + script: + - STAGING="$PWD/staging" + - export PKG_CONFIG_PATH="$STAGING/lib/pkgconfig:$PKG_CONFIG_PATH" +@@ -69,7 +71,16 @@ build_amd64: + - build/ + + test_amd64: ++ image: ubuntu:bionic + stage: test ++ before_script: ++ - export APT_CACHE_DIR=`pwd`/apt-cache && mkdir -pv $APT_CACHE_DIR ++ - PACKAGES+=" wget" # for downloading dependencies ++ - | ++ apt-get update -yq && apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y \ ++ qt5-qmake qttools5-dev-tools qtbase5-dev qtchooser pkg-config doxygen \ ++ $PACKAGES ++ - apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y dbus-test-runner lcov gcovr + script: + - STAGING="$PWD/staging" + - export LD_LIBRARY_PATH="$STAGING/lib:$LD_LIBRARY_PATH" +@@ -83,6 +94,47 @@ test_amd64: + paths: + - build/ + ++build_amd64_qt6: ++ stage: build ++ image: ubuntu:jammy ++ before_script: ++ - export APT_CACHE_DIR=`pwd`/apt-cache && mkdir -pv $APT_CACHE_DIR ++ - apt-get update -yq && apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y qmake6 qt6-base-dev pkg-config libqt6sql6-sqlite doxygen libdbus-1-dev g++ make libglib2.0-dev gtk-doc-tools libgirepository1.0-dev gobject-introspection libxml2-utils python3-gi python-gi-dev valac check python3-pip libsqlite3-dev libxml2-dev ++ script: ++ - STAGING="$PWD/staging" ++ - find $STAGING ++ - export PKG_CONFIG_PATH="$STAGING/lib/pkgconfig:$PKG_CONFIG_PATH" ++ - export LD_LIBRARY_PATH="$STAGING/lib:$LD_LIBRARY_PATH" ++ - mkdir build ++ - cd build ++ - qmake6 CONFIG+=debug CONFIG+=coverage .. ++ - make -j 4 ++ dependencies: ++ - build_dependencies ++ artifacts: ++ paths: ++ - build/ ++ ++test_amd64_qt6: ++ stage: test ++ image: ubuntu:jammy ++ before_script: ++ - export APT_CACHE_DIR=`pwd`/apt-cache && mkdir -pv $APT_CACHE_DIR ++ - export DEBIAN_FRONTEND=noninteractive ++ - apt-get update -yq && apt-get -o dir::cache::archives="$APT_CACHE_DIR" install -y dbus-test-runner libqtdbusmock1-dev libqtdbustest1-dev lcov gcovr make qmake6 qt6-base-dev pkg-config libqt6sql6-sqlite doxygen libdbus-1-dev g++ make libsqlite3-dev libxml2-dev libglib2.0-dev ++ script: ++ - STAGING="$PWD/staging" ++ - export LD_LIBRARY_PATH="$STAGING/lib:$LD_LIBRARY_PATH" ++ - find build | xargs touch # Avoid rebuilding ++ - cd build ++ - make coverage-html ++ dependencies: ++ - build_dependencies ++ - build_amd64_qt6 ++ artifacts: ++ paths: ++ - ./ ++ + pages: + stage: deploy + script: +-- +2.43.0 + diff --git a/net-libs/accounts-qt/files/0003-Use-undeprecated-Account-value.patch b/net-libs/accounts-qt/files/0003-Use-undeprecated-Account-value.patch new file mode 100644 index 000000000000..7a8cb85b009e --- /dev/null +++ b/net-libs/accounts-qt/files/0003-Use-undeprecated-Account-value.patch @@ -0,0 +1,28 @@ +https://gitlab.com/accounts-sso/libaccounts-qt/-/merge_requests/21 + +From 102cf562f9d143de2f93ba40f8448c1d531c2c7b Mon Sep 17 00:00:00 2001 +From: Nicolas Fella +Date: Tue, 18 Oct 2022 01:40:05 +0200 +Subject: [PATCH 3/5] Use undeprecated Account::value + +--- + tests/tst_libaccounts.cpp | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/tests/tst_libaccounts.cpp b/tests/tst_libaccounts.cpp +index efede91..d12091c 100644 +--- a/tests/tst_libaccounts.cpp ++++ b/tests/tst_libaccounts.cpp +@@ -516,8 +516,7 @@ void AccountsTest::testAccountValue() + QTRY_COMPARE(synced.count(), 1); + + /* check that the values we wrote are retrieved successfully */ +- QVariant val = QVariant::String; +- account->value(QString("test"), val); ++ QVariant val = account->value(QString("test")); + QCOMPARE(val.toString(), QString("value")); + + SettingSource source; +-- +2.43.0 + diff --git a/net-libs/accounts-qt/files/0004-Don-t-access-a-QString-out-of-bounds.patch b/net-libs/accounts-qt/files/0004-Don-t-access-a-QString-out-of-bounds.patch new file mode 100644 index 000000000000..e342139cbb5d --- /dev/null +++ b/net-libs/accounts-qt/files/0004-Don-t-access-a-QString-out-of-bounds.patch @@ -0,0 +1,42 @@ +https://gitlab.com/accounts-sso/libaccounts-qt/-/merge_requests/21 + +From 3c4d5fa1f53cd66c9870b799e8518980176547b2 Mon Sep 17 00:00:00 2001 +From: Nicolas Fella +Date: Tue, 18 Oct 2022 02:03:59 +0200 +Subject: [PATCH 4/5] Don't access a QString out-of-bounds + +This asserts in Qt6 +--- + Accounts/account-service.cpp | 2 +- + Accounts/account.cpp | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/Accounts/account-service.cpp b/Accounts/account-service.cpp +index e6c04f2..d8d4304 100644 +--- a/Accounts/account-service.cpp ++++ b/Accounts/account-service.cpp +@@ -335,7 +335,7 @@ void AccountService::endGroup() + Q_D(AccountService); + d->prefix = d->prefix.section(slash, 0, -3, + QString::SectionIncludeTrailingSep); +- if (d->prefix[0] == slash) d->prefix.remove(0, 1); ++ if (!d->prefix.isEmpty() && d->prefix[0] == slash) d->prefix.remove(0, 1); + } + + /*! +diff --git a/Accounts/account.cpp b/Accounts/account.cpp +index 2e40c60..104611a 100644 +--- a/Accounts/account.cpp ++++ b/Accounts/account.cpp +@@ -548,7 +548,7 @@ void Account::endGroup() + { + d->prefix = d->prefix.section(slash, 0, -3, + QString::SectionIncludeTrailingSep); +- if (d->prefix[0] == slash) d->prefix.remove(0, 1); ++ if (!d->prefix.isEmpty() && d->prefix[0] == slash) d->prefix.remove(0, 1); + } + + /*! +-- +2.43.0 + diff --git a/net-libs/accounts-qt/files/0005-Adjust-buildsystem-to-include-correct-Qt-Major-versi.patch b/net-libs/accounts-qt/files/0005-Adjust-buildsystem-to-include-correct-Qt-Major-versi.patch new file mode 100644 index 000000000000..904e7d5aa1ad --- /dev/null +++ b/net-libs/accounts-qt/files/0005-Adjust-buildsystem-to-include-correct-Qt-Major-versi.patch @@ -0,0 +1,118 @@ +https://gitlab.com/accounts-sso/libaccounts-qt/-/merge_requests/21 + +From 18557f7def9af8f4a9e0e93e9f575ae11e5066aa Mon Sep 17 00:00:00 2001 +From: Nicolas Fella +Date: Fri, 7 Apr 2023 15:49:22 +0200 +Subject: [PATCH 5/5] Adjust buildsystem to include correct Qt Major version + number + +--- + Accounts/Accounts.pro | 4 ++-- + Accounts/AccountsQt5Config.cmake.in | 2 +- + Accounts/AccountsQt6Config.cmake.in | 5 +++++ + Accounts/AccountsQt6ConfigVersion.cmake.in | 10 ++++++++++ + Accounts/accounts-qt6.pc.in | 15 +++++++++++++++ + tests/tst_libaccounts.pro | 2 +- + 6 files changed, 34 insertions(+), 4 deletions(-) + create mode 100644 Accounts/AccountsQt6Config.cmake.in + create mode 100644 Accounts/AccountsQt6ConfigVersion.cmake.in + create mode 100644 Accounts/accounts-qt6.pc.in + +diff --git a/Accounts/Accounts.pro b/Accounts/Accounts.pro +index 13804ee..da62da7 100644 +--- a/Accounts/Accounts.pro ++++ b/Accounts/Accounts.pro +@@ -3,7 +3,7 @@ include( ../common-project-config.pri ) + include( ../common-vars.pri ) + + TEMPLATE = lib +-TARGET = accounts-qt5 ++TARGET = accounts-qt$${QT_MAJOR_VERSION} + + # Input + public_headers = \ +@@ -45,7 +45,7 @@ QT -= gui + + INCLUDEPATH += $${TOP_SRC_DIR} + +-CMAKE_BASENAME = AccountsQt5 ++CMAKE_BASENAME = AccountsQt$${QT_MAJOR_VERSION} + + PKGCONFIG += \ + glib-2.0 \ +diff --git a/Accounts/AccountsQt5Config.cmake.in b/Accounts/AccountsQt5Config.cmake.in +index 55a8964..746f689 100644 +--- a/Accounts/AccountsQt5Config.cmake.in ++++ b/Accounts/AccountsQt5Config.cmake.in +@@ -2,4 +2,4 @@ + # ACCOUNTSQT_LIBRARIES - The libraries needed to use libaccounts-qt + + set(ACCOUNTSQT_LIBRARIES $${INSTALL_LIBDIR}/lib$${TARGET}.so) +-set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/) +\ No newline at end of file ++set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/) +diff --git a/Accounts/AccountsQt6Config.cmake.in b/Accounts/AccountsQt6Config.cmake.in +new file mode 100644 +index 0000000..55a8964 +--- /dev/null ++++ b/Accounts/AccountsQt6Config.cmake.in +@@ -0,0 +1,5 @@ ++# ACCOUNTSQT_INCLUDE_DIRS - The libaccounts-qt include directories ++# ACCOUNTSQT_LIBRARIES - The libraries needed to use libaccounts-qt ++ ++set(ACCOUNTSQT_LIBRARIES $${INSTALL_LIBDIR}/lib$${TARGET}.so) ++set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/) +\ No newline at end of file +diff --git a/Accounts/AccountsQt6ConfigVersion.cmake.in b/Accounts/AccountsQt6ConfigVersion.cmake.in +new file mode 100644 +index 0000000..616cd60 +--- /dev/null ++++ b/Accounts/AccountsQt6ConfigVersion.cmake.in +@@ -0,0 +1,10 @@ ++set(PACKAGE_VERSION $${PROJECT_VERSION}) ++ ++if(\"${PACKAGE_VERSION}\" VERSION_LESS \"${PACKAGE_FIND_VERSION}\" ) ++ set(PACKAGE_VERSION_COMPATIBLE FALSE) ++else(\"${PACKAGE_VERSION}\" VERSION_LESS \"${PACKAGE_FIND_VERSION}\" ) ++ set(PACKAGE_VERSION_COMPATIBLE TRUE) ++ if( \"${PACKAGE_FIND_VERSION}\" STREQUAL \"${PACKAGE_VERSION}\") ++ set(PACKAGE_VERSION_EXACT TRUE) ++ endif( \"${PACKAGE_FIND_VERSION}\" STREQUAL \"${PACKAGE_VERSION}\") ++endif(\"${PACKAGE_VERSION}\" VERSION_LESS \"${PACKAGE_FIND_VERSION}\" ) +diff --git a/Accounts/accounts-qt6.pc.in b/Accounts/accounts-qt6.pc.in +new file mode 100644 +index 0000000..c625b2e +--- /dev/null ++++ b/Accounts/accounts-qt6.pc.in +@@ -0,0 +1,15 @@ ++prefix=$$INSTALL_PREFIX ++exec_prefix=${prefix} ++libdir=$$INSTALL_LIBDIR ++includedir=${prefix}/include/accounts-qt6 ++servicefilesdir=${prefix}/share/accounts/services ++servicetypefilesdir=${prefix}/share/accounts/service-types ++providerfilesdir=${prefix}/share/accounts/providers ++ ++Name: libaccounts-qt6 ++Description: Accounts Library ++Version: $$PROJECT_VERSION ++Libs: -L${libdir} -laccounts-qt6 ++Requires: Qt6Core Qt6Xml ++Cflags: -I${includedir} ++ +diff --git a/tests/tst_libaccounts.pro b/tests/tst_libaccounts.pro +index a5b91fe..9992c0b 100644 +--- a/tests/tst_libaccounts.pro ++++ b/tests/tst_libaccounts.pro +@@ -9,7 +9,7 @@ QT = \ + testlib \ + xml + +-LIBS += -laccounts-qt5 ++LIBS += -laccounts-qt$${QT_MAJOR_VERSION} + + INCLUDEPATH += $${TOP_SRC_DIR} + QMAKE_LIBDIR += \ +-- +2.43.0 + diff --git a/net-libs/accounts-qt/files/accounts-qt-1.16-libdir.patch b/net-libs/accounts-qt/files/accounts-qt-1.16-libdir.patch new file mode 100644 index 000000000000..dfcbe71938b1 --- /dev/null +++ b/net-libs/accounts-qt/files/accounts-qt-1.16-libdir.patch @@ -0,0 +1,116 @@ +From e3882382b2e98bce5be07baf23771856828123fc Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner +Date: Thu, 7 Dec 2023 23:20:32 +0100 +Subject: [PATCH] Make LIBDIR configurable + +Signed-off-by: Andreas Sturmlechner +--- + Accounts/AccountsQt5Config.cmake.in | 2 +- + Accounts/AccountsQt6Config.cmake.in | 4 ++-- + Accounts/accounts-qt5.pc.in | 2 +- + Accounts/accounts-qt6.pc.in | 2 +- + common-installs-config.pri | 2 +- + common-pkgconfig.pri | 2 +- + common-project-config.pri | 6 +++--- + 7 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/Accounts/AccountsQt5Config.cmake.in b/Accounts/AccountsQt5Config.cmake.in +index 746f689..9280a7d 100644 +--- a/Accounts/AccountsQt5Config.cmake.in ++++ b/Accounts/AccountsQt5Config.cmake.in +@@ -1,5 +1,5 @@ + # ACCOUNTSQT_INCLUDE_DIRS - The libaccounts-qt include directories + # ACCOUNTSQT_LIBRARIES - The libraries needed to use libaccounts-qt + +-set(ACCOUNTSQT_LIBRARIES $${INSTALL_LIBDIR}/lib$${TARGET}.so) ++set(ACCOUNTSQT_LIBRARIES $${INSTALL_PREFIX}/$${LIBDIR}/lib$${TARGET}.so) + set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/) +diff --git a/Accounts/AccountsQt6Config.cmake.in b/Accounts/AccountsQt6Config.cmake.in +index 55a8964..9280a7d 100644 +--- a/Accounts/AccountsQt6Config.cmake.in ++++ b/Accounts/AccountsQt6Config.cmake.in +@@ -1,5 +1,5 @@ + # ACCOUNTSQT_INCLUDE_DIRS - The libaccounts-qt include directories + # ACCOUNTSQT_LIBRARIES - The libraries needed to use libaccounts-qt + +-set(ACCOUNTSQT_LIBRARIES $${INSTALL_LIBDIR}/lib$${TARGET}.so) +-set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/) +\ No newline at end of file ++set(ACCOUNTSQT_LIBRARIES $${INSTALL_PREFIX}/$${LIBDIR}/lib$${TARGET}.so) ++set(ACCOUNTSQT_INCLUDE_DIRS $${INSTALL_PREFIX}/include/$${TARGET}/) +diff --git a/Accounts/accounts-qt5.pc.in b/Accounts/accounts-qt5.pc.in +index fbfcea8..faea96b 100644 +--- a/Accounts/accounts-qt5.pc.in ++++ b/Accounts/accounts-qt5.pc.in +@@ -1,6 +1,6 @@ + prefix=$$INSTALL_PREFIX + exec_prefix=${prefix} +-libdir=$$INSTALL_LIBDIR ++libdir=${prefix}/$$LIBDIR + includedir=${prefix}/include/accounts-qt5 + servicefilesdir=${prefix}/share/accounts/services + servicetypefilesdir=${prefix}/share/accounts/service-types +diff --git a/Accounts/accounts-qt6.pc.in b/Accounts/accounts-qt6.pc.in +index c625b2e..cdc0233 100644 +--- a/Accounts/accounts-qt6.pc.in ++++ b/Accounts/accounts-qt6.pc.in +@@ -1,6 +1,6 @@ + prefix=$$INSTALL_PREFIX + exec_prefix=${prefix} +-libdir=$$INSTALL_LIBDIR ++libdir=${prefix}/$$LIBDIR + includedir=${prefix}/include/accounts-qt6 + servicefilesdir=${prefix}/share/accounts/services + servicetypefilesdir=${prefix}/share/accounts/service-types +diff --git a/common-installs-config.pri b/common-installs-config.pri +index 82baf75..420accb 100644 +--- a/common-installs-config.pri ++++ b/common-installs-config.pri +@@ -17,7 +17,7 @@ contains( TEMPLATE, app ) { + #----------------------------------------------------------------------------- + contains( TEMPLATE, lib ) { + +- target.path = $${INSTALL_LIBDIR} ++ target.path = $${INSTALL_PREFIX}/$${LIBDIR} + INSTALLS += target + message("====") + message("==== INSTALLS += target") +diff --git a/common-pkgconfig.pri b/common-pkgconfig.pri +index 975068a..9f010d3 100644 +--- a/common-pkgconfig.pri ++++ b/common-pkgconfig.pri +@@ -3,7 +3,7 @@ + !isEmpty(pkgconfig.files) { + QMAKE_SUBSTITUTES += $${pkgconfig.files}.in + pkgconfig.CONFIG = no_check_exist +- pkgconfig.path = $${INSTALL_LIBDIR}/pkgconfig ++ pkgconfig.path = $${INSTALL_PREFIX}/$${LIBDIR}/pkgconfig + QMAKE_EXTRA_TARGETS += pkgconfig + + QMAKE_CLEAN += $${pkgconfig.files} +diff --git a/common-project-config.pri b/common-project-config.pri +index b856961..0484e36 100644 +--- a/common-project-config.pri ++++ b/common-project-config.pri +@@ -44,15 +44,15 @@ INSTALL_LIBDIR = $${INSTALL_PREFIX}/lib + isEmpty( LIBDIR ) { + message("====") + message("==== NOTE: To override the library installation path run: `qmake LIBDIR=/custom/path'") +- message("==== (current installation path is `$${INSTALL_LIBDIR}')") ++ message("==== (current installation path is `$${INSTALL_PREFIX}/$${LIBDIR}')") + } else { + INSTALL_LIBDIR = $${LIBDIR} + message("====") +- message("==== library install path set to `$${INSTALL_LIBDIR}'") ++ message("==== library install path set to `$${INSTALL_PREFIX}/$${LIBDIR}'") + } + + isEmpty ( CMAKE_CONFIG_PATH ) { +- CMAKE_CONFIG_PATH = $${INSTALL_LIBDIR}/cmake ++ CMAKE_CONFIG_PATH = $${INSTALL_PREFIX}/$${LIBDIR}/cmake + message("====") + message("==== NOTE: To override the cmake module installation path run: `qmake CMAKE_CONFIG_PATH=/custom/path'") + message("==== (current installation path is `$${CMAKE_CONFIG_PATH}')") +-- +2.43.0 + diff --git a/net-libs/accounts-qt/metadata.xml b/net-libs/accounts-qt/metadata.xml index 8641e5bdd399..17eb6070226c 100644 --- a/net-libs/accounts-qt/metadata.xml +++ b/net-libs/accounts-qt/metadata.xml @@ -5,4 +5,7 @@ kde@gentoo.org Gentoo KDE Project + + accounts-sso/libaccounts-qt + -- cgit v1.2.3