summaryrefslogtreecommitdiffstats
path: root/meta/classes-recipe
diff options
context:
space:
mode:
authorRoss Burton <ross.burton@arm.com>2024-03-15 14:37:51 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2024-04-16 08:07:03 +0100
commit7a1e8c444c3285b3b6f586d4294636588f1e9518 (patch)
treef8910dc1c821b1d800ac281c89db6619ce56c066 /meta/classes-recipe
parent2a04e74a2aa9f836edc64c8618465651df70e8eb (diff)
downloadpoky-7a1e8c444c3285b3b6f586d4294636588f1e9518.tar.gz
classes/pypi: don't expose PYPI_ARCHIVE_NAME
This variable is only used when constructing a SRC_URI and some recipes think that it's the correct value to assign if the PyPi package name isn't the same as the recipe name, when PYPI_PACKAGE is actually all that needs to be set. Also document the variables we expect the recipe to assign if needed, and where the PyPi URL structure is documented. (From OE-Core rev: 0a67d05373ed92bf153bd17e5b32d77ca9f0c353) Signed-off-by: Ross Burton <ross.burton@arm.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes-recipe')
-rw-r--r--meta/classes-recipe/pypi.bbclass9
1 files changed, 7 insertions, 2 deletions
diff --git a/meta/classes-recipe/pypi.bbclass b/meta/classes-recipe/pypi.bbclass
index b8c18ccf39..c6bbe8119a 100644
--- a/meta/classes-recipe/pypi.bbclass
+++ b/meta/classes-recipe/pypi.bbclass
@@ -12,14 +12,19 @@ def pypi_package(d):
12 return bpn[8:] 12 return bpn[8:]
13 return bpn 13 return bpn
14 14
15# The PyPi package name (defaults to PN without the python3- prefix)
15PYPI_PACKAGE ?= "${@pypi_package(d)}" 16PYPI_PACKAGE ?= "${@pypi_package(d)}"
17# The file extension of the source archive
16PYPI_PACKAGE_EXT ?= "tar.gz" 18PYPI_PACKAGE_EXT ?= "tar.gz"
17PYPI_ARCHIVE_NAME ?= "${PYPI_PACKAGE}-${PV}.${PYPI_PACKAGE_EXT}" 19# An optional prefix for the download file in the case of name collisions
18PYPI_ARCHIVE_NAME_PREFIX ?= "" 20PYPI_ARCHIVE_NAME_PREFIX ?= ""
19 21
20def pypi_src_uri(d): 22def pypi_src_uri(d):
23 """
24 Construct a source URL as per https://warehouse.pypa.io/api-reference/integration-guide.html#predictable-urls.
25 """
21 package = d.getVar('PYPI_PACKAGE') 26 package = d.getVar('PYPI_PACKAGE')
22 archive_name = d.getVar('PYPI_ARCHIVE_NAME') 27 archive_name = d.expand('${PYPI_PACKAGE}-${PV}.${PYPI_PACKAGE_EXT}')
23 archive_downloadname = d.getVar('PYPI_ARCHIVE_NAME_PREFIX') + archive_name 28 archive_downloadname = d.getVar('PYPI_ARCHIVE_NAME_PREFIX') + archive_name
24 return 'https://files.pythonhosted.org/packages/source/%s/%s/%s;downloadfilename=%s' % (package[0], package, archive_name, archive_downloadname) 29 return 'https://files.pythonhosted.org/packages/source/%s/%s/%s;downloadfilename=%s' % (package[0], package, archive_name, archive_downloadname)
25 30