From: "Sam James" <sam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: app-office/gnucash/, app-office/gnucash/files/
Date: Thu, 26 Dec 2024 10:19:02 +0000 (UTC) [thread overview]
Message-ID: <1735208233.c9c68d05e8fcaa3dd8be3a9b38b2070f3115dd7d.sam@gentoo> (raw)
commit: c9c68d05e8fcaa3dd8be3a9b38b2070f3115dd7d
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Dec 26 10:17:09 2024 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Dec 26 10:17:13 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9c68d05
app-office/gnucash: backport guile load fixes to 5.8-r100
Backport the changes from 72dbf2ec4049df11ad63576971883ee239eadb7f.
This allows easier testing of the fixes (because of the nature of them
involving an upgrade/downgrade).
Bug: https://bugs.gentoo.org/941426
Bug: https://bugs.gentoo.org/946388
Signed-off-by: Sam James <sam <AT> gentoo.org>
...ath.patch => gnucash-5.8-guile-load-path.patch} | 0
app-office/gnucash/gnucash-5.10.ebuild | 2 +-
app-office/gnucash/gnucash-5.8-r100.ebuild | 39 ++++++++++++++--------
3 files changed, 26 insertions(+), 15 deletions(-)
diff --git a/app-office/gnucash/files/gnucash-5.10-guile-load-path.patch b/app-office/gnucash/files/gnucash-5.8-guile-load-path.patch
similarity index 100%
rename from app-office/gnucash/files/gnucash-5.10-guile-load-path.patch
rename to app-office/gnucash/files/gnucash-5.8-guile-load-path.patch
diff --git a/app-office/gnucash/gnucash-5.10.ebuild b/app-office/gnucash/gnucash-5.10.ebuild
index f258c56acd5f..acc455214339 100644
--- a/app-office/gnucash/gnucash-5.10.ebuild
+++ b/app-office/gnucash/gnucash-5.10.ebuild
@@ -118,7 +118,7 @@ PATCHES=(
# https://bugs.gentoo.org/893676
"${FILESDIR}/${PN}-5.0-webkit2gtk-4.1.patch"
"${FILESDIR}/${P}-import-qif.patch"
- "${FILESDIR}/${PN}-5.10-guile-load-path.patch"
+ "${FILESDIR}/${PN}-5.8-guile-load-path.patch"
)
pkg_setup() {
diff --git a/app-office/gnucash/gnucash-5.8-r100.ebuild b/app-office/gnucash/gnucash-5.8-r100.ebuild
index dec0d06fe71f..abfe06c45785 100644
--- a/app-office/gnucash/gnucash-5.8-r100.ebuild
+++ b/app-office/gnucash/gnucash-5.8-r100.ebuild
@@ -10,21 +10,19 @@ PYTHON_COMPAT=( python3_{10..12} )
inherit cmake flag-o-matic gnome2-utils guile-single python-single-r1
# Please bump with app-doc/gnucash-docs
-DESCRIPTION="A personal finance manager"
+DESCRIPTION="Personal finance manager"
HOMEPAGE="https://www.gnucash.org/"
SRC_URI="https://github.com/Gnucash/gnucash/releases/download/${PV}/${P}.tar.bz2"
LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="amd64 ~arm64 ~ppc ~ppc64 ~riscv x86"
-
IUSE="aqbanking debug doc examples gnome-keyring +gui mysql nls ofx postgres python quotes smartcard sqlite test"
-
-# Currently restricting due to the following:
-# https://bugs.gnucash.org/show_bug.cgi?id=799159#c1
-#
-# Tests can be run but must first unmerge any existing GnuCash installation.
-RESTRICT="test"
+# Tests were previously restricted because guile would try to use installed,
+# not just-built modules. See https://bugs.gnucash.org/show_bug.cgi?id=799159#c1.
+# TODO: as of 5.10, the ebuild should handle this OK. If no issues come up,
+# need to forward those findings (and tidy up the patch for) upstream.
+RESTRICT="!test? ( test )"
# Examples doesn't build unless GUI is also built
REQUIRED_USE="
@@ -116,15 +114,13 @@ PATCHES=(
"${FILESDIR}/${PN}-5.0-exclude-license.patch"
"${FILESDIR}/${PN}-4.12-drop-broken-test.patch"
"${FILESDIR}/${PN}-5.6-no-werror.patch"
-
# This is only to prevent webkit2gtk-4 from being selected.
# https://bugs.gentoo.org/893676
"${FILESDIR}/${PN}-5.0-webkit2gtk-4.1.patch"
-
# GCC 15 backport
"${FILESDIR}/${PN}-5.8-gcc15.patch"
-
"${FILESDIR}/${PN}-5.8-boost-1.87.patch"
+ "${FILESDIR}/${PN}-5.8-guile-load-path.patch"
)
pkg_setup() {
@@ -155,13 +151,16 @@ src_prepare() {
libgnucash/backend/dbi/test/test-backend-dbi-basic.cpp
libgnucash/backend/xml/test/test-xml-pricedb.cpp
)
+ local x
for x in "${fixtestfiles[@]}"; do
sed -i -e "s|\"/tmp/|\"${T}/|g" "${S}/${x}" || die "sed of ${S}/${x} failed"
done
}
src_configure() {
- export GUILE_AUTO_COMPILE=0
+ # Used in src_test but the value has to be available at `cmake`
+ # generation time.
+ export GENTOO_TEMPORARY_TEST_INSTALLDIR="${BUILD_DIR}/test_install"
local sql_on_off="OFF"
if use mysql || use postgres || use sqlite ; then
@@ -203,8 +202,20 @@ src_test() {
fi
cd "${BUILD_DIR}" || die "Failed to enter ${BUILD_DIR}"
- XDG_DATA_HOME="${T}/$(whoami)" eninja check
- cmake_src_test
+
+ # We need e.g. `options.scm` to be available for loading by tests
+ # and the compiled `options.go` isn't enough. Do a temporary install
+ # for the benefit of the testsuite.
+ DESTDIR="${GENTOO_TEMPORARY_TEST_INSTALLDIR}" cmake_build install
+ # This is needed for `load-path` to be correct, as it lacks `/usr` in there.
+ local dir
+ for dir in bin include "$(get_libdir)" share ; do
+ ln -s "${GENTOO_TEMPORARY_TEST_INSTALLDIR}/usr/${dir}" "${GENTOO_TEMPORARY_TEST_INSTALLDIR}/${dir}" || die
+ done
+
+ # Avoid cmake_src_test as we don't get the test binaries built first
+ # and get various failures as a result. Copy what upstream do in CI.
+ eninja check
}
src_install() {
next reply other threads:[~2024-12-26 10:19 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-26 10:19 Sam James [this message]
-- strict thread matches above, loose matches on Subject: below --
2024-12-26 10:19 [gentoo-commits] repo/gentoo:master commit in: app-office/gnucash/, app-office/gnucash/files/ Sam James
2024-12-26 9:57 Sam James
2024-12-26 2:54 Sam James
2024-11-03 18:54 David Seifert
2024-05-11 19:02 Aaron W. Swenson
2024-01-20 11:49 Sam James
2023-06-20 10:53 Aaron W. Swenson
2023-05-12 23:58 Sam James
2021-04-21 18:51 Sam James
2021-04-19 3:50 Matt Turner
2020-05-21 11:14 Aaron W. Swenson
2019-10-13 11:40 Andreas Sturmlechner
2018-10-07 10:19 Aaron Swenson
2018-08-29 10:48 Aaron Swenson
2018-02-18 12:31 Aaron Swenson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1735208233.c9c68d05e8fcaa3dd8be3a9b38b2070f3115dd7d.sam@gentoo \
--to=sam@gentoo.org \
--cc=gentoo-commits@lists.gentoo.org \
--cc=gentoo-dev@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox