From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 6E55F158030 for ; Mon, 27 Feb 2023 01:36:05 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 65D4DE0809; Mon, 27 Feb 2023 01:36:03 +0000 (UTC) Received: from smtp.gentoo.org (woodpecker.gentoo.org [140.211.166.183]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 3E5EBE0809 for ; Mon, 27 Feb 2023 01:36:02 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id D6A10335DCA for ; Mon, 27 Feb 2023 01:36:01 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id 319358BA for ; Mon, 27 Feb 2023 01:35:59 +0000 (UTC) From: "Anna Vyalkova" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Anna Vyalkova" Message-ID: <1677461750.f7dfbeb064b132fbdb4798b786110664bc782929.cybertailor@gentoo> Subject: [gentoo-commits] repo/proj/guru:dev commit in: app-office/beancount/ X-VCS-Repository: repo/proj/guru X-VCS-Files: app-office/beancount/beancount-2.3.5-r1.ebuild app-office/beancount/beancount-2.3.5-r2.ebuild X-VCS-Directories: app-office/beancount/ X-VCS-Committer: cybertailor X-VCS-Committer-Name: Anna Vyalkova X-VCS-Revision: f7dfbeb064b132fbdb4798b786110664bc782929 X-VCS-Branch: dev Date: Mon, 27 Feb 2023 01:35:59 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 38598b5c-71d2-45c8-90cc-2a26497c376b X-Archives-Hash: ac92c2cdde28a41a0436d10a99878968 commit: f7dfbeb064b132fbdb4798b786110664bc782929 Author: Anna (cybertailor) Vyalkova sysrq in> AuthorDate: Mon Feb 27 00:40:05 2023 +0000 Commit: Anna Vyalkova sysrq in> CommitDate: Mon Feb 27 01:35:50 2023 +0000 URL: https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=f7dfbeb0 app-office/beancount: enable py3.11 Signed-off-by: Anna (cybertailor) Vyalkova sysrq.in> ...t-2.3.5-r1.ebuild => beancount-2.3.5-r2.ebuild} | 57 +++++++++++++++++++--- 1 file changed, 51 insertions(+), 6 deletions(-) diff --git a/app-office/beancount/beancount-2.3.5-r1.ebuild b/app-office/beancount/beancount-2.3.5-r2.ebuild similarity index 61% rename from app-office/beancount/beancount-2.3.5-r1.ebuild rename to app-office/beancount/beancount-2.3.5-r2.ebuild index 296a34055..4612d6706 100644 --- a/app-office/beancount/beancount-2.3.5-r1.ebuild +++ b/app-office/beancount/beancount-2.3.5-r2.ebuild @@ -3,11 +3,11 @@ EAPI=8 -PYTHON_COMPAT=( python3_10 ) +PYTHON_COMPAT=( python3_{10..11} ) DISTUTILS_USE_PEP517=setuptools DISTUTILS_SINGLE_IMPL=1 -inherit distutils-r1 +inherit distutils-r1 toolchain-funcs DESCRIPTION="A double-entry accounting system that uses text files as input" HOMEPAGE="https://beancount.github.io https://github.com/beancount/beancount" @@ -25,32 +25,73 @@ RDEPEND=" dev-python/google-api-python-client[${PYTHON_USEDEP}] dev-python/lxml[${PYTHON_USEDEP}] dev-python/ply[${PYTHON_USEDEP}] - dev-python/pytest[${PYTHON_USEDEP}] dev-python/python-dateutil[${PYTHON_USEDEP}] dev-python/python-magic[${PYTHON_USEDEP}] dev-python/requests[${PYTHON_USEDEP}] ') " +BDEPEND=" + sys-devel/bison + sys-devel/flex +" EPYTEST_DESELECT=( scripts/setup_test.py ) distutils_enable_tests pytest src_prepare() { + distutils-r1_src_prepare + + # remove test deps from 'install_requires' + sed "/pytest/d" -i setup.py || die + + # we'll regenerate C sources + rm ${PN}/parser/grammar.{c,h} || die + rm ${PN}/parser/lexer.{c,h} || die + + # repair tests sed "/def find_repository_root/a\ return '${S}'" \ -i ${PN}/utils/test_utils.py || die sed "s/\[PROGRAM\]/['${EPYTHON}', PROGRAM]/" \ -i ${PN}/tools/treeify_test.py || die sed "/DATA_DIR =/c\ DATA_DIR = '${S}/${PN}/utils/file_type_testdata'" \ -i ${PN}/utils/file_type_test.py || die - distutils-r1_src_prepare +} + +src_configure() { + tc-export CC } python_compile() { distutils-r1_python_compile # keep in sync with hashsrc.py, otherwise expect test failures - cp beancount/parser/{lexer.l,grammar.y,decimal.h,decimal.c,macros.h,parser.h,parser.c,tokens.h} "${BUILD_DIR}"/install$(python_get_sitedir)/${PN}/parser || die + local csources=( + decimal.{c,h} + grammar.y + lexer.l + macros.h + parser.{c,h} + tokens.h + ) + + for file in "${csources[@]}"; do + cp ${PN}/parser/${file} "${BUILD_DIR}"/install$(python_get_sitedir)/${PN}/parser || die + done +} + +src_compile() { + local mymakeflags=( + PYCONFIG="$(python_get_PYTHON_CONFIG)" + ) + + emake "${mymakeflags[@]}" ${PN}/parser/grammar.c + emake "${mymakeflags[@]}" ${PN}/parser/lexer.c + + distutils-r1_src_compile + + use test && \ + emake "${mymakeflags[@]}" ${PN}/parser/tokens_test } python_test(){ @@ -59,6 +100,10 @@ python_test(){ } src_test() { - emake ctest + local mymakeflags=( + PYCONFIG="$(python_get_PYTHON_CONFIG)" + ) + + emake "${mymakeflags[@]}" ctest distutils-r1_src_test }