mirror of
https://git.yoctoproject.org/poky
synced 2026-02-20 08:29:42 +01:00
This allows avoiding clashes between source archives of a main project and a pypi project using the same name and version. The new optional setting is PYPI_ARCHIVE_NAME_PREFIX which is empty by default so previous downloads can be used. Example usage: PYPI_ARCHIVE_NAME_PREFIX = "pypi-" (From OE-Core rev: 6f9a6a3dbe5c8eb9f0d19987410932fec3d6dd1a) Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
37 lines
1.1 KiB
Plaintext
37 lines
1.1 KiB
Plaintext
#
|
|
# Copyright OpenEmbedded Contributors
|
|
#
|
|
# SPDX-License-Identifier: MIT
|
|
#
|
|
|
|
def pypi_package(d):
|
|
bpn = d.getVar('BPN')
|
|
if bpn.startswith('python-'):
|
|
return bpn[7:]
|
|
elif bpn.startswith('python3-'):
|
|
return bpn[8:]
|
|
return bpn
|
|
|
|
PYPI_PACKAGE ?= "${@pypi_package(d)}"
|
|
PYPI_PACKAGE_EXT ?= "tar.gz"
|
|
PYPI_ARCHIVE_NAME ?= "${PYPI_PACKAGE}-${PV}.${PYPI_PACKAGE_EXT}"
|
|
PYPI_ARCHIVE_NAME_PREFIX ?= ""
|
|
|
|
def pypi_src_uri(d):
|
|
package = d.getVar('PYPI_PACKAGE')
|
|
archive_name = d.getVar('PYPI_ARCHIVE_NAME')
|
|
archive_downloadname = d.getVar('PYPI_ARCHIVE_NAME_PREFIX') + archive_name
|
|
return 'https://files.pythonhosted.org/packages/source/%s/%s/%s;downloadfilename=%s' % (package[0], package, archive_name, archive_downloadname)
|
|
|
|
PYPI_SRC_URI ?= "${@pypi_src_uri(d)}"
|
|
|
|
HOMEPAGE ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/"
|
|
SECTION = "devel/python"
|
|
SRC_URI:prepend = "${PYPI_SRC_URI} "
|
|
S = "${WORKDIR}/${PYPI_PACKAGE}-${PV}"
|
|
|
|
UPSTREAM_CHECK_URI ?= "https://pypi.org/project/${PYPI_PACKAGE}/"
|
|
UPSTREAM_CHECK_REGEX ?= "/${PYPI_PACKAGE}/(?P<pver>(\d+[\.\-_]*)+)/"
|
|
|
|
CVE_PRODUCT ?= "python:${PYPI_PACKAGE}"
|