From 03df76764704bd5afe4ae59a7f95a79b8cabd3e6 Mon Sep 17 00:00:00 2001 From: Flatcar Buildbot Date: Mon, 27 Mar 2023 07:23:25 +0000 Subject: [PATCH] eclass/pypi: Sync with Gentoo It's from Gentoo commit 58fd31f892cd8315d8c67b08cfd1fad64be431b0. --- .../portage-stable/eclass/pypi.eclass | 37 +++++++++++++------ 1 file changed, 25 insertions(+), 12 deletions(-) diff --git a/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass b/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass index 79007a2ad0..13dd56fa4f 100644 --- a/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass +++ b/sdk_container/src/third_party/portage-stable/eclass/pypi.eclass @@ -16,7 +16,7 @@ # the eclass), and the version is translated using # pypi_translate_version. # -# If necessary, SRC_URI and S can be overriden by the ebuild. Two +# If necessary, SRC_URI and S can be overridden by the ebuild. Two # helper functions, pypi_sdist_url and pypi_wheel_url are provided # to generate URLs to artifacts of specified type, with customizable # URL components. Additionally, pypi_wheel_name can be used to generate @@ -50,6 +50,19 @@ _PYPI_ECLASS=1 # When set to a non-empty value, disables project name normalization # for the default SRC_URI and S values. +# @ECLASS_VARIABLE: PYPI_PN +# @PRE_INHERIT +# @DESCRIPTION: +# The PyPI project name. This should be overridden scarcely, generally +# when upstream project name does not conform to Gentoo naming rules, +# e.g. when it contains dots or uppercase letters. +# +# Example use: +# @CODE +# PYPI_PN=${PN/-/.} +# @CODE +: "${PYPI_PN:=${PN}}" + # @FUNCTION: pypi_normalize_name # @USAGE: # @DESCRIPTION: @@ -99,9 +112,9 @@ pypi_translate_version() { # generated using build systems that did not follow PEP 625 # (i.e. the sdist name contains uppercase letters, hyphens or dots). # -# If is unspecified, it defaults to ${PN}. The package name -# is normalized according to the specification unless `--no-normalize` -# is passed. +# If is unspecified, it defaults to ${PYPI_PN}. The package +# name is normalized according to the specification unless +# `--no-normalize` is passed. # # If is unspecified, it defaults to ${PV} translated # via pypi_translate_version. If it is specified, then it is used @@ -121,7 +134,7 @@ pypi_sdist_url() { die "Usage: ${FUNCNAME} [--no-normalize] [ []]" fi - local project=${1-"${PN}"} + local project=${1-"${PYPI_PN}"} local version=${2-"$(pypi_translate_version "${PV}")"} local suffix=${3-.tar.gz} local fn_project=${project} @@ -135,8 +148,8 @@ pypi_sdist_url() { # @DESCRIPTION: # Output the wheel filename for the specified project/version tuple. # -# If is unspecified, it defaults to ${PN}. The package name -# is normalized according to the wheel specification. +# If is unspecified, it defaults to ${PYPI_PN}. The package +# name is normalized according to the wheel specification. # # If is unspecified, it defaults to ${PV} translated # via pypi_translate_version. If it is specified, then it is used @@ -154,7 +167,7 @@ pypi_wheel_name() { die "Usage: ${FUNCNAME} [ [ []]]" fi - local project=$(pypi_normalize_name "${1-"${PN}"}") + local project=$(pypi_normalize_name "${1-"${PYPI_PN}"}") local version=${2-"$(pypi_translate_version "${PV}")"} local pytag=${3-py3} local abitag=${4-none-any} @@ -172,7 +185,7 @@ pypi_wheel_name() { # the wheel contents will be unpacked straight into ${WORKDIR}. # You need to add a BDEPEND on app-arch/unzip. # -# If is unspecified, it defaults to ${PN}. +# If is unspecified, it defaults to ${PYPI_PN}. # # If is unspecified, it defaults to ${PV} translated # via pypi_translate_version. If it is specified, then it is used @@ -197,7 +210,7 @@ pypi_wheel_url() { fi local filename=$(pypi_wheel_name "${@}") - local project=${1-"${PN}"} + local project=${1-"${PYPI_PN}"} local version=${2-"$(pypi_translate_version "${PV}")"} local pytag=${3-py3} printf "https://files.pythonhosted.org/packages/%s" \ @@ -210,10 +223,10 @@ pypi_wheel_url() { if [[ ${PYPI_NO_NORMALIZE} ]]; then SRC_URI="$(pypi_sdist_url --no-normalize)" - S="${WORKDIR}/${PN}-$(pypi_translate_version "${PV}")" + S="${WORKDIR}/${PYPI_PN}-$(pypi_translate_version "${PV}")" else SRC_URI="$(pypi_sdist_url)" - S="${WORKDIR}/$(pypi_normalize_name "${PN}")-$(pypi_translate_version "${PV}")" + S="${WORKDIR}/$(pypi_normalize_name "${PYPI_PN}")-$(pypi_translate_version "${PV}")" fi fi