From patchwork Tue May 24 12:11:51 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ross Burton X-Patchwork-Id: 8431 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from aws-us-west-2-korg-lkml-1.web.codeaurora.org (localhost.localdomain [127.0.0.1]) by smtp.lore.kernel.org (Postfix) with ESMTP id C4363C43219 for ; Tue, 24 May 2022 12:12:06 +0000 (UTC) Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web10.8528.1653394322658049246 for ; Tue, 24 May 2022 05:12:03 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: ross.burton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 1A4E31FB; Tue, 24 May 2022 05:12:02 -0700 (PDT) Received: from oss-tx204.lab.cambridge.arm.com (usa-sjc-imap-foss1.foss.arm.com [10.121.207.14]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 474B23F66F; Tue, 24 May 2022 05:12:01 -0700 (PDT) From: Ross Burton To: openembedded-devel@lists.openembedded.org Cc: nd@arm.com Subject: [PATCH 5/7] python3-hatchling: add new recipe and build class Date: Tue, 24 May 2022 13:11:51 +0100 Message-Id: <20220524121153.1175133-5-ross.burton@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220524121153.1175133-1-ross.burton@arm.com> References: <20220524121153.1175133-1-ross.burton@arm.com> MIME-Version: 1.0 List-Id: X-Webhook-Received: from li982-79.members.linode.com [45.33.32.79] by aws-us-west-2-korg-lkml-1.web.codeaurora.org with HTTPS for ; Tue, 24 May 2022 12:12:06 -0000 X-Groupsio-URL: https://lists.openembedded.org/g/openembedded-devel/message/97246 Hatchling is the build backend used by the Hatch tool. Add the recipe and a pep517 build class. Signed-off-by: Ross Burton --- meta-python/classes/python_hatchling.bbclass | 5 +++++ .../packagegroups/packagegroup-meta-python.bb | 1 + .../python/python3-hatchling_1.3.0.bb | 21 +++++++++++++++++++ 3 files changed, 27 insertions(+) create mode 100644 meta-python/classes/python_hatchling.bbclass create mode 100644 meta-python/recipes-devtools/python/python3-hatchling_1.3.0.bb diff --git a/meta-python/classes/python_hatchling.bbclass b/meta-python/classes/python_hatchling.bbclass new file mode 100644 index 0000000000..b3cbe23601 --- /dev/null +++ b/meta-python/classes/python_hatchling.bbclass @@ -0,0 +1,5 @@ +inherit python_pep517 python3native python3-dir setuptools3-base + +DEPENDS += "python3-hatchling-native" + +PEP517_BUILD_API = "hatchling.build" diff --git a/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb b/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb index 2fcf34260c..80ec0720fd 100644 --- a/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb +++ b/meta-python/recipes-core/packagegroups/packagegroup-meta-python.bb @@ -168,6 +168,7 @@ RDEPENDS:packagegroup-meta-python3 = "\ python3-h11 \ python3-h2 \ python3-h5py \ + python3-hatchling \ python3-haversine \ python3-hpack \ python3-html2text \ diff --git a/meta-python/recipes-devtools/python/python3-hatchling_1.3.0.bb b/meta-python/recipes-devtools/python/python3-hatchling_1.3.0.bb new file mode 100644 index 0000000000..a6550a9732 --- /dev/null +++ b/meta-python/recipes-devtools/python/python3-hatchling_1.3.0.bb @@ -0,0 +1,21 @@ +SUMMARY = "The extensible, standards compliant build backend used by Hatch" +HOMEPAGE = "https://hatch.pypa.io/latest/" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=cbe2fd33fc9297692812fc94b7d27fd9" + +inherit pypi python_hatchling + +DEPENDS += "python3-pluggy-native python3-tomli-native python3-pathspec-native python3-packaging-native python3-editables-native" +DEPENDS:remove:class-native = "python3-hatchling-native" + +SRC_URI[sha256sum] = "1401d45d3dd6a5910f64d539acaa943486d5e8b7dda1a97f2b0040fdddc5b85e" + +# Until we have a proper tool to invoke PEP517 builds, hatchling can't +# bootstrap itself automatically. +PEP517_BUILD_API = "hatchling.ouroboros" + +do_compile:prepend() { + export PYTHONPATH=src +} + +BBCLASSEXTEND = "native nativesdk"