summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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