python improvements
v3 cover python improvements
We are not quite ready for the json manifest changes from v2, so this series works with the original manifest generators.
The commit which deletes the old manifests will fail git send-email, so this series must be pulled from git. This series DOES address this issue by adding newlines in the generators so that the manifests do not continue to break git send-mail workflow.
The pypi.bbclass added to meta-python by Derek Straka significantly simplifies python module packaging and has utility outside of just the meta-python layer. Most notably, it knows how to generate the SRC_URI, S, UPSTREAM_CHECK_URI and UPSTREAM_CHECK_REGEX variables given a PYPI_PACKAGE. For special cases where PYPI_PACKAGE is not guessable from the BPN, the value can be set in your recipe. For special cases where the upstream source is not bundled as a .tar.gz, the PYPI_PACKAGE_EXT can be set in your recipe. Providing python2 and python3 packaging is also simplified by putting most of the common content into .inc files. Note that it is strongly recommend to use PYTHON_PN to dynamically set "python-" vs. "python3-" prefix for your DEPENDS and RDEPENDS needs. This often moves everything but the "requires python-foo.inc" and "include setuptools*" lines in your python recipes to the common .inc file. Much simpler maintenance.
This patch series adds runpy to the python-*-manifests, which allows you to run, for example "python -m pip" from the command line. It also adds a couple dependencies that were silently breaking python packages at runtime.
This series modifies all the recipes in recipes-devtools/python which had a SRC_URI pointing to "pythonhosted" to use the pypi.bbclass. Where it made sense, the "python-" and "python3-" specific files were simplified, putting the common content into the .inc file.
Finally, this series upgrades python-scons and python*-setuptools to the latest versions.
The following changes since commit a24c10b7bdab8aa960fdd3a58d2009f24344e579:
populate_sdk_ext: Use prebuilt uninative tarball (2017-12-11 21:46:33 +0000)
are available in the Git repository at:
git://git.openembedded.org/openembedded-core-contrib timo/pypi-v3
http://cgit.openembedded.org//log/?h=timo/pypi-v3
Tim Orling (14):
pypi.bbclass: bring in from meta-python python-*-manifest/generators: fix long line lengths python-*-manifest/generators: add runpy; python3-plistlib
python-setuptools: upgrade to 38.2.4; use pypi.bbclass; improvements
python3-pip: use pypi.bbclass
python-nose: use pypi.bbclass
python-six: use pypi.bbclass
python-async: use pypi.bbclass
python-mako: use pypi.bbclass
python-smmap: use pypi.bbclass
python-gitdb: use pypi.bbclass
python-git: use pypi.bbclass
python3-iniparse: use pypi.bbclass
python-scons: upgrade to v3.0.1; use pypi.bbclass
meta/classes/pypi.bbclass | 26 +
.../python/python-2.7-manifest.inc | 699 +++++++++++++--
.../python/python-3.5-manifest.inc | 990 +++++++++++++++++++--
meta/recipes-devtools/python/python-async.inc | 7 +-
meta/recipes-devtools/python/python-git.inc | 26 +-
meta/recipes-devtools/python/python-gitdb.inc | 15 +-
meta/recipes-devtools/python/python-mako.inc | 13 +-
meta/recipes-devtools/python/python-nose.inc | 18 +
meta/recipes-devtools/python/python-nose_1.3.7.bb | 25 +-
...ative_3.0.0.bb => python-scons-native_3.0.1.bb} | 0
...onscript-Support-python2-print-statements.patch | 38 -
...python-scons_3.0.0.bb => python-scons_3.0.1.bb} | 12 +-
meta/recipes-devtools/python/python-setuptools.inc | 42 +-
.../python/python-setuptools_36.5.0.bb | 38 -
.../python/python-setuptools_38.2.4.bb | 9 +
meta/recipes-devtools/python/python-six.inc | 8 +-
meta/recipes-devtools/python/python-smmap.inc | 12 +-
.../recipes-devtools/python/python3-async_0.6.2.bb | 6 +-
meta/recipes-devtools/python/python3-git_2.1.7.bb | 5 -
.../recipes-devtools/python/python3-gitdb_0.6.4.bb | 7 +-
.../python/python3-iniparse_0.4.bb | 9 +-
meta/recipes-devtools/python/python3-mako_1.0.7.bb | 11 +-
meta/recipes-devtools/python/python3-nose_1.3.7.bb | 24 +-
meta/recipes-devtools/python/python3-pip_9.0.1.bb | 13 +-
.../python/python3-setuptools_36.5.0.bb | 38 -
.../python/python3-setuptools_38.2.4.bb | 6 +
meta/recipes-devtools/python/python3-six_1.11.0.bb | 2 -
.../recipes-devtools/python/python3-smmap_0.9.0.bb | 5 +-
scripts/contrib/python/generate-manifest-2.7.py | 27 +-
scripts/contrib/python/generate-manifest-3.5.py | 31 +-
30 files changed, 1743 insertions(+), 419 deletions(-)
create mode 100644 meta/classes/pypi.bbclass
create mode 100644 meta/recipes-devtools/python/python-nose.inc
rename meta/recipes-devtools/python/{python-scons-native_3.0.0.bb => python-scons-native_3.0.1.bb} (100%)
delete mode 100644 meta/recipes-devtools/python/python-scons/SConscript-Support-python2-print-statements.patch
rename meta/recipes-devtools/python/{python-scons_3.0.0.bb => python-scons_3.0.1.bb} (54%)
delete mode 100644 meta/recipes-devtools/python/python-setuptools_36.5.0.bb
create mode 100644 meta/recipes-devtools/python/python-setuptools_38.2.4.bb
delete mode 100644 meta/recipes-devtools/python/python3-setuptools_36.5.0.bb
create mode 100644 meta/recipes-devtools/python/python3-setuptools_38.2.4.bbSignature · 1 line
2.14.3
PATCH v3 7/14 python-six: use pypi.bbclass
* Simplify python3-six by using pypi.bbclass
- Use PYTHON_PN in .inc to avoid duplication in RDEPENDS
--- meta/recipes-devtools/python/python-six.inc | 8 +++----- meta/recipes-devtools/python/python3-six_1.11.0.bb | 2 -- 2 files changed, 3 insertions(+), 7 deletions(-)
meta/recipes-devtools/python/python-six.inc +3 -5
@@ -4,13 +4,11 @@ SECTION = "devel/python" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=35cec5bf04dd0820d0a18533ea7c774a" -SRC_URI = "https://files.pythonhosted.org/packages/source/s/six/six-${PV}.tar.gz" SRC_URI[md5sum] = "d12789f9baf7e9fb2524c0c64f1773f8" SRC_URI[sha256sum] = "70e8a77beed4562e7f14fe23a786b54f6296e34344c23bc42f07b15018ff98e9" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/six/" -UPSTREAM_CHECK_REGEX = "/six/(?P<pver>(\d+[\.\-_]*)+)" +inherit pypi -BBCLASSEXTEND = "native nativesdk" +RDEPENDS_${PN} = "${PYTHON_PN}-io" -S = "${WORKDIR}/six-${PV}" +BBCLASSEXTEND = "native nativesdk"
meta/recipes-devtools/python/python3-six_1.11.0.bb +0 -2
@@ -1,4 +1,2 @@ inherit setuptools3 require python-six.inc - -RDEPENDS_${PN} += "python3-io"
Signature · 1 line
2.14.3
PATCH v3 8/14 python-async: use pypi.bbclass
In reply to Tim Orling* Simplify by using pypi.bbclass
* Use PYTHON_PN for RDEPENDS in .inc to avoid duplication
--- meta/recipes-devtools/python/python-async.inc | 7 +++---- meta/recipes-devtools/python/python3-async_0.6.2.bb | 6 +----- 2 files changed, 4 insertions(+), 9 deletions(-)
meta/recipes-devtools/python/python-async.inc +3 -4
@@ -4,12 +4,11 @@ SECTION = "devel/python" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=88df8e78b9edfd744953862179f2d14e" -SRC_URI = "https://files.pythonhosted.org/packages/source/a/async/async-${PV}.tar.gz" +inherit pypi + SRC_URI[md5sum] = "9b06b5997de2154f3bc0273f80bcef6b" SRC_URI[sha256sum] = "ac6894d876e45878faae493b0cf61d0e28ec417334448ac0a6ea2229d8343051" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/async/" - -S = "${WORKDIR}/async-${PV}" +RDEPENDS_${PN} += "${PYTHON_PN}-threading ${PYTHON_PN}-lang" BBCLASSEXTEND = "nativesdk"
meta/recipes-devtools/python/python3-async_0.6.2.bb +1 -5
@@ -1,6 +1,2 @@ -require python-async.inc - inherit setuptools3 - -RDEPENDS_${PN} += "python3-threading python3-lang" - +require python-async.inc
Signature · 1 line
2.14.3
PATCH v3 9/14 python-mako: use pypi.bbclass
In reply to Tim Orling* Simpify python3-mako by using pypi.bbclass
* Consolidate common content in .inc
--- meta/recipes-devtools/python/python-mako.inc | 13 +++++++++---- meta/recipes-devtools/python/python3-mako_1.0.7.bb | 11 +---------- 2 files changed, 10 insertions(+), 14 deletions(-)
meta/recipes-devtools/python/python-mako.inc +9 -4
@@ -4,13 +4,18 @@ SECTION = "devel/python" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;md5=1bb21fa2d2f7a534c884b990430a6863" -SRC_URI = "https://files.pythonhosted.org/packages/source/M/Mako/Mako-${PV}.tar.gz" +PYPI_PACKAGE = "Mako" + +inherit pypi SRC_URI[md5sum] = "5836cc997b1b773ef389bf6629c30e65" SRC_URI[sha256sum] = "4e02fde57bd4abb5ec400181e4c314f56ac3e49ba4fb8b0d50bba18cb27d25ae" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/mako/" -UPSTREAM_CHECK_REGEX = "/Mako/(?P<pver>(\d+[\.\-_]*)+)" +RDEPENDS_${PN} = "${PYTHON_PN}-html \ + ${PYTHON_PN}-netclient \ + ${PYTHON_PN}-threading \ +" -S = "${WORKDIR}/Mako-${PV}" +RDEPENDS_${PN}_class-native = "" +BBCLASSEXTEND = "native nativesdk"
meta/recipes-devtools/python/python3-mako_1.0.7.bb +1 -10
@@ -1,11 +1,2 @@ -require python-mako.inc - inherit setuptools3 - -RDEPENDS_${PN} = "python3-threading \ - python3-netclient \ - python3-html \ -" -RDEPENDS_${PN}_class-native = "" - -BBCLASSEXTEND = "native nativesdk" +require python-mako.inc
Signature · 1 line
2.14.3
PATCH v3 10/14 python-smmap: use pypi.bbclass
In reply to Tim Orling* Simpify python3-smmap using pypi.bbclass
* Consolidate common content in .inc
--- meta/recipes-devtools/python/python-smmap.inc | 12 ++++++------ meta/recipes-devtools/python/python3-smmap_0.9.0.bb | 5 +---- 2 files changed, 7 insertions(+), 10 deletions(-)
meta/recipes-devtools/python/python-smmap.inc +6 -6
@@ -7,13 +7,13 @@ SECTION = "devel/python" LICENSE = "BSD" LIC_FILES_CHKSUM = "file://PKG-INFO;beginline=8;endline=8;md5=e910b35b0ef4e1f665b9a75d6afb7709" -SRC_URI = "https://files.pythonhosted.org/packages/source/s/smmap/smmap-${PV}.tar.gz" +inherit pypi + SRC_URI[md5sum] = "d7932d5ace206bf4ae15198cf36fb6ab" SRC_URI[sha256sum] = "0e2b62b497bd5f0afebc002eda4d90df9d209c30ef257e8673c90a6b5c119d62" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/smmap/" -UPSTREAM_CHECK_REGEX = "/smmap/(?P<pver>(\d+[\.\-_]*)+)" - -S = "${WORKDIR}/smmap-${PV}" - +RDEPENDS_${PN} += "${PYTHON_PN}-codecs \ + ${PYTHON_PN}-lang \ + ${PYTHON_PN}-mmap \ +" BBCLASSEXTEND = "nativesdk"
meta/recipes-devtools/python/python3-smmap_0.9.0.bb +1 -4
@@ -1,5 +1,2 @@ -require python-smmap.inc - inherit setuptools3 - -RDEPENDS_${PN} += "python3-codecs python3-mmap python3-lang" +require python-smmap.inc
Signature · 1 line
2.14.3
PATCH v3 11/14 python-gitdb: use pypi.bbclass
In reply to Tim Orling* Simplify python3-gitdb using pypi.bbclass
* Consolidate common content in .inc
--- meta/recipes-devtools/python/python-gitdb.inc | 15 +++++++++++---- meta/recipes-devtools/python/python3-gitdb_0.6.4.bb | 7 +------ 2 files changed, 12 insertions(+), 10 deletions(-)
meta/recipes-devtools/python/python-gitdb.inc +11 -4
@@ -4,13 +4,20 @@ SECTION = "devel/python" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=59e5ecb13339a936eedf83282eaf4528" -SRC_URI = "https://files.pythonhosted.org/packages/source/g/gitdb/gitdb-${PV}.tar.gz" +inherit pypi SRC_URI[md5sum] = "44e4366b8bdfd306b075c3a52c96ae1a" SRC_URI[sha256sum] = "a3ebbc27be035a2e874ed904df516e35f4a29a778a764385de09de9e0f139658" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/gitdb/" - -S = "${WORKDIR}/gitdb-${PV}" +DEPENDS = "${PYTHON_PN}-async ${PYTHON_PN}-smmap" +RDEPENDS_${PN} += "${PYTHON_PN}-async \ + ${PYTHON_PN}-compression \ + ${PYTHON_PN}-crypt \ + ${PYTHON_PN}-io \ + ${PYTHON_PN}-lang \ + ${PYTHON_PN}-mmap \ + ${PYTHON_PN}-shell \ + ${PYTHON_PN}-smmap \ +" BBCLASSEXTEND = "nativesdk"
meta/recipes-devtools/python/python3-gitdb_0.6.4.bb +1 -6
@@ -1,7 +1,2 @@ -require python-gitdb.inc - -DEPENDS = "python3-async python3-smmap" - inherit distutils3 - -RDEPENDS_${PN} += "python3-smmap python3-async python3-mmap python3-lang python3-io python3-shell python3-crypt python3-compression" +require python-gitdb.inc
Signature · 1 line
2.14.3
PATCH v3 1/14 pypi.bbclass: bring in from meta-python
In reply to Tim OrlingThe pypi.bbclass has usefullness in many meta layers, not just meta-python. Add it to oe-core for the benefit of everyone.
--- meta/classes/pypi.bbclass | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 meta/classes/pypi.bbclass
meta/classes/pypi.bbclass new file +26 -0
@@ -0,0 +1,26 @@ +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" + +def pypi_src_uri(d): + package = d.getVar('PYPI_PACKAGE') + package_ext = d.getVar('PYPI_PACKAGE_EXT') + pv = d.getVar('PV') + return 'https://files.pythonhosted.org/packages/source/%s/%s/%s-%s.%s' % (package[0], package, package, pv, package_ext) + +PYPI_SRC_URI ?= "${@pypi_src_uri(d)}" + +HOMEPAGE ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/" +SECTION = "devel/python" +SRC_URI += "${PYPI_SRC_URI}" +S = "${WORKDIR}/${PYPI_PACKAGE}-${PV}" + +UPSTREAM_CHECK_URI ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/" +UPSTREAM_CHECK_REGEX ?= "/${PYPI_PACKAGE}/(?P<pver>(\d+[\.\-_]*)+)"
Signature · 1 line
2.14.3
PATCH v3 2/14 python-*-manifest/generators: fix long line lengths
In reply to Tim OrlingThe generators create python-*-manifest.inc files with lines over 2500 characters long which breaks sending patches via git send-email (because of smtp limitation).
This patchset formats all the long lines into multiple lines.
--- .../python/python-2.7-manifest.inc | 690 +++++++++++++-- .../python/python-3.5-manifest.inc | 969 +++++++++++++++++++-- scripts/contrib/python/generate-manifest-2.7.py | 24 +- scripts/contrib/python/generate-manifest-3.5.py | 24 +- 4 files changed, 1540 insertions(+), 167 deletions(-)
meta/recipes-devtools/python/python-2.7-manifest.inc +617 -73
@@ -1,287 +1,831 @@ # WARNING: This file is AUTO GENERATED: Manual edits will be lost next time I regenerate the file. -# Generator: '../../../scripts/contrib/python/generate-manifest-2.7.py' Version 20110222.2 (C) 2002-2010 Michael 'Mickey' Lauer <[email protected]> +# Generator: './scripts/contrib/python/generate-manifest-2.7.py' Version 20110222.2 (C) 2002-2010 Michael 'Mickey' Lauer <[email protected]> -PROVIDES+="${PN}-2to3 ${PN}-argparse ${PN}-audio ${PN}-bsddb ${PN}-codecs ${PN}-compile ${PN}-compiler ${PN}-compression ${PN}-contextlib ${PN}-core ${PN}-crypt ${PN}-ctypes ${PN}-curses ${PN}-datetime ${PN}-db ${PN}-debugger ${PN}-dev ${PN}-difflib ${PN}-distutils ${PN}-distutils-staticdev ${PN}-doctest ${PN}-email ${PN}-fcntl ${PN}-gdbm ${PN}-hotshot ${PN}-html ${PN}-idle ${PN}-image ${PN}-importlib ${PN}-io ${PN}-json ${PN}-lang ${PN}-logging ${PN}-mailbox ${PN}-math ${PN}-mime ${PN}-mmap ${PN}-multiprocessing ${PN}-netclient ${PN}-netserver ${PN}-numbers ${PN}-pickle ${PN}-pkgutil ${PN}-plistlib ${PN}-pprint ${PN}-profile ${PN}-pydoc ${PN}-re ${PN}-readline ${PN}-resource ${PN}-robotparser ${PN}-shell ${PN}-smtpd ${PN}-sqlite3 ${PN}-sqlite3-tests ${PN}-stringold ${PN}-subprocess ${PN}-syslog ${PN}-terminal ${PN}-tests ${PN}-textutils ${PN}-threading ${PN}-tkinter ${PN}-unittest ${PN}-unixadmin ${PN}-xml ${PN}-xmlrpc ${PN}-zlib " - -PACKAGES="${PN}-dbg ${PN}-2to3 ${PN}-argparse ${PN}-audio ${PN}-bsddb ${PN}-codecs ${PN}-compile ${PN}-compiler ${PN}-compression ${PN}-contextlib ${PN}-core ${PN}-crypt ${PN}-ctypes ${PN}-curses ${PN}-datetime ${PN}-db ${PN}-debugger ${PN}-dev ${PN}-difflib ${PN}-distutils-staticdev ${PN}-distutils ${PN}-doctest ${PN}-email ${PN}-fcntl ${PN}-gdbm ${PN}-hotshot ${PN}-html ${PN}-idle ${PN}-image ${PN}-importlib ${PN}-io ${PN}-json ${PN}-lang ${PN}-logging ${PN}-mailbox ${PN}-math ${PN}-mime ${PN}-mmap ${PN}-multiprocessing ${PN}-netclient ${PN}-netserver ${PN}-numbers ${PN}-pickle ${PN}-pkgutil ${PN}-plistlib ${PN}-pprint ${PN}-profile ${PN}-pydoc ${PN}-re ${PN}-readline ${PN}-resource ${PN}-robotparser ${PN}-shell ${PN}-smtpd ${PN}-sqlite3 ${PN}-sqlite3-tests ${PN}-stringold ${PN}-subprocess ${PN}-syslog ${PN}-terminal ${PN}-tests ${PN}-textutils ${PN}-threading ${PN}-tkinter ${PN}-unittest ${PN}-unixadmin ${PN}-xml ${PN}-xmlrpc ${PN}-zlib ${PN}-modules" +PROVIDES+=" \ + ${PN}-2to3 \ + ${PN}-argparse \ + ${PN}-audio \ + ${PN}-bsddb \ + ${PN}-codecs \ + ${PN}-compile \ + ${PN}-compiler \ + ${PN}-compression \ + ${PN}-contextlib \ + ${PN}-core \ + ${PN}-crypt \ + ${PN}-ctypes \ + ${PN}-curses \ + ${PN}-datetime \ + ${PN}-db \ + ${PN}-debugger \ + ${PN}-dev \ + ${PN}-difflib \ + ${PN}-distutils \ + ${PN}-distutils-staticdev \ + ${PN}-doctest \ + ${PN}-email \ + ${PN}-fcntl \ + ${PN}-gdbm \ + ${PN}-hotshot \ + ${PN}-html \ + ${PN}-idle \ + ${PN}-image \ + ${PN}-importlib \ + ${PN}-io \ + ${PN}-json \ + ${PN}-lang \ + ${PN}-logging \ + ${PN}-mailbox \ + ${PN}-math \ + ${PN}-mime \ + ${PN}-mmap \ + ${PN}-multiprocessing \ + ${PN}-netclient \ + ${PN}-netserver \ + ${PN}-numbers \ + ${PN}-pickle \ + ${PN}-pkgutil \ + ${PN}-plistlib \ + ${PN}-pprint \ + ${PN}-profile \ + ${PN}-pydoc \ + ${PN}-re \ + ${PN}-readline \ + ${PN}-resource \ + ${PN}-robotparser \ + ${PN}-shell \ + ${PN}-smtpd \ + ${PN}-sqlite3 \ + ${PN}-sqlite3-tests \ + ${PN}-stringold \ + ${PN}-subprocess \ + ${PN}-syslog \ + ${PN}-terminal \ + ${PN}-tests \ + ${PN}-textutils \ + ${PN}-threading \ + ${PN}-tkinter \ + ${PN}-unittest \ + ${PN}-unixadmin \ + ${PN}-xml \ + ${PN}-xmlrpc \ + ${PN}-zlib \ +" + +PACKAGES=" \ + ${PN}-dbg \ + ${PN}-2to3 \ + ${PN}-argparse \ + ${PN}-audio \ + ${PN}-bsddb \ + ${PN}-codecs \ + ${PN}-compile \ + ${PN}-compiler \ + ${PN}-compression \ + ${PN}-contextlib \ + ${PN}-core \ + ${PN}-crypt \ + ${PN}-ctypes \ + ${PN}-curses \ + ${PN}-datetime \ + ${PN}-db \ + ${PN}-debugger \ + ${PN}-dev \ + ${PN}-difflib \ + ${PN}-distutils-staticdev ${PN}-distutils \ + ${PN}-doctest \ + ${PN}-email \ + ${PN}-fcntl \ + ${PN}-gdbm \ + ${PN}-hotshot \ + ${PN}-html \ + ${PN}-idle \ + ${PN}-image \ + ${PN}-importlib \ + ${PN}-io \ + ${PN}-json \ + ${PN}-lang \ + ${PN}-logging \ + ${PN}-mailbox \ + ${PN}-math \ + ${PN}-mime \ + ${PN}-mmap \ + ${PN}-multiprocessing \ + ${PN}-netclient \ + ${PN}-netserver \ + ${PN}-numbers \ + ${PN}-pickle \ + ${PN}-pkgutil \ + ${PN}-plistlib \ + ${PN}-pprint \ + ${PN}-profile \ + ${PN}-pydoc \ + ${PN}-re \ + ${PN}-readline \ + ${PN}-resource \ + ${PN}-robotparser \ + ${PN}-shell \ + ${PN}-smtpd \ + ${PN}-sqlite3 \ + ${PN}-sqlite3-tests \ + ${PN}-stringold \ + ${PN}-subprocess \ + ${PN}-syslog \ + ${PN}-terminal \ + ${PN}-tests \ + ${PN}-textutils \ + ${PN}-threading \ + ${PN}-tkinter \ + ${PN}-unittest \ + ${PN}-unixadmin \ + ${PN}-xml \ + ${PN}-xmlrpc \ + ${PN}-zlib \ + ${PN}-modules\ +" SUMMARY_${PN}-2to3="Python automated Python 2 to 3 code translator" RDEPENDS_${PN}-2to3="${PN}-core" -FILES_${PN}-2to3="${bindir}/2to3 ${libdir}/python2.7/lib2to3 " +FILES_${PN}-2to3=" \ + ${bindir}/2to3 \ + ${libdir}/python2.7/lib2to3 \ +" SUMMARY_${PN}-argparse="Python command line argument parser" RDEPENDS_${PN}-argparse="${PN}-core ${PN}-codecs ${PN}-textutils" -FILES_${PN}-argparse="${libdir}/python2.7/argparse.* " +FILES_${PN}-argparse=" \ + ${libdir}/python2.7/argparse.* \ +" SUMMARY_${PN}-audio="Python Audio Handling" RDEPENDS_${PN}-audio="${PN}-core" -FILES_${PN}-audio="${libdir}/python2.7/wave.* ${libdir}/python2.7/chunk.* ${libdir}/python2.7/sndhdr.* ${libdir}/python2.7/lib-dynload/ossaudiodev.so ${libdir}/python2.7/lib-dynload/audioop.so ${libdir}/python2.7/audiodev.* ${libdir}/python2.7/sunaudio.* ${libdir}/python2.7/sunau.* ${libdir}/python2.7/toaiff.* " +FILES_${PN}-audio=" \ + ${libdir}/python2.7/wave.* \ + ${libdir}/python2.7/chunk.* \ + ${libdir}/python2.7/sndhdr.* \ + ${libdir}/python2.7/lib-dynload/ossaudiodev.so \ + ${libdir}/python2.7/lib-dynload/audioop.so \ + ${libdir}/python2.7/audiodev.* \ + ${libdir}/python2.7/sunaudio.* \ + ${libdir}/python2.7/sunau.* \ + ${libdir}/python2.7/toaiff.* \ +" SUMMARY_${PN}-bsddb="Python bindings for the Berkeley Database" RDEPENDS_${PN}-bsddb="${PN}-core" -FILES_${PN}-bsddb="${libdir}/python2.7/bsddb ${libdir}/python2.7/lib-dynload/_bsddb.so " +FILES_${PN}-bsddb=" \ + ${libdir}/python2.7/bsddb \ + ${libdir}/python2.7/lib-dynload/_bsddb.so \ +" SUMMARY_${PN}-codecs="Python codecs, encodings & i18n support" RDEPENDS_${PN}-codecs="${PN}-core ${PN}-lang" -FILES_${PN}-codecs="${libdir}/python2.7/codecs.* ${libdir}/python2.7/encodings ${libdir}/python2.7/gettext.* ${libdir}/python2.7/locale.* ${libdir}/python2.7/lib-dynload/_locale.so ${libdir}/python2.7/lib-dynload/_codecs* ${libdir}/python2.7/lib-dynload/_multibytecodec.so ${libdir}/python2.7/lib-dynload/unicodedata.so ${libdir}/python2.7/stringprep.* ${libdir}/python2.7/xdrlib.* " +FILES_${PN}-codecs=" \ + ${libdir}/python2.7/codecs.* \ + ${libdir}/python2.7/encodings \ + ${libdir}/python2.7/gettext.* \ + ${libdir}/python2.7/locale.* \ + ${libdir}/python2.7/lib-dynload/_locale.so \ + ${libdir}/python2.7/lib-dynload/_codecs* \ + ${libdir}/python2.7/lib-dynload/_multibytecodec.so \ + ${libdir}/python2.7/lib-dynload/unicodedata.so \ + ${libdir}/python2.7/stringprep.* \ + ${libdir}/python2.7/xdrlib.* \ +" SUMMARY_${PN}-compile="Python bytecode compilation support" RDEPENDS_${PN}-compile="${PN}-core" -FILES_${PN}-compile="${libdir}/python2.7/py_compile.* ${libdir}/python2.7/compileall.* " +FILES_${PN}-compile=" \ + ${libdir}/python2.7/py_compile.* \ + ${libdir}/python2.7/compileall.* \ +" SUMMARY_${PN}-compiler="Python compiler support" RDEPENDS_${PN}-compiler="${PN}-core" -FILES_${PN}-compiler="${libdir}/python2.7/compiler " +FILES_${PN}-compiler=" \ + ${libdir}/python2.7/compiler \ +" SUMMARY_${PN}-compression="Python high-level compression support" RDEPENDS_${PN}-compression="${PN}-core ${PN}-zlib" -FILES_${PN}-compression="${libdir}/python2.7/gzip.* ${libdir}/python2.7/zipfile.* ${libdir}/python2.7/tarfile.* ${libdir}/python2.7/lib-dynload/bz2.so " +FILES_${PN}-compression=" \ + ${libdir}/python2.7/gzip.* \ + ${libdir}/python2.7/zipfile.* \ + ${libdir}/python2.7/tarfile.* \ + ${libdir}/python2.7/lib-dynload/bz2.so \ +" SUMMARY_${PN}-contextlib="Python utilities for with-statementcontexts." RDEPENDS_${PN}-contextlib="${PN}-core" -FILES_${PN}-contextlib="${libdir}/python${PYTHON_MAJMIN}/contextlib.* " +FILES_${PN}-contextlib=" \ + ${libdir}/python${PYTHON_MAJMIN}/contextlib.* \ +" SUMMARY_${PN}-core="Python interpreter and core modules" RDEPENDS_${PN}-core="${PN}-lang ${PN}-re" -FILES_${PN}-core="${libdir}/python2.7/__future__.* ${libdir}/python2.7/_abcoll.* ${libdir}/python2.7/abc.* ${libdir}/python2.7/ast.* ${libdir}/python2.7/copy.* ${libdir}/python2.7/copy_reg.* ${libdir}/python2.7/ConfigParser.* ${libdir}/python2.7/genericpath.* ${libdir}/python2.7/getopt.* ${libdir}/python2.7/linecache.* ${libdir}/python2.7/new.* ${libdir}/python2.7/os.* ${libdir}/python2.7/posixpath.* ${libdir}/python2.7/struct.* ${libdir}/python2.7/warnings.* ${libdir}/python2.7/site.* ${libdir}/python2.7/stat.* ${libdir}/python2.7/UserDict.* ${libdir}/python2.7/UserList.* ${libdir}/python2.7/UserString.* ${libdir}/python2.7/lib-dynload/binascii.so ${libdir}/python2.7/lib-dynload/_struct.so ${libdir}/python2.7/lib-dynload/time.so ${libdir}/python2.7/lib-dynload/xreadlines.so ${libdir}/python2.7/types.* ${libdir}/python2.7/platform.* ${bindir}/python* ${libdir}/python2.7/_weakrefset.* ${libdir}/python2.7/sysconfig.* ${libdir}/python2.7/_sysconfigdata.* ${includedir}/python${PYTHON_MAJMIN}/pyconfig*.h ${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py " +FILES_${PN}-core=" \ + ${libdir}/python2.7/__future__.* \ + ${libdir}/python2.7/_abcoll.* \ + ${libdir}/python2.7/abc.* \ + ${libdir}/python2.7/ast.* \ + ${libdir}/python2.7/copy.* \ + ${libdir}/python2.7/copy_reg.* \ + ${libdir}/python2.7/ConfigParser.* \ + ${libdir}/python2.7/genericpath.* \ + ${libdir}/python2.7/getopt.* \ + ${libdir}/python2.7/linecache.* \ + ${libdir}/python2.7/new.* \ + ${libdir}/python2.7/os.* \ + ${libdir}/python2.7/posixpath.* \ + ${libdir}/python2.7/struct.* \ + ${libdir}/python2.7/warnings.* \ + ${libdir}/python2.7/site.* \ + ${libdir}/python2.7/stat.* \ + ${libdir}/python2.7/UserDict.* \ + ${libdir}/python2.7/UserList.* \ + ${libdir}/python2.7/UserString.* \ + ${libdir}/python2.7/lib-dynload/binascii.so \ + ${libdir}/python2.7/lib-dynload/_struct.so \ + ${libdir}/python2.7/lib-dynload/time.so \ + ${libdir}/python2.7/lib-dynload/xreadlines.so \ + ${libdir}/python2.7/types.* \ + ${libdir}/python2.7/platform.* \ + ${bindir}/python* \ + ${libdir}/python2.7/_weakrefset.* \ + ${libdir}/python2.7/sysconfig.* \ + ${libdir}/python2.7/_sysconfigdata.* \ + ${includedir}/python${PYTHON_MAJMIN}/pyconfig*.h \ + ${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py \ +" SUMMARY_${PN}-crypt="Python basic cryptographic and hashing support" RDEPENDS_${PN}-crypt="${PN}-core" -FILES_${PN}-crypt="${libdir}/python2.7/hashlib.* ${libdir}/python2.7/md5.* ${libdir}/python2.7/sha.* ${libdir}/python2.7/lib-dynload/crypt.so ${libdir}/python2.7/lib-dynload/_hashlib.so ${libdir}/python2.7/lib-dynload/_sha256.so ${libdir}/python2.7/lib-dynload/_sha512.so " +FILES_${PN}-crypt=" \ + ${libdir}/python2.7/hashlib.* \ + ${libdir}/python2.7/md5.* \ + ${libdir}/python2.7/sha.* \ + ${libdir}/python2.7/lib-dynload/crypt.so \ + ${libdir}/python2.7/lib-dynload/_hashlib.so \ + ${libdir}/python2.7/lib-dynload/_sha256.so \ + ${libdir}/python2.7/lib-dynload/_sha512.so \ +" SUMMARY_${PN}-ctypes="Python C types support" RDEPENDS_${PN}-ctypes="${PN}-core" -FILES_${PN}-ctypes="${libdir}/python2.7/ctypes ${libdir}/python2.7/lib-dynload/_ctypes.so ${libdir}/python2.7/lib-dynload/_ctypes_test.so " +FILES_${PN}-ctypes=" \ + ${libdir}/python2.7/ctypes \ + ${libdir}/python2.7/lib-dynload/_ctypes.so \ + ${libdir}/python2.7/lib-dynload/_ctypes_test.so \ +" SUMMARY_${PN}-curses="Python curses support" RDEPENDS_${PN}-curses="${PN}-core" -FILES_${PN}-curses="${libdir}/python2.7/curses ${libdir}/python2.7/lib-dynload/_curses.so ${libdir}/python2.7/lib-dynload/_curses_panel.so " +FILES_${PN}-curses=" \ + ${libdir}/python2.7/curses \ + ${libdir}/python2.7/lib-dynload/_curses.so \ + ${libdir}/python2.7/lib-dynload/_curses_panel.so \ +" SUMMARY_${PN}-datetime="Python calendar and time support" RDEPENDS_${PN}-datetime="${PN}-core ${PN}-codecs" -FILES_${PN}-datetime="${libdir}/python2.7/_strptime.* ${libdir}/python2.7/calendar.* ${libdir}/python2.7/lib-dynload/datetime.so " +FILES_${PN}-datetime=" \ + ${libdir}/python2.7/_strptime.* \ + ${libdir}/python2.7/calendar.* \ + ${libdir}/python2.7/lib-dynload/datetime.so \ +" SUMMARY_${PN}-db="Python file-based database support" RDEPENDS_${PN}-db="${PN}-core" -FILES_${PN}-db="${libdir}/python2.7/anydbm.* ${libdir}/python2.7/dumbdbm.* ${libdir}/python2.7/whichdb.* " +FILES_${PN}-db=" \ + ${libdir}/python2.7/anydbm.* \ + ${libdir}/python2.7/dumbdbm.* \ + ${libdir}/python2.7/whichdb.* \ +" SUMMARY_${PN}-debugger="Python debugger" RDEPENDS_${PN}-debugger="${PN}-core ${PN}-io ${PN}-lang ${PN}-re ${PN}-stringold ${PN}-shell ${PN}-pprint" -FILES_${PN}-debugger="${libdir}/python2.7/bdb.* ${libdir}/python2.7/pdb.* " +FILES_${PN}-debugger=" \ + ${libdir}/python2.7/bdb.* \ + ${libdir}/python2.7/pdb.* \ +" SUMMARY_${PN}-dev="Python development package" RDEPENDS_${PN}-dev="${PN}-core" -FILES_${PN}-dev="${includedir} ${libdir}/lib*${SOLIBSDEV} ${libdir}/*.la ${libdir}/*.a ${libdir}/*.o ${libdir}/pkgconfig ${base_libdir}/*.a ${base_libdir}/*.o ${datadir}/aclocal ${datadir}/pkgconfig ${libdir}/python2.7/config/Makefile " +FILES_${PN}-dev=" \ + ${includedir} \ + ${libdir}/lib*${SOLIBSDEV} \ + ${libdir}/*.la \ + ${libdir}/*.a \ + ${libdir}/*.o \ + ${libdir}/pkgconfig \ + ${base_libdir}/*.a \ + ${base_libdir}/*.o \ + ${datadir}/aclocal \ + ${datadir}/pkgconfig \ + ${libdir}/python2.7/config/Makefile \ +" SUMMARY_${PN}-difflib="Python helpers for computing deltas between objects" RDEPENDS_${PN}-difflib="${PN}-lang ${PN}-re" -FILES_${PN}-difflib="${libdir}/python2.7/difflib.* " +FILES_${PN}-difflib=" \ + ${libdir}/python2.7/difflib.* \ +" SUMMARY_${PN}-distutils="Python Distribution Utilities" RDEPENDS_${PN}-distutils="${PN}-core ${PN}-email" -FILES_${PN}-distutils="${libdir}/python2.7/config ${libdir}/python2.7/distutils " +FILES_${PN}-distutils=" \ + ${libdir}/python2.7/config \ + ${libdir}/python2.7/distutils \ +" SUMMARY_${PN}-distutils-staticdev="Python distribution utilities (static libraries)" RDEPENDS_${PN}-distutils-staticdev="${PN}-distutils" -FILES_${PN}-distutils-staticdev="${libdir}/python2.7/config/lib*.a " +FILES_${PN}-distutils-staticdev=" \ + ${libdir}/python2.7/config/lib*.a \ +" SUMMARY_${PN}-doctest="Python framework for running examples in docstrings" RDEPENDS_${PN}-doctest="${PN}-core ${PN}-lang ${PN}-io ${PN}-re ${PN}-unittest ${PN}-debugger ${PN}-difflib" -FILES_${PN}-doctest="${libdir}/python2.7/doctest.* " +FILES_${PN}-doctest=" \ + ${libdir}/python2.7/doctest.* \ +" SUMMARY_${PN}-email="Python email support" RDEPENDS_${PN}-email="${PN}-core ${PN}-io ${PN}-re ${PN}-mime ${PN}-audio ${PN}-image ${PN}-netclient" -FILES_${PN}-email="${libdir}/python2.7/imaplib.* ${libdir}/python2.7/email " +FILES_${PN}-email=" \ + ${libdir}/python2.7/imaplib.* \ + ${libdir}/python2.7/email \ +" SUMMARY_${PN}-fcntl="Python's fcntl interface" RDEPENDS_${PN}-fcntl="${PN}-core" -FILES_${PN}-fcntl="${libdir}/python2.7/lib-dynload/fcntl.so " +FILES_${PN}-fcntl=" \ + ${libdir}/python2.7/lib-dynload/fcntl.so \ +" SUMMARY_${PN}-gdbm="Python GNU database support" RDEPENDS_${PN}-gdbm="${PN}-core" -FILES_${PN}-gdbm="${libdir}/python2.7/lib-dynload/gdbm.so " +FILES_${PN}-gdbm=" \ + ${libdir}/python2.7/lib-dynload/gdbm.so \ +" SUMMARY_${PN}-hotshot="Python hotshot performance profiler" RDEPENDS_${PN}-hotshot="${PN}-core" -FILES_${PN}-hotshot="${libdir}/python2.7/hotshot ${libdir}/python2.7/lib-dynload/_hotshot.so " +FILES_${PN}-hotshot=" \ + ${libdir}/python2.7/hotshot \ + ${libdir}/python2.7/lib-dynload/_hotshot.so \ +" SUMMARY_${PN}-html="Python HTML processing support" RDEPENDS_${PN}-html="${PN}-core" -FILES_${PN}-html="${libdir}/python2.7/formatter.* ${libdir}/python2.7/htmlentitydefs.* ${libdir}/python2.7/htmllib.* ${libdir}/python2.7/markupbase.* ${libdir}/python2.7/sgmllib.* ${libdir}/python2.7/HTMLParser.* " +FILES_${PN}-html=" \ + ${libdir}/python2.7/formatter.* \ + ${libdir}/python2.7/htmlentitydefs.* \ + ${libdir}/python2.7/htmllib.* \ + ${libdir}/python2.7/markupbase.* \ + ${libdir}/python2.7/sgmllib.* \ + ${libdir}/python2.7/HTMLParser.* \ +" SUMMARY_${PN}-idle="Python Integrated Development Environment" RDEPENDS_${PN}-idle="${PN}-core ${PN}-tkinter" -FILES_${PN}-idle="${bindir}/idle ${libdir}/python2.7/idlelib " +FILES_${PN}-idle=" \ + ${bindir}/idle \ + ${libdir}/python2.7/idlelib \ +" SUMMARY_${PN}-image="Python graphical image handling" RDEPENDS_${PN}-image="${PN}-core" -FILES_${PN}-image="${libdir}/python2.7/colorsys.* ${libdir}/python2.7/imghdr.* ${libdir}/python2.7/lib-dynload/imageop.so ${libdir}/python2.7/lib-dynload/rgbimg.so " +FILES_${PN}-image=" \ + ${libdir}/python2.7/colorsys.* \ + ${libdir}/python2.7/imghdr.* \ + ${libdir}/python2.7/lib-dynload/imageop.so \ + ${libdir}/python2.7/lib-dynload/rgbimg.so \ +" SUMMARY_${PN}-importlib="Python import implementation library" RDEPENDS_${PN}-importlib="${PN}-core" -FILES_${PN}-importlib="${libdir}/python2.7/importlib " +FILES_${PN}-importlib=" \ + ${libdir}/python2.7/importlib \ +" SUMMARY_${PN}-io="Python low-level I/O" RDEPENDS_${PN}-io="${PN}-core ${PN}-math ${PN}-textutils ${PN}-netclient ${PN}-contextlib" -FILES_${PN}-io="${libdir}/python2.7/lib-dynload/_socket.so ${libdir}/python2.7/lib-dynload/_io.so ${libdir}/python2.7/lib-dynload/_ssl.so ${libdir}/python2.7/lib-dynload/select.so ${libdir}/python2.7/lib-dynload/termios.so ${libdir}/python2.7/lib-dynload/cStringIO.so ${libdir}/python2.7/pipes.* ${libdir}/python2.7/socket.* ${libdir}/python2.7/ssl.* ${libdir}/python2.7/tempfile.* ${libdir}/python2.7/StringIO.* ${libdir}/python2.7/io.* ${libdir}/python2.7/_pyio.* " +FILES_${PN}-io=" \ + ${libdir}/python2.7/lib-dynload/_socket.so \ + ${libdir}/python2.7/lib-dynload/_io.so \ + ${libdir}/python2.7/lib-dynload/_ssl.so \ + ${libdir}/python2.7/lib-dynload/select.so \ + ${libdir}/python2.7/lib-dynload/termios.so \ + ${libdir}/python2.7/lib-dynload/cStringIO.so \ + ${libdir}/python2.7/pipes.* \ + ${libdir}/python2.7/socket.* \ + ${libdir}/python2.7/ssl.* \ + ${libdir}/python2.7/tempfile.* \ + ${libdir}/python2.7/StringIO.* \ + ${libdir}/python2.7/io.* \ + ${libdir}/python2.7/_pyio.* \ +" SUMMARY_${PN}-json="Python JSON support" RDEPENDS_${PN}-json="${PN}-core ${PN}-math ${PN}-re ${PN}-codecs" -FILES_${PN}-json="${libdir}/python2.7/json ${libdir}/python2.7/lib-dynload/_json.so " +FILES_${PN}-json=" \ + ${libdir}/python2.7/json \ + ${libdir}/python2.7/lib-dynload/_json.so \ +" SUMMARY_${PN}-lang="Python low-level language support" RDEPENDS_${PN}-lang="${PN}-core" -FILES_${PN}-lang="${libdir}/python2.7/lib-dynload/_bisect.so ${libdir}/python2.7/lib-dynload/_collections.so ${libdir}/python2.7/lib-dynload/_heapq.so ${libdir}/python2.7/lib-dynload/_weakref.so ${libdir}/python2.7/lib-dynload/_functools.so ${libdir}/python2.7/lib-dynload/array.so ${libdir}/python2.7/lib-dynload/itertools.so ${libdir}/python2.7/lib-dynload/operator.so ${libdir}/python2.7/lib-dynload/parser.so ${libdir}/python2.7/atexit.* ${libdir}/python2.7/bisect.* ${libdir}/python2.7/code.* ${libdir}/python2.7/codeop.* ${libdir}/python2.7/collections.* ${libdir}/python2.7/dis.* ${libdir}/python2.7/functools.* ${libdir}/python2.7/heapq.* ${libdir}/python2.7/inspect.* ${libdir}/python2.7/keyword.* ${libdir}/python2.7/opcode.* ${libdir}/python2.7/symbol.* ${libdir}/python2.7/repr.* ${libdir}/python2.7/token.* ${libdir}/python2.7/tokenize.* ${libdir}/python2.7/traceback.* ${libdir}/python2.7/weakref.* " +FILES_${PN}-lang=" \ + ${libdir}/python2.7/lib-dynload/_bisect.so \ + ${libdir}/python2.7/lib-dynload/_collections.so \ + ${libdir}/python2.7/lib-dynload/_heapq.so \ + ${libdir}/python2.7/lib-dynload/_weakref.so \ + ${libdir}/python2.7/lib-dynload/_functools.so \ + ${libdir}/python2.7/lib-dynload/array.so \ + ${libdir}/python2.7/lib-dynload/itertools.so \ + ${libdir}/python2.7/lib-dynload/operator.so \ + ${libdir}/python2.7/lib-dynload/parser.so \ + ${libdir}/python2.7/atexit.* \ + ${libdir}/python2.7/bisect.* \ + ${libdir}/python2.7/code.* \ + ${libdir}/python2.7/codeop.* \ + ${libdir}/python2.7/collections.* \ + ${libdir}/python2.7/dis.* \ + ${libdir}/python2.7/functools.* \ + ${libdir}/python2.7/heapq.* \ + ${libdir}/python2.7/inspect.* \ + ${libdir}/python2.7/keyword.* \ + ${libdir}/python2.7/opcode.* \ + ${libdir}/python2.7/symbol.* \ + ${libdir}/python2.7/repr.* \ + ${libdir}/python2.7/token.* \ + ${libdir}/python2.7/tokenize.* \ + ${libdir}/python2.7/traceback.* \ + ${libdir}/python2.7/weakref.* \ +" SUMMARY_${PN}-logging="Python logging support" RDEPENDS_${PN}-logging="${PN}-core ${PN}-io ${PN}-lang ${PN}-pickle ${PN}-stringold" -FILES_${PN}-logging="${libdir}/python2.7/logging " +FILES_${PN}-logging=" \ + ${libdir}/python2.7/logging \ +" SUMMARY_${PN}-mailbox="Python mailbox format support" RDEPENDS_${PN}-mailbox="${PN}-core ${PN}-mime" -FILES_${PN}-mailbox="${libdir}/python2.7/mailbox.* " +FILES_${PN}-mailbox=" \ + ${libdir}/python2.7/mailbox.* \ +" SUMMARY_${PN}-math="Python math support" RDEPENDS_${PN}-math="${PN}-core ${PN}-crypt" -FILES_${PN}-math="${libdir}/python2.7/lib-dynload/cmath.so ${libdir}/python2.7/lib-dynload/math.so ${libdir}/python2.7/lib-dynload/_random.so ${libdir}/python2.7/random.* ${libdir}/python2.7/sets.* " +FILES_${PN}-math=" \ + ${libdir}/python2.7/lib-dynload/cmath.so \ + ${libdir}/python2.7/lib-dynload/math.so \ + ${libdir}/python2.7/lib-dynload/_random.so \ + ${libdir}/python2.7/random.* \ + ${libdir}/python2.7/sets.* \ +" SUMMARY_${PN}-mime="Python MIME handling APIs" RDEPENDS_${PN}-mime="${PN}-core ${PN}-io" -FILES_${PN}-mime="${libdir}/python2.7/mimetools.* ${libdir}/python2.7/uu.* ${libdir}/python2.7/quopri.* ${libdir}/python2.7/rfc822.* ${libdir}/python2.7/MimeWriter.* " +FILES_${PN}-mime=" \ + ${libdir}/python2.7/mimetools.* \ + ${libdir}/python2.7/uu.* \ + ${libdir}/python2.7/quopri.* \ + ${libdir}/python2.7/rfc822.* \ + ${libdir}/python2.7/MimeWriter.* \ +" SUMMARY_${PN}-mmap="Python memory-mapped file support" RDEPENDS_${PN}-mmap="${PN}-core ${PN}-io" -FILES_${PN}-mmap="${libdir}/python2.7/lib-dynload/mmap.so " +FILES_${PN}-mmap=" \ + ${libdir}/python2.7/lib-dynload/mmap.so \ +" SUMMARY_${PN}-multiprocessing="Python multiprocessing support" RDEPENDS_${PN}-multiprocessing="${PN}-core ${PN}-io ${PN}-lang ${PN}-pickle ${PN}-threading ${PN}-ctypes ${PN}-mmap" -FILES_${PN}-multiprocessing="${libdir}/python2.7/lib-dynload/_multiprocessing.so ${libdir}/python2.7/multiprocessing " +FILES_${PN}-multiprocessing=" \ + ${libdir}/python2.7/lib-dynload/_multiprocessing.so \ + ${libdir}/python2.7/multiprocessing \ +" SUMMARY_${PN}-netclient="Python Internet Protocol clients" RDEPENDS_${PN}-netclient="${PN}-core ${PN}-crypt ${PN}-datetime ${PN}-io ${PN}-lang ${PN}-logging ${PN}-mime" -FILES_${PN}-netclient="${libdir}/python2.7/*Cookie*.* ${libdir}/python2.7/base64.* ${libdir}/python2.7/cookielib.* ${libdir}/python2.7/ftplib.* ${libdir}/python2.7/gopherlib.* ${libdir}/python2.7/hmac.* ${libdir}/python2.7/httplib.* ${libdir}/python2.7/mimetypes.* ${libdir}/python2.7/nntplib.* ${libdir}/python2.7/poplib.* ${libdir}/python2.7/smtplib.* ${libdir}/python2.7/telnetlib.* ${libdir}/python2.7/urllib.* ${libdir}/python2.7/urllib2.* ${libdir}/python2.7/urlparse.* ${libdir}/python2.7/uuid.* ${libdir}/python2.7/rfc822.* ${libdir}/python2.7/mimetools.* " +FILES_${PN}-netclient=" \ + ${libdir}/python2.7/*Cookie*.* \ + ${libdir}/python2.7/base64.* \ + ${libdir}/python2.7/cookielib.* \ + ${libdir}/python2.7/ftplib.* \ + ${libdir}/python2.7/gopherlib.* \ + ${libdir}/python2.7/hmac.* \ + ${libdir}/python2.7/httplib.* \ + ${libdir}/python2.7/mimetypes.* \ + ${libdir}/python2.7/nntplib.* \ + ${libdir}/python2.7/poplib.* \ + ${libdir}/python2.7/smtplib.* \ + ${libdir}/python2.7/telnetlib.* \ + ${libdir}/python2.7/urllib.* \ + ${libdir}/python2.7/urllib2.* \ + ${libdir}/python2.7/urlparse.* \ + ${libdir}/python2.7/uuid.* \ + ${libdir}/python2.7/rfc822.* \ + ${libdir}/python2.7/mimetools.* \ +" SUMMARY_${PN}-netserver="Python Internet Protocol servers" RDEPENDS_${PN}-netserver="${PN}-core ${PN}-netclient ${PN}-shell ${PN}-threading" -FILES_${PN}-netserver="${libdir}/python2.7/cgi.* ${libdir}/python2.7/*HTTPServer.* ${libdir}/python2.7/SocketServer.* " +FILES_${PN}-netserver=" \ + ${libdir}/python2.7/cgi.* \ + ${libdir}/python2.7/*HTTPServer.* \ + ${libdir}/python2.7/SocketServer.* \ +" SUMMARY_${PN}-numbers="Python number APIs" RDEPENDS_${PN}-numbers="${PN}-core ${PN}-lang ${PN}-re" -FILES_${PN}-numbers="${libdir}/python2.7/decimal.* ${libdir}/python2.7/fractions.* ${libdir}/python2.7/numbers.* " +FILES_${PN}-numbers=" \ + ${libdir}/python2.7/decimal.* \ + ${libdir}/python2.7/fractions.* \ + ${libdir}/python2.7/numbers.* \ +" SUMMARY_${PN}-pickle="Python serialisation/persistence support" RDEPENDS_${PN}-pickle="${PN}-core ${PN}-codecs ${PN}-io ${PN}-re" -FILES_${PN}-pickle="${libdir}/python2.7/pickle.* ${libdir}/python2.7/shelve.* ${libdir}/python2.7/lib-dynload/cPickle.so ${libdir}/python2.7/pickletools.* " +FILES_${PN}-pickle=" \ + ${libdir}/python2.7/pickle.* \ + ${libdir}/python2.7/shelve.* \ + ${libdir}/python2.7/lib-dynload/cPickle.so \ + ${libdir}/python2.7/pickletools.* \ +" SUMMARY_${PN}-pkgutil="Python package extension utility support" RDEPENDS_${PN}-pkgutil="${PN}-core" -FILES_${PN}-pkgutil="${libdir}/python2.7/pkgutil.* " +FILES_${PN}-pkgutil=" \ + ${libdir}/python2.7/pkgutil.* \ +" SUMMARY_${PN}-plistlib="Generate and parse Mac OS X .plist files" RDEPENDS_${PN}-plistlib="${PN}-core ${PN}-datetime ${PN}-io" -FILES_${PN}-plistlib="${libdir}/python2.7/plistlib.* " +FILES_${PN}-plistlib=" \ + ${libdir}/python2.7/plistlib.* \ +" SUMMARY_${PN}-pprint="Python pretty-print support" RDEPENDS_${PN}-pprint="${PN}-core ${PN}-io" -FILES_${PN}-pprint="${libdir}/python2.7/pprint.* " +FILES_${PN}-pprint=" \ + ${libdir}/python2.7/pprint.* \ +" SUMMARY_${PN}-profile="Python basic performance profiling support" RDEPENDS_${PN}-profile="${PN}-core ${PN}-textutils" -FILES_${PN}-profile="${libdir}/python2.7/profile.* ${libdir}/python2.7/pstats.* ${libdir}/python2.7/cProfile.* ${libdir}/python2.7/lib-dynload/_lsprof.so " +FILES_${PN}-profile=" \ + ${libdir}/python2.7/profile.* \ + ${libdir}/python2.7/pstats.* \ + ${libdir}/python2.7/cProfile.* \ + ${libdir}/python2.7/lib-dynload/_lsprof.so \ +" SUMMARY_${PN}-pydoc="Python interactive help support" RDEPENDS_${PN}-pydoc="${PN}-core ${PN}-lang ${PN}-stringold ${PN}-re" -FILES_${PN}-pydoc="${bindir}/pydoc ${libdir}/python2.7/pydoc.* ${libdir}/python2.7/pydoc_data " +FILES_${PN}-pydoc=" \ + ${bindir}/pydoc \ + ${libdir}/python2.7/pydoc.* \ + ${libdir}/python2.7/pydoc_data \ +" SUMMARY_${PN}-re="Python Regular Expression APIs" RDEPENDS_${PN}-re="${PN}-core" -FILES_${PN}-re="${libdir}/python2.7/re.* ${libdir}/python2.7/sre.* ${libdir}/python2.7/sre_compile.* ${libdir}/python2.7/sre_constants* ${libdir}/python2.7/sre_parse.* " +FILES_${PN}-re=" \ + ${libdir}/python2.7/re.* \ + ${libdir}/python2.7/sre.* \ + ${libdir}/python2.7/sre_compile.* \ + ${libdir}/python2.7/sre_constants* \ + ${libdir}/python2.7/sre_parse.* \ +" SUMMARY_${PN}-readline="Python readline support" RDEPENDS_${PN}-readline="${PN}-core" -FILES_${PN}-readline="${libdir}/python2.7/lib-dynload/readline.so ${libdir}/python2.7/rlcompleter.* " +FILES_${PN}-readline=" \ + ${libdir}/python2.7/lib-dynload/readline.so \ + ${libdir}/python2.7/rlcompleter.* \ +" SUMMARY_${PN}-resource="Python resource control interface" RDEPENDS_${PN}-resource="${PN}-core" -FILES_${PN}-resource="${libdir}/python2.7/lib-dynload/resource.so " +FILES_${PN}-resource=" \ + ${libdir}/python2.7/lib-dynload/resource.so \ +" SUMMARY_${PN}-robotparser="Python robots.txt parser" RDEPENDS_${PN}-robotparser="${PN}-core ${PN}-netclient" -FILES_${PN}-robotparser="${libdir}/python2.7/robotparser.* " +FILES_${PN}-robotparser=" \ + ${libdir}/python2.7/robotparser.* \ +" SUMMARY_${PN}-shell="Python shell-like functionality" RDEPENDS_${PN}-shell="${PN}-core ${PN}-re" -FILES_${PN}-shell="${libdir}/python2.7/cmd.* ${libdir}/python2.7/commands.* ${libdir}/python2.7/dircache.* ${libdir}/python2.7/fnmatch.* ${libdir}/python2.7/glob.* ${libdir}/python2.7/popen2.* ${libdir}/python2.7/shlex.* ${libdir}/python2.7/shutil.* " +FILES_${PN}-shell=" \ + ${libdir}/python2.7/cmd.* \ + ${libdir}/python2.7/commands.* \ + ${libdir}/python2.7/dircache.* \ + ${libdir}/python2.7/fnmatch.* \ + ${libdir}/python2.7/glob.* \ + ${libdir}/python2.7/popen2.* \ + ${libdir}/python2.7/shlex.* \ + ${libdir}/python2.7/shutil.* \ +" SUMMARY_${PN}-smtpd="Python Simple Mail Transport Daemon" RDEPENDS_${PN}-smtpd="${PN}-core ${PN}-netserver ${PN}-email ${PN}-mime" -FILES_${PN}-smtpd="${bindir}/smtpd.* ${libdir}/python2.7/smtpd.* " +FILES_${PN}-smtpd=" \ + ${bindir}/smtpd.* \ + ${libdir}/python2.7/smtpd.* \ +" SUMMARY_${PN}-sqlite3="Python Sqlite3 database support" RDEPENDS_${PN}-sqlite3="${PN}-core ${PN}-datetime ${PN}-lang ${PN}-crypt ${PN}-io ${PN}-threading ${PN}-zlib" -FILES_${PN}-sqlite3="${libdir}/python2.7/lib-dynload/_sqlite3.so ${libdir}/python2.7/sqlite3/dbapi2.* ${libdir}/python2.7/sqlite3/__init__.* ${libdir}/python2.7/sqlite3/dump.* " +FILES_${PN}-sqlite3=" \ + ${libdir}/python2.7/lib-dynload/_sqlite3.so \ + ${libdir}/python2.7/sqlite3/dbapi2.* \ + ${libdir}/python2.7/sqlite3/__init__.* \ + ${libdir}/python2.7/sqlite3/dump.* \ +" SUMMARY_${PN}-sqlite3-tests="Python Sqlite3 database support tests" RDEPENDS_${PN}-sqlite3-tests="${PN}-core ${PN}-sqlite3" -FILES_${PN}-sqlite3-tests="${libdir}/python2.7/sqlite3/test " +FILES_${PN}-sqlite3-tests=" \ + ${libdir}/python2.7/sqlite3/test \ +" SUMMARY_${PN}-stringold="Python string APIs [deprecated]" RDEPENDS_${PN}-stringold="${PN}-core ${PN}-re" -FILES_${PN}-stringold="${libdir}/python2.7/lib-dynload/strop.so ${libdir}/python2.7/string.* ${libdir}/python2.7/stringold.* " +FILES_${PN}-stringold=" \ + ${libdir}/python2.7/lib-dynload/strop.so \ + ${libdir}/python2.7/string.* \ + ${libdir}/python2.7/stringold.* \ +" SUMMARY_${PN}-subprocess="Python subprocess support" RDEPENDS_${PN}-subprocess="${PN}-core ${PN}-io ${PN}-re ${PN}-fcntl ${PN}-pickle" -FILES_${PN}-subprocess="${libdir}/python2.7/subprocess.* " +FILES_${PN}-subprocess=" \ + ${libdir}/python2.7/subprocess.* \ +" SUMMARY_${PN}-syslog="Python syslog interface" RDEPENDS_${PN}-syslog="${PN}-core" -FILES_${PN}-syslog="${libdir}/python2.7/lib-dynload/syslog.so " +FILES_${PN}-syslog=" \ + ${libdir}/python2.7/lib-dynload/syslog.so \ +" SUMMARY_${PN}-terminal="Python terminal controlling support" RDEPENDS_${PN}-terminal="${PN}-core ${PN}-io" -FILES_${PN}-terminal="${libdir}/python2.7/pty.* ${libdir}/python2.7/tty.* " +FILES_${PN}-terminal=" \ + ${libdir}/python2.7/pty.* \ + ${libdir}/python2.7/tty.* \ +" SUMMARY_${PN}-tests="Python tests" RDEPENDS_${PN}-tests="${PN}-core ${PN}-modules" -FILES_${PN}-tests="${libdir}/python2.7/test " +FILES_${PN}-tests=" \ + ${libdir}/python2.7/test \ +" SUMMARY_${PN}-textutils="Python option parsing, text wrapping and CSV support" RDEPENDS_${PN}-textutils="${PN}-core ${PN}-io ${PN}-re ${PN}-stringold" -FILES_${PN}-textutils="${libdir}/python2.7/lib-dynload/_csv.so ${libdir}/python2.7/csv.* ${libdir}/python2.7/optparse.* ${libdir}/python2.7/textwrap.* " +FILES_${PN}-textutils=" \ + ${libdir}/python2.7/lib-dynload/_csv.so \ + ${libdir}/python2.7/csv.* \ + ${libdir}/python2.7/optparse.* \ + ${libdir}/python2.7/textwrap.* \ +" SUMMARY_${PN}-threading="Python threading & synchronization support" RDEPENDS_${PN}-threading="${PN}-core ${PN}-lang" -FILES_${PN}-threading="${libdir}/python2.7/_threading_local.* ${libdir}/python2.7/dummy_thread.* ${libdir}/python2.7/dummy_threading.* ${libdir}/python2.7/mutex.* ${libdir}/python2.7/threading.* ${libdir}/python2.7/Queue.* " +FILES_${PN}-threading=" \ + ${libdir}/python2.7/_threading_local.* \ + ${libdir}/python2.7/dummy_thread.* \ + ${libdir}/python2.7/dummy_threading.* \ + ${libdir}/python2.7/mutex.* \ + ${libdir}/python2.7/threading.* \ + ${libdir}/python2.7/Queue.* \ +" SUMMARY_${PN}-tkinter="Python Tcl/Tk bindings" RDEPENDS_${PN}-tkinter="${PN}-core" -FILES_${PN}-tkinter="${libdir}/python2.7/lib-dynload/_tkinter.so ${libdir}/python2.7/lib-tk " +FILES_${PN}-tkinter=" \ + ${libdir}/python2.7/lib-dynload/_tkinter.so \ + ${libdir}/python2.7/lib-tk \ +" SUMMARY_${PN}-unittest="Python unit testing framework" RDEPENDS_${PN}-unittest="${PN}-core ${PN}-stringold ${PN}-lang ${PN}-io ${PN}-difflib ${PN}-pprint ${PN}-shell" -FILES_${PN}-unittest="${libdir}/python2.7/unittest/ " +FILES_${PN}-unittest=" \ + ${libdir}/python2.7/unittest/ \ +" SUMMARY_${PN}-unixadmin="Python Unix administration support" RDEPENDS_${PN}-unixadmin="${PN}-core" -FILES_${PN}-unixadmin="${libdir}/python2.7/lib-dynload/nis.so ${libdir}/python2.7/lib-dynload/grp.so ${libdir}/python2.7/lib-dynload/pwd.so ${libdir}/python2.7/getpass.* " +FILES_${PN}-unixadmin=" \ + ${libdir}/python2.7/lib-dynload/nis.so \ + ${libdir}/python2.7/lib-dynload/grp.so \ + ${libdir}/python2.7/lib-dynload/pwd.so \ + ${libdir}/python2.7/getpass.* \ +" SUMMARY_${PN}-xml="Python basic XML support" RDEPENDS_${PN}-xml="${PN}-core ${PN}-re" -FILES_${PN}-xml="${libdir}/python2.7/lib-dynload/_elementtree.so ${libdir}/python2.7/lib-dynload/pyexpat.so ${libdir}/python2.7/xml ${libdir}/python2.7/xmllib.* " +FILES_${PN}-xml=" \ + ${libdir}/python2.7/lib-dynload/_elementtree.so \ + ${libdir}/python2.7/lib-dynload/pyexpat.so \ + ${libdir}/python2.7/xml \ + ${libdir}/python2.7/xmllib.* \ +" SUMMARY_${PN}-xmlrpc="Python XML-RPC support" RDEPENDS_${PN}-xmlrpc="${PN}-core ${PN}-xml ${PN}-netserver ${PN}-lang" -FILES_${PN}-xmlrpc="${libdir}/python2.7/xmlrpclib.* ${libdir}/python2.7/SimpleXMLRPCServer.* ${libdir}/python2.7/DocXMLRPCServer.* " +FILES_${PN}-xmlrpc=" \ + ${libdir}/python2.7/xmlrpclib.* \ + ${libdir}/python2.7/SimpleXMLRPCServer.* \ + ${libdir}/python2.7/DocXMLRPCServer.* \ +" SUMMARY_${PN}-zlib="Python zlib compression support" RDEPENDS_${PN}-zlib="${PN}-core" -FILES_${PN}-zlib="${libdir}/python2.7/lib-dynload/zlib.so " +FILES_${PN}-zlib=" \ + ${libdir}/python2.7/lib-dynload/zlib.so \ +" SUMMARY_${PN}-modules="All Python modules" -RDEPENDS_${PN}-modules="${PN}-2to3 ${PN}-argparse ${PN}-audio ${PN}-bsddb ${PN}-codecs ${PN}-compile ${PN}-compiler ${PN}-compression ${PN}-contextlib ${PN}-core ${PN}-crypt ${PN}-ctypes ${PN}-curses ${PN}-datetime ${PN}-db ${PN}-debugger ${PN}-difflib ${PN}-distutils ${PN}-doctest ${PN}-email ${PN}-fcntl ${PN}-gdbm ${PN}-hotshot ${PN}-html ${PN}-idle ${PN}-image ${PN}-importlib ${PN}-io ${PN}-json ${PN}-lang ${PN}-logging ${PN}-mailbox ${PN}-math ${PN}-mime ${PN}-mmap ${PN}-multiprocessing ${PN}-netclient ${PN}-netserver ${PN}-numbers ${PN}-pickle ${PN}-pkgutil ${PN}-plistlib ${PN}-pprint ${PN}-profile ${PN}-pydoc ${PN}-re ${PN}-readline ${PN}-resource ${PN}-robotparser ${PN}-shell ${PN}-smtpd ${PN}-sqlite3 ${PN}-sqlite3-tests ${PN}-stringold ${PN}-subprocess ${PN}-syslog ${PN}-terminal ${PN}-textutils ${PN}-threading ${PN}-tkinter ${PN}-unittest ${PN}-unixadmin ${PN}-xml ${PN}-xmlrpc ${PN}-zlib " +RDEPENDS_${PN}-modules=" \ + ${PN}-2to3 \ + ${PN}-argparse \ + ${PN}-audio \ + ${PN}-bsddb \ + ${PN}-codecs \ + ${PN}-compile \ + ${PN}-compiler \ + ${PN}-compression \ + ${PN}-contextlib \ + ${PN}-core \ + ${PN}-crypt \ + ${PN}-ctypes \ + ${PN}-curses \ + ${PN}-datetime \ + ${PN}-db \ + ${PN}-debugger \ + ${PN}-difflib \ + ${PN}-distutils \ + ${PN}-doctest \ + ${PN}-email \ + ${PN}-fcntl \ + ${PN}-gdbm \ + ${PN}-hotshot \ + ${PN}-html \ + ${PN}-idle \ + ${PN}-image \ + ${PN}-importlib \ + ${PN}-io \ + ${PN}-json \ + ${PN}-lang \ + ${PN}-logging \ + ${PN}-mailbox \ + ${PN}-math \ + ${PN}-mime \ + ${PN}-mmap \ + ${PN}-multiprocessing \ + ${PN}-netclient \ + ${PN}-netserver \ + ${PN}-numbers \ + ${PN}-pickle \ + ${PN}-pkgutil \ + ${PN}-plistlib \ + ${PN}-pprint \ + ${PN}-profile \ + ${PN}-pydoc \ + ${PN}-re \ + ${PN}-readline \ + ${PN}-resource \ + ${PN}-robotparser \ + ${PN}-shell \ + ${PN}-smtpd \ + ${PN}-sqlite3 \ + ${PN}-sqlite3-tests \ + ${PN}-stringold \ + ${PN}-subprocess \ + ${PN}-syslog \ + ${PN}-terminal \ + ${PN}-textutils \ + ${PN}-threading \ + ${PN}-tkinter \ + ${PN}-unittest \ + ${PN}-unixadmin \ + ${PN}-xml \ + ${PN}-xmlrpc \ + ${PN}-zlib \ +" ALLOW_EMPTY_${PN}-modules = "1"
meta/recipes-devtools/python/python-3.5-manifest.inc +897 -72
1,180 lines not on this page · raw message
scripts/contrib/python/generate-manifest-2.7.py +13 -11
@@ -88,9 +88,9 @@ class MakefileMaker: # generate provides line # - provideLine = 'PROVIDES+="' + provideLine = 'PROVIDES+=" \\\n' for name in sorted(self.packages): - provideLine += "%s " % name + provideLine += " %s \\\n" % name provideLine += '"' self.out( provideLine )
@@ -100,14 +100,15 @@ class MakefileMaker: # generate package line # - packageLine = 'PACKAGES="${PN}-dbg ' + packageLine = 'PACKAGES=" \\\n' + packageLine += ' ${PN}-dbg \\\n' for name in sorted(self.packages): if name.startswith("${PN}-distutils"): if name == "${PN}-distutils": - packageLine += "%s-staticdev %s " % (name, name) + packageLine += " %s-staticdev %s \\\n" % (name, name) elif name != '${PN}-dbg': - packageLine += "%s " % name - packageLine += '${PN}-modules"' + packageLine += " %s \\\n" % name + packageLine += ' ${PN}-modules\\\n"' self.out( packageLine ) self.out( "" )
@@ -125,7 +126,7 @@ class MakefileMaker: self.out( 'SUMMARY_%s="%s"' % ( name, desc ) ) self.out( 'RDEPENDS_%s="%s"' % ( name, deps ) ) - line = 'FILES_%s="' % name + line = 'FILES_%s=" \\\n' % name # # check which directories to make in the temporary directory
@@ -140,20 +141,21 @@ class MakefileMaker: # for target in files: - line += "%s " % target + line += " %s \\\n" % target line += '"' self.out( line ) self.out( "" ) self.out( 'SUMMARY_${PN}-modules="All Python modules"' ) - line = 'RDEPENDS_${PN}-modules="' + line = 'RDEPENDS_${PN}-modules=" \\\n' for name, data in sorted(self.packages.items()): if name not in ['${PN}-dev', '${PN}-distutils-staticdev'] and name not in self.excluded_pkgs: - line += "%s " % name + line += " %s \\\n" % name - self.out( "%s \"" % line ) + line += '"' + self.out( line ) self.out( 'ALLOW_EMPTY_${PN}-modules = "1"' ) def doEpilog( self ):
scripts/contrib/python/generate-manifest-3.5.py +13 -11
@@ -101,9 +101,9 @@ class MakefileMaker: # generate provides line # - provideLine = 'PROVIDES+="' + provideLine = 'PROVIDES+="\\\n' for name in sorted(self.packages): - provideLine += "%s " % name + provideLine += " %s \\\n" % name provideLine += '"' self.out( provideLine )
@@ -113,14 +113,15 @@ class MakefileMaker: # generate package line # - packageLine = 'PACKAGES="${PN}-dbg ' + packageLine = 'PACKAGES="\\\n' + packageLine += ' ${PN}-dbg \\\n' for name in sorted(self.packages): if name.startswith("${PN}-distutils"): if name == "${PN}-distutils": - packageLine += "%s-staticdev %s " % (name, name) + packageLine += "%s \\\n %s-staticdev \\\n" % (name, name) elif name != '${PN}-dbg': - packageLine += "%s " % name - packageLine += '${PN}-modules"' + packageLine += " %s \\\n" % name + packageLine += ' ${PN}-modules \\\n"' self.out( packageLine ) self.out( "" )
@@ -138,7 +139,7 @@ class MakefileMaker: self.out( 'SUMMARY_%s="%s"' % ( name, desc ) ) self.out( 'RDEPENDS_%s="%s"' % ( name, deps ) ) - line = 'FILES_%s="' % name + line = 'FILES_%s="\\\n' % name # # check which directories to make in the temporary directory
@@ -153,20 +154,21 @@ class MakefileMaker: # for target in files: - line += "%s " % target + line += " %s \\\n" % target line += '"' self.out( line ) self.out( "" ) self.out( 'SUMMARY_${PN}-modules="All Python modules"' ) - line = 'RDEPENDS_${PN}-modules="' + line = 'RDEPENDS_${PN}-modules=" \\\n' for name, data in sorted(self.packages.items()): if name not in ['${PN}-dev', '${PN}-distutils-staticdev'] and name not in self.excluded_pkgs: - line += "%s " % name + line += " %s \\\n" % name - self.out( "%s \"" % line ) + line += '"' + self.out( line ) self.out( 'ALLOW_EMPTY_${PN}-modules = "1"' ) def doEpilog( self ):
Signature · 1 line
2.14.3
PATCH v3 3/14 python-*-manifest/generators: add runpy; python3-plistlib
In reply to Tim Orling* runpy allows running modules/scripts with 'python -m foo'
* python3-setuptools RDEPENDS on plistlib (present in python2)
* pip3 RDEPENDS on _markupbase (add to python3-core)
--- .../recipes-devtools/python/python-2.7-manifest.inc | 9 +++++++++ .../recipes-devtools/python/python-3.5-manifest.inc | 21 +++++++++++++++++++++ scripts/contrib/python/generate-manifest-2.7.py | 3 +++ scripts/contrib/python/generate-manifest-3.5.py | 7 +++++++ 4 files changed, 40 insertions(+)
meta/recipes-devtools/python/python-2.7-manifest.inc +9 -0
@@ -56,6 +56,7 @@ PROVIDES+=" \ ${PN}-readline \ ${PN}-resource \ ${PN}-robotparser \ + ${PN}-runpy \ ${PN}-shell \ ${PN}-smtpd \ ${PN}-sqlite3 \
@@ -127,6 +128,7 @@ PACKAGES=" \ ${PN}-readline \ ${PN}-resource \ ${PN}-robotparser \ + ${PN}-runpy \ ${PN}-shell \ ${PN}-smtpd \ ${PN}-sqlite3 \
@@ -625,6 +627,12 @@ FILES_${PN}-robotparser=" \ ${libdir}/python2.7/robotparser.* \ " +SUMMARY_${PN}-runpy="Python script for locating/executing scripts in module namespace" +RDEPENDS_${PN}-runpy="${PN}-core ${PN}-pkgutil" +FILES_${PN}-runpy=" \ + ${libdir}/python2.7/runpy.* \ +" + SUMMARY_${PN}-shell="Python shell-like functionality" RDEPENDS_${PN}-shell="${PN}-core ${PN}-re" FILES_${PN}-shell=" \
@@ -809,6 +817,7 @@ RDEPENDS_${PN}-modules=" \ ${PN}-readline \ ${PN}-resource \ ${PN}-robotparser \ + ${PN}-runpy \ ${PN}-shell \ ${PN}-smtpd \ ${PN}-sqlite3 \
meta/recipes-devtools/python/python-3.5-manifest.inc +21 -0
@@ -46,6 +46,7 @@ PROVIDES+="\ ${PN}-numbers \ ${PN}-pickle \ ${PN}-pkgutil \ + ${PN}-plistlib \ ${PN}-pprint \ ${PN}-profile \ ${PN}-pydoc \
@@ -53,6 +54,7 @@ PROVIDES+="\ ${PN}-readline \ ${PN}-reprlib \ ${PN}-resource \ + ${PN}-runpy \ ${PN}-selectors \ ${PN}-shell \ ${PN}-signal \
@@ -117,6 +119,7 @@ ${PN}-distutils \ ${PN}-numbers \ ${PN}-pickle \ ${PN}-pkgutil \ + ${PN}-plistlib \ ${PN}-pprint \ ${PN}-profile \ ${PN}-pydoc \
@@ -124,6 +127,7 @@ ${PN}-distutils \ ${PN}-readline \ ${PN}-reprlib \ ${PN}-resource \ + ${PN}-runpy \ ${PN}-selectors \ ${PN}-shell \ ${PN}-signal \
@@ -310,6 +314,7 @@ FILES_${PN}-core="\ ${includedir}/python${PYTHON_BINABI}/pyconfig*.h \ ${libdir}/python${PYTHON_MAJMIN}/collections \ ${libdir}/python${PYTHON_MAJMIN}/_collections_abc.* \ + ${libdir}/python${PYTHON_MAJMIN}/_markupbase.* \ ${libdir}/python${PYTHON_MAJMIN}/_sitebuiltins.* \ ${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py \ "
@@ -768,6 +773,13 @@ FILES_${PN}-pkgutil="\ ${libdir}/python3.5/__pycache__/pkgutil.* \ " +SUMMARY_${PN}-plistlib="Generate and parse Mac OS X .plist files" +RDEPENDS_${PN}-plistlib="${PN}-core ${PN}-datetime ${PN}-io" +FILES_${PN}-plistlib="\ + ${libdir}/python3.5/plistlib.* \ + ${libdir}/python3.5/__pycache__/plistlib.* \ +" + SUMMARY_${PN}-pprint="Python pretty-print support" RDEPENDS_${PN}-pprint="${PN}-core ${PN}-io" FILES_${PN}-pprint="\
@@ -836,6 +848,13 @@ FILES_${PN}-resource="\ ${libdir}/python3.5/lib-dynload/__pycache__/resource.*.so \ " +SUMMARY_${PN}-runpy="Python script for locating/executing scripts in module namespace" +RDEPENDS_${PN}-runpy="${PN}-core ${PN}-pkgutil" +FILES_${PN}-runpy="\ + ${libdir}/python3.5/runpy.* \ + ${libdir}/python3.5/__pycache__/runpy.* \ +" + SUMMARY_${PN}-selectors="Python High-level I/O multiplexing" RDEPENDS_${PN}-selectors="${PN}-core" FILES_${PN}-selectors="\
@@ -1077,6 +1096,7 @@ RDEPENDS_${PN}-modules=" \ ${PN}-numbers \ ${PN}-pickle \ ${PN}-pkgutil \ + ${PN}-plistlib \ ${PN}-pprint \ ${PN}-profile \ ${PN}-pydoc \
@@ -1084,6 +1104,7 @@ RDEPENDS_${PN}-modules=" \ ${PN}-readline \ ${PN}-reprlib \ ${PN}-resource \ + ${PN}-runpy \ ${PN}-selectors \ ${PN}-shell \ ${PN}-signal \
scripts/contrib/python/generate-manifest-2.7.py +3 -0
@@ -368,6 +368,9 @@ if __name__ == "__main__": m.addPackage( "${PN}-robotparser", "Python robots.txt parser", "${PN}-core ${PN}-netclient", "robotparser.*") + m.addPackage( "${PN}-runpy", "Python script for locating/executing scripts in module namespace", "${PN}-core ${PN}-pkgutil", + "runpy.*") + m.addPackage( "${PN}-subprocess", "Python subprocess support", "${PN}-core ${PN}-io ${PN}-re ${PN}-fcntl ${PN}-pickle", "subprocess.*" )
scripts/contrib/python/generate-manifest-3.5.py +7 -0
@@ -213,6 +213,7 @@ if __name__ == "__main__": "${includedir}/python${PYTHON_BINABI}/pyconfig*.h " + "${libdir}/python${PYTHON_MAJMIN}/collections " + "${libdir}/python${PYTHON_MAJMIN}/_collections_abc.* " + + "${libdir}/python${PYTHON_MAJMIN}/_markupbase.* " + "${libdir}/python${PYTHON_MAJMIN}/_sitebuiltins.* " + "${libdir}/python${PYTHON_MAJMIN}/sitecustomize.py ")
@@ -360,6 +361,9 @@ if __name__ == "__main__": m.addPackage( "${PN}-pkgutil", "Python package extension utility support", "${PN}-core", "pkgutil.*") + m.addPackage( "${PN}-plistlib", "Generate and parse Mac OS X .plist files", "${PN}-core ${PN}-datetime ${PN}-io", + "plistlib.*") + m.addPackage( "${PN}-pprint", "Python pretty-print support", "${PN}-core ${PN}-io", "pprint.*" )
@@ -378,6 +382,9 @@ if __name__ == "__main__": m.addPackage( "${PN}-resource", "Python resource control interface", "${PN}-core", "lib-dynload/resource.*.so" ) + m.addPackage( "${PN}-runpy", "Python script for locating/executing scripts in module namespace", "${PN}-core ${PN}-pkgutil", + "runpy.*" ) + m.addPackage( "${PN}-selectors", "Python High-level I/O multiplexing", "${PN}-core", "selectors.*" )
Signature · 1 line
2.14.3
PATCH v3 4/14 python-setuptools: upgrade to 38.2.4; use pypi.bbclass; improvements
In reply to Tim Orling* Simplify python- and python3-setuptools with pypi.bbclass
* inherit setuptools rather than distutils
* Consolidate common settings in python-setuptools.inc
- use PYTHON_PN variable to eliminate duplication
- python3-setuptools had missing RDEPENDS (e.g., plistlib)
- installer no longer creates setuptools.pth, drop fixes
--- meta/recipes-devtools/python/python-setuptools.inc | 42 ++++++++++++++++++---- .../python/python-setuptools_36.5.0.bb | 38 -------------------- .../python/python-setuptools_38.2.4.bb | 9 +++++ .../python/python3-setuptools_36.5.0.bb | 38 -------------------- .../python/python3-setuptools_38.2.4.bb | 6 ++++ 5 files changed, 51 insertions(+), 82 deletions(-) delete mode 100644 meta/recipes-devtools/python/python-setuptools_36.5.0.bb create mode 100644 meta/recipes-devtools/python/python-setuptools_38.2.4.bb delete mode 100644 meta/recipes-devtools/python/python3-setuptools_36.5.0.bb create mode 100644 meta/recipes-devtools/python/python3-setuptools_38.2.4.bb
meta/recipes-devtools/python/python-setuptools.inc +36 -6
@@ -5,17 +5,47 @@ LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE;beginline=1;endline=19;md5=9a33897f1bca1160d7aad3835152e158" -SRCNAME = "setuptools" +PYPI_PACKAGE_EXT = "zip" -SRC_URI = "https://files.pythonhosted.org/packages/source/s/${SRCNAME}/${SRCNAME}-${PV}.zip" +inherit pypi -SRC_URI[md5sum] = "704f500dd55f4bd0be905444f3ba892c" -SRC_URI[sha256sum] = "ce2007c1cea3359870b80657d634253a0765b0c7dc5a988d77ba803fc86f2c64" +SRC_URI[md5sum] = "e8e05d4f8162c9341e1089c80f742f64" +SRC_URI[sha256sum] = "9c671a6291a5b1171fb9da81665eb4f9625c7dbddc613d82abdc6002a4bce896" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/setuptools" +DEPENDS += "${PYTHON_PN}" +DEPENDS_class-native += "${PYTHON_PN}-native" +DEPENDS_class-nativesdk += "nativesdk-${PYTHON_PN}" -S = "${WORKDIR}/${SRCNAME}-${PV}" +DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR} \ + --script-dir=${bindir}" + +RDEPENDS_${PN}_class-native = "\ + ${PYTHON_PN}-distutils \ + ${PYTHON_PN}-compression \ +" +RDEPENDS_${PN} = "\ + ${PYTHON_PN}-compile \ + ${PYTHON_PN}-compression \ + ${PYTHON_PN}-ctypes \ + ${PYTHON_PN}-distutils \ + ${PYTHON_PN}-email \ + ${PYTHON_PN}-html \ + ${PYTHON_PN}-importlib \ + ${PYTHON_PN}-netserver \ + ${PYTHON_PN}-numbers \ + ${PYTHON_PN}-pkgutil \ + ${PYTHON_PN}-plistlib \ + ${PYTHON_PN}-shell \ + ${PYTHON_PN}-subprocess \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-textutils \ + ${PYTHON_PN}-threading \ + ${PYTHON_PN}-unittest \ + ${PYTHON_PN}-xml \ +" do_install_prepend() { install -d ${D}${PYTHON_SITEPACKAGES_DIR} } + +BBCLASSEXTEND = "native nativesdk"
meta/recipes-devtools/python/python-setuptools_36.5.0.bb deleted +0 -38
@@ -1,38 +0,0 @@ -require python-setuptools.inc - -PROVIDES = "python-distribute" - -DEPENDS += "python" -DEPENDS_class-native += "python-native" - -inherit distutils - -DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR}" - -RDEPENDS_${PN} = "\ - python-stringold \ - python-email \ - python-shell \ - python-distutils \ - python-compression \ - python-pkgutil \ - python-plistlib \ - python-numbers \ - python-html \ - python-netserver \ - python-ctypes \ - python-subprocess \ - python-unittest \ - python-compile \ -" - -RDEPENDS_${PN}_class-native = "\ - python-distutils \ - python-compression \ -" - -RREPLACES_${PN} = "python-distribute" -RPROVIDES_${PN} = "python-distribute" -RCONFLICTS_${PN} = "python-distribute" - -BBCLASSEXTEND = "native nativesdk"
meta/recipes-devtools/python/python-setuptools_38.2.4.bb new file +9 -0
@@ -0,0 +1,9 @@ +require python-setuptools.inc + +PROVIDES = "python-distribute" + +inherit setuptools + +RREPLACES_${PN} = "python-distribute" +RPROVIDES_${PN} = "python-distribute" +RCONFLICTS_${PN} = "python-distribute"
meta/recipes-devtools/python/python3-setuptools_36.5.0.bb deleted +0 -38
@@ -1,38 +0,0 @@ -require python-setuptools.inc - -DEPENDS += "python3" -DEPENDS_class-native += "python3-native" -DEPENDS_class-nativesdk += "nativesdk-python3" - -inherit distutils3 - -DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR}" - -# The installer puts the wrong path in the setuptools.pth file. Correct it. -do_install_append() { - rm ${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth - mv ${D}${bindir}/easy_install ${D}${bindir}/easy3_install - echo "./${SRCNAME}-${PV}-py${PYTHON_BASEVERSION}.egg" > ${D}${PYTHON_SITEPACKAGES_DIR}/setuptools.pth -} - -RDEPENDS_${PN}_class-native = "\ - python3-distutils \ - python3-compression \ -" -RDEPENDS_${PN} = "\ - python3-ctypes \ - python3-distutils \ - python3-email \ - python3-importlib \ - python3-numbers \ - python3-compression \ - python3-shell \ - python3-subprocess \ - python3-textutils \ - python3-pkgutil \ - python3-threading \ - python3-misc \ - python3-unittest \ - python3-xml \ -" -BBCLASSEXTEND = "native nativesdk"
meta/recipes-devtools/python/python3-setuptools_38.2.4.bb new file +6 -0
@@ -0,0 +1,6 @@ +require python-setuptools.inc +inherit setuptools3 + +do_install_append() { + mv ${D}${bindir}/easy_install ${D}${bindir}/easy3_install +}
Signature · 1 line
2.14.3
PATCH v3 5/14 python3-pip: use pypi.bbclass
In reply to Tim Orling* Simplify recipe by using pypi.bbclass
--- meta/recipes-devtools/python/python3-pip_9.0.1.bb | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-)
meta/recipes-devtools/python/python3-pip_9.0.1.bb +3 -10
@@ -1,22 +1,15 @@ SUMMARY = "The PyPA recommended tool for installing Python packages" -sHOMEPAGEsss = "https://pypi.python.org/pypi/pip" +HOMEPAGE = "https://pypi.python.org/pypi/pip" SECTION = "devel/python" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=25fba45109565f87de20bae85bc39452" -SRCNAME = "pip" DEPENDS += "python3 python3-setuptools-native" -SRC_URI = "https://files.pythonhosted.org/packages/source/p/${SRCNAME}/${SRCNAME}-${PV}.tar.gz" - SRC_URI[md5sum] = "35f01da33009719497f01a4ba69d63c9" SRC_URI[sha256sum] = "09f243e1a7b461f654c26a725fa373211bb7ff17a9300058b205c61658ca940d" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/pip" - -S = "${WORKDIR}/${SRCNAME}-${PV}" - -inherit distutils3 +inherit pypi distutils3 DISTUTILS_INSTALL_ARGS += "--install-lib=${D}${PYTHON_SITEPACKAGES_DIR}"
@@ -33,7 +26,7 @@ do_install_append() { rm ${D}/${bindir}/pip # Installed eggs need to be passed directly to the interpreter via a pth file - echo "./${SRCNAME}-${PV}-py${PYTHON_BASEVERSION}.egg" > ${D}${PYTHON_SITEPACKAGES_DIR}/${SRCNAME}-${PV}.pth + echo "./${PYPI_PACKAGE}-${PV}-py${PYTHON_BASEVERSION}.egg" > ${D}${PYTHON_SITEPACKAGES_DIR}/${PYPI_PACKAGE}-${PV}.pth # Make sure we use /usr/bin/env python3 for PYTHSCRIPT in `grep -rIl ${bindir} ${D}${bindir}/pip3*`; do
Signature · 1 line
2.14.3
PATCH v3 6/14 python-nose: use pypi.bbclass
In reply to Tim Orling* Simplify python- and python3-nose by using pypi.bbclass
* Consolidate common content in python-nose.inc
- Avoid duplication by using PYTHON_PN variable
--- meta/recipes-devtools/python/python-nose.inc | 18 ++++++++++++++++ meta/recipes-devtools/python/python-nose_1.3.7.bb | 25 +--------------------- meta/recipes-devtools/python/python3-nose_1.3.7.bb | 24 +-------------------- 3 files changed, 20 insertions(+), 47 deletions(-) create mode 100644 meta/recipes-devtools/python/python-nose.inc
meta/recipes-devtools/python/python-nose.inc new file +18 -0
@@ -0,0 +1,18 @@ +SUMMARY = "Extends Python unittest to make testing easier" +HOMEPAGE = "http://readthedocs.org/docs/nose/" +DESCRIPTION = "nose extends the test loading and running features of unittest, \ +making it easier to write, find and run tests." +SECTION = "devel/python" +LICENSE = "LGPLv2.1" +LIC_FILES_CHKSUM = "file://lgpl.txt;md5=a6f89e2100d9b6cdffcea4f398e37343" + +SRC_URI[md5sum] = "4d3ad0ff07b61373d2cefc89c5d0b20b" +SRC_URI[sha256sum] = "f1bffef9cbc82628f6e7d7b40d7e255aefaa1adb6a1b1d26c69a8b79e6208a98" + +inherit pypi + +RDEPENDS_${PN} = "\ + ${PYTHON_PN}-unittest \ + " + +BBCLASSEXTEND = "native nativesdk"
meta/recipes-devtools/python/python-nose_1.3.7.bb +1 -24
@@ -1,25 +1,2 @@ -SUMMARY = "Extends Python unittest to make testing easier" -HOMEPAGE = "http://readthedocs.org/docs/nose/" -DESCRIPTION = "nose extends the test loading and running features of unittest, \ -making it easier to write, find and run tests." -SECTION = "devel/python" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://lgpl.txt;md5=a6f89e2100d9b6cdffcea4f398e37343" - -SRC_URI = "https://files.pythonhosted.org/packages/source/n/nose/nose-${PV}.tar.gz" - -SRC_URI[md5sum] = "4d3ad0ff07b61373d2cefc89c5d0b20b" -SRC_URI[sha256sum] = "f1bffef9cbc82628f6e7d7b40d7e255aefaa1adb6a1b1d26c69a8b79e6208a98" - -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/nose/" -UPSTREAM_CHECK_REGEX = "/nose/(?P<pver>(\d+[\.\-_]*)+)" - -S = "${WORKDIR}/nose-${PV}" - inherit setuptools - -RDEPENDS_${PN} = "\ - python-unittest \ - " - -BBCLASSEXTEND = "native nativesdk" +require python-nose.inc
meta/recipes-devtools/python/python3-nose_1.3.7.bb +1 -23
@@ -1,28 +1,6 @@ -SUMMARY = "Extends Python unittest to make testing easier" -DESCRIPTION = "nose extends the test loading and running features of unittest, \ -making it easier to write, find and run tests." -SECTION = "devel/python" -LICENSE = "LGPLv2.1" -LIC_FILES_CHKSUM = "file://lgpl.txt;md5=a6f89e2100d9b6cdffcea4f398e37343" - -SRC_URI = "https://files.pythonhosted.org/packages/source/n/nose/nose-${PV}.tar.gz" - -SRC_URI[md5sum] = "4d3ad0ff07b61373d2cefc89c5d0b20b" -SRC_URI[sha256sum] = "f1bffef9cbc82628f6e7d7b40d7e255aefaa1adb6a1b1d26c69a8b79e6208a98" - -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/nose/" -UPSTREAM_CHECK_REGEX = "/nose/(?P<pver>(\d+[\.\-_]*)+)" - -S = "${WORKDIR}/nose-${PV}" - inherit setuptools3 +require python-nose.inc do_install_append() { mv ${D}${bindir}/nosetests ${D}${bindir}/nosetests3 } - -RDEPENDS_${PN}_class-target = "\ - python3-unittest \ - " - -BBCLASSEXTEND = "native nativesdk"
Signature · 1 line
2.14.3
PATCH v3 12/14 python-git: use pypi.bbclass
In reply to Tim Orling* Simplify python3-git by using pypi.bbclass
* Consolidate common content in .inc
--- meta/recipes-devtools/python/python-git.inc | 26 ++++++++++++++++++----- meta/recipes-devtools/python/python3-git_2.1.7.bb | 5 ----- 2 files changed, 21 insertions(+), 10 deletions(-)
meta/recipes-devtools/python/python-git.inc +21 -5
@@ -8,14 +8,30 @@ SECTION = "devel/python" LICENSE = "BSD-3-Clause" LIC_FILES_CHKSUM = "file://LICENSE;md5=8b8d26c37c1d5a04f9b0186edbebc183" -SRC_URI = "https://files.pythonhosted.org/packages/source/G/GitPython/GitPython-${PV}.tar.gz" +PYPI_PACKAGE = "GitPython" + +inherit pypi SRC_URI[md5sum] = "a63fdd2a650694ea23e268fd0c952034" SRC_URI[sha256sum] = "13c7cd99c2bf277fc99accfc25148752fa90e7cc6c6d08a3f01d229dacb461d9" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/GitPython/" -UPSTREAM_CHECK_REGEX = "/GitPython/(?P<pver>(\d+[\.\-_]*)+)" - -S = "${WORKDIR}/GitPython-${PV}" +DEPENDS = "${PYTHON_PN}-gitdb" +RDEPENDS_${PN} += "${PYTHON_PN}-argparse \ + ${PYTHON_PN}-datetime \ + ${PYTHON_PN}-enum \ + ${PYTHON_PN}-gitdb \ + ${PYTHON_PN}-io \ + ${PYTHON_PN}-lang \ + ${PYTHON_PN}-logging \ + ${PYTHON_PN}-math \ + ${PYTHON_PN}-netclient \ + ${PYTHON_PN}-re \ + ${PYTHON_PN}-shell \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-subprocess \ + ${PYTHON_PN}-unittest \ + ${PYTHON_PN}-unixadmin \ + git \ +" BBCLASSEXTEND = "nativesdk"
meta/recipes-devtools/python/python3-git_2.1.7.bb +0 -5
@@ -1,7 +1,2 @@ require python-git.inc - -DEPENDS = "python3-gitdb" - inherit setuptools3 - -RDEPENDS_${PN} += "python3-gitdb python3-lang python3-io python3-shell python3-math python3-re python3-subprocess python3-stringold python3-unixadmin python3-enum python3-logging python3-datetime python3-netclient python3-unittest python3-argparse git"
Signature · 1 line
2.14.3
PATCH v3 13/14 python3-iniparse: use pypi.bbclass
In reply to Tim Orling* Simplify recipe by using pypi.bbclass
--- meta/recipes-devtools/python/python3-iniparse_0.4.bb | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-)
meta/recipes-devtools/python/python3-iniparse_0.4.bb +3 -6
@@ -4,17 +4,14 @@ LICENSE = "MIT & PSF" LIC_FILES_CHKSUM = "file://LICENSE-PSF;md5=1c78a5bb3584b353496d5f6f34edb4b2 \ file://LICENSE;md5=52f28065af11d69382693b45b5a8eb54" -SRC_URI = "https://files.pythonhosted.org/packages/source/i/iniparse/iniparse-${PV}.tar.gz \ - file://0001-Add-python-3-compatibility.patch " +SRC_URI = "file://0001-Add-python-3-compatibility.patch " + SRC_URI[md5sum] = "5e573e9e9733d97623881ce9bbe5eca6" SRC_URI[sha256sum] = "abc1ee12d2cfb2506109072d6c21e40b6c75a3fe90a9c924327d80bc0d99c054" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/iniparse/" -inherit distutils3 +inherit pypi distutils3 RDEPENDS_${PN} += "python3-core python3-six" DEPENDS += "python3-six" BBCLASSEXTEND = "native nativesdk" - -S = "${WORKDIR}/iniparse-${PV}"
Signature · 1 line
2.14.3
PATCH v3 14/14 python-scons: upgrade to v3.0.1; use pypi.bbclass
In reply to Tim Orling* Simplify recipe by using pypi.bbclass
* Drop patch for __future__ print_function
- fixed upstream:
https://github.com/SConsProject/scons/pull/1/commits/4c199d06e76afb9379e76942d0f68caa57f42509
---
...ative_3.0.0.bb => python-scons-native_3.0.1.bb} | 0
...onscript-Support-python2-print-statements.patch | 38 ----------------------
...python-scons_3.0.0.bb => python-scons_3.0.1.bb} | 12 ++-----
3 files changed, 3 insertions(+), 47 deletions(-)
rename meta/recipes-devtools/python/{python-scons-native_3.0.0.bb => python-scons-native_3.0.1.bb} (100%)
delete mode 100644 meta/recipes-devtools/python/python-scons/SConscript-Support-python2-print-statements.patch
rename meta/recipes-devtools/python/{python-scons_3.0.0.bb => python-scons_3.0.1.bb} (54%)meta/recipes-devtools/python/python-scons-native_3.0.1.bb renamed from meta/recipes-devtools/python/python-scons-native_3.0.0.bb +0 -0
meta/recipes-devtools/python/python-scons/SConscript-Support-python2-print-statements.patch deleted +0 -38
@@ -1,38 +0,0 @@ -From 885aabdb313685405737112dcb7d7774eee6d879 Mon Sep 17 00:00:00 2001 -From: Thomas Berg <[email protected]> -Date: Thu, 19 Oct 2017 14:02:21 -0500 -Subject: [PATCH] SConscript: Support python2 print statements - -This fixes a regression introduced in scons-3.0.0, where -SConscripts containing python 2 print statements would cause -syntax errors even when executing scons with python 2.7. - -This ensures backward compatibility, allowing users to build -legacy code with scons-3.0.0 without having to patch it. - -Taken from -https://github.com/SConsProject/scons/commit/2e0de3c55f22b3eaa7767b69740b898f3d2f46bf - -Upstream-Status: Accepted - -Signed-off-by: Jose Lamego <[email protected]> ---- - engine/SCons/Script/SConscript.py | 2 -- - 1 file changed, 2 deletions(-) - -diff --git a/engine/SCons/Script/SConscript.py b/engine/SCons/Script/SConscript.py -index bc05540..332d1fa 100644 ---- a/engine/SCons/Script/SConscript.py -+++ b/engine/SCons/Script/SConscript.py -@@ -5,8 +5,6 @@ files. - - """ - --from __future__ import print_function -- - # - # Copyright (c) 2001 - 2017 The SCons Foundation - # --- -2.7.4 -
meta/recipes-devtools/python/python-scons_3.0.1.bb renamed from meta/recipes-devtools/python/python-scons_3.0.0.bb +3 -9
@@ -2,20 +2,14 @@ SUMMARY = "Software Construction tool (make/autotools replacement)" SECTION = "devel/python" LICENSE = "MIT" LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=46ddf66004e5be5566367cb525a66fc6" -SRCNAME = "scons" -SRC_URI = "https://files.pythonhosted.org/packages/source/s/${SRCNAME}/${SRCNAME}-${PV}.tar.gz \ - file://SConscript-Support-python2-print-statements.patch" - -SRC_URI[md5sum] = "7ca558edaaa1942fe38f3105ca2400fb" -SRC_URI[sha256sum] = "aa5afb33c2bbd33c311e47e912412195739e9ffb2e933534a31f85fba8f3470e" +SRC_URI[md5sum] = "b6a292e251b34b82c203b56cfa3968b3" +SRC_URI[sha256sum] = "24475e38d39c19683bc88054524df018fe6949d70fbd4c69e298d39a0269f173" UPSTREAM_CHECK_URI = "http://scons.org/pages/download.html" UPSTREAM_CHECK_REGEX = "(?P<pver>\d+(\.\d+)+)\.tar" -S = "${WORKDIR}/${SRCNAME}-${PV}" - -inherit setuptools +inherit pypi setuptools RDEPENDS_${PN} = "\ python-fcntl \
Signature · 1 line
2.14.3
Re: [PATCH v3 01/14] pypi.bbclass: bring in from meta-python
In reply to Tim OrlingMoments after hitting send, I realized this was missing the documentation strings from v1. I have added that change in the contrib git repo, but will not bother resending the patch via email. This series must be applied from git regardless, due to the long lines in the old manifest files which break git send-email.
Quoted 52 lines · Tim Orling
The pypi.bbclass has usefullness in many meta layers, not just meta-python. Add it to oe-core for the benefit of everyone.
Signed-off-by Tim Orling <[email protected]>---
meta/classes/pypi.bbclass | 26 ++++++++++++++++++++++++++1 file changed, 26 insertions(+)create mode 100644 meta/classes/pypi.bbclass
meta/classes/pypi.bbclass new file +26
-0@@ -0,0 +1,26 @@ +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" + +def pypi_src_uri(d): + package = d.getVar('PYPI_PACKAGE') + package_ext = d.getVar('PYPI_PACKAGE_EXT') + pv = d.getVar('PV') + return 'https://files.pythonhosted.org/packages/source/%s/%s/%s-%s.%s' % (package[0], package, package, pv, package_ext) + +PYPI_SRC_URI ?= "${@pypi_src_uri(d)}" + +HOMEPAGE ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/" +SECTION = "devel/python" +SRC_URI += "${PYPI_SRC_URI}" +S = "${WORKDIR}/${PYPI_PACKAGE}-${PV}" + +UPSTREAM_CHECK_URI ?= "https://pypi.python.org/pypi/${PYPI_PACKAGE}/" +UPSTREAM_CHECK_REGEX ?= "/${PYPI_PACKAGE}/(?P<pver>(\d+[\.\-_]*)+)"Signature · 7 lines
2.14.3 -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
✗ patchtest: failure for python improvements (rev2)
In reply to Tim Orling== Series Details ==
Series: python improvements (rev2)
Revision: 2
URL : https://patchwork.openembedded.org/series/10133/
State : failure
== Summary ==
Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures:
* Issue Series cannot be parsed correctly due to malformed diff lines [test_mbox_format]
Suggested fix Create the series again using git-format-patch and ensure it can be applied using git am
Diff line diff --git a/scripts/contrib/python/generate-manifest-2.7.py b/scripts/contrib/python/generate-manifest-2.7.py
* Issue Series does not apply on top of target branch [test_series_merge_on_head]
Suggested fix Rebase your series on top of targeted branch
Targeted branch master (currently at a24c10b7bd)
If you believe any of these test results are incorrect, please reply to the mailing list ([email protected]) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...).
---
Guidelines: https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest Test suite: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe