summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Orling <timothy.t.orling@linux.intel.com>2017-11-17 22:23:42 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2017-12-13 14:00:51 +0000
commit7d950b99bdb0f3c91eb060d31711243a7d3366fc (patch)
treec7f2a1cf5d9e03dc9b1ca085882ed35bee376a70
parent6c664a9713dd3f5a1934fad943851802a4186e06 (diff)
downloadpoky-7d950b99bdb0f3c91eb060d31711243a7d3366fc.tar.gz
pypi.bbclass: bring in from meta-python
The pypi.bbclass has usefullness in many meta layers, not just meta-python. Add it to oe-core for the benefit of everyone. Documentation strings for PYPI_PACKAGE, PYPI_PACKAGE_EXT and PYPI_SRC_URI added to meta/conf/documentation.conf (From OE-Core rev: c350812523017f113f63e0b863fd526b4d6331b9) Signed-off-by: Tim Orling <timothy.t.orling@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/classes/pypi.bbclass26
-rw-r--r--meta/conf/documentation.conf3
2 files changed, 29 insertions, 0 deletions
diff --git a/meta/classes/pypi.bbclass b/meta/classes/pypi.bbclass
new file mode 100644
index 0000000000..e5d7ab3ce1
--- /dev/null
+++ b/meta/classes/pypi.bbclass
@@ -0,0 +1,26 @@
1def pypi_package(d):
2 bpn = d.getVar('BPN')
3 if bpn.startswith('python-'):
4 return bpn[7:]
5 elif bpn.startswith('python3-'):
6 return bpn[8:]
7 return bpn
8
9PYPI_PACKAGE ?= "${@pypi_package(d)}"
10PYPI_PACKAGE_EXT ?= "tar.gz"
11
12def pypi_src_uri(d):
13 package = d.getVar('PYPI_PACKAGE')
14 package_ext = d.getVar('PYPI_PACKAGE_EXT')
15 pv = d.getVar('PV')
16 return 'https://files.pythonhosted.org/packages/source/%s/%s/%s-%s.%s' % (package[0], package, package, pv, package_ext)
17
18PYPI_SRC_URI ?= "${@pypi_src_uri(d)}"
19
20HOMEPAGE ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/"
21SECTION = "devel/python"
22SRC_URI += "${PYPI_SRC_URI}"
23S = "${WORKDIR}/${PYPI_PACKAGE}-${PV}"
24
25UPSTREAM_CHECK_URI ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/"
26UPSTREAM_CHECK_REGEX ?= "/${PYPI_PACKAGE}/(?P<pver>(\d+[\.\-_]*)+)"
diff --git a/meta/conf/documentation.conf b/meta/conf/documentation.conf
index a55e2836b5..081e726d4b 100644
--- a/meta/conf/documentation.conf
+++ b/meta/conf/documentation.conf
@@ -338,6 +338,9 @@ PRIORITY[doc] = "Indicates the importance of a package. The default value is 'o
338PROVIDES[doc] = "A list of aliases that a recipe also provides. These aliases are useful for satisfying dependencies of other recipes during the build as specified by DEPENDS." 338PROVIDES[doc] = "A list of aliases that a recipe also provides. These aliases are useful for satisfying dependencies of other recipes during the build as specified by DEPENDS."
339PRSERV_HOST[doc] = "The network based PR service host and port." 339PRSERV_HOST[doc] = "The network based PR service host and port."
340PV[doc] = "The version of the recipe. The version is normally extracted from the recipe filename." 340PV[doc] = "The version of the recipe. The version is normally extracted from the recipe filename."
341PYPI_PACKAGE[doc] = "The python package name to use for fetching from pypi. Default is parsed from the recipe name, but can be overridden if upstream name is different than recipe name."
342PYPI_PACKAGE_EXT[doc] = "The archive file extension to use for fetching from pypi. Default is tar.gz, but can be overridden if upstream uses a different compression scheme."
343PYPI_SRC_URI[doc] = "The URI to use to fetch from pypi, default uses pythonhosted.org and is constructed from PYPI_PACKAGE, PYPI_PACKAGE_EXT and PV."
341 344
342#Q 345#Q
343 346