[meta-xilinx] [RFC] [PATCH v2] python3-pyyaml: Recipe to support Python 3

Philip Balister philip at balister.org
Tue Jan 10 08:30:58 PST 2017


On 01/10/2017 11:02 AM, Nathan Rossi wrote:
> On 11 January 2017 at 00:48, Philip Balister <philip at balister.org> wrote:
>> Have you thought about submitting this to meta-python? This looks like a
>> recipe with use far beyond meta-xilinx.
> 
> Looking at this patch, it looks like that was Manju's intention since
> it is adding the recipe in the meta-python/ subdir.
> 
> I assumed this patch was sent to this list with the intention of being
> related to this thread.
> https://lists.yoctoproject.org/pipermail/meta-xilinx/2017-January/002348.html

Hopefully, this patch solves the problem long term.

https://patchwork.openembedded.org/patch/135639/

Philip

> 
> Regards,
> Nathan
> 
>>
>> Philip
>>
>> On 01/09/2017 07:27 PM, Manjukumar Matha wrote:
>>> Add Python 3 recipe for pyyaml support
>>>
>>> Signed-off-by: Manjukumar Matha <manjukumar.harthikote-matha at xilinx.com>
>>> ---
>>>  .../python/python3-pyyaml/setup.py                 | 64 ++++++++++++++++++++++
>>>  .../recipes-devtools/python/python3-pyyaml_3.12.bb | 24 ++++++++
>>>  2 files changed, 88 insertions(+)
>>>  create mode 100644 meta-python/recipes-devtools/python/python3-pyyaml/setup.py
>>>  create mode 100644 meta-python/recipes-devtools/python/python3-pyyaml_3.12.bb
>>>
>>> diff --git a/meta-python/recipes-devtools/python/python3-pyyaml/setup.py b/meta-python/recipes-devtools/python/python3-pyyaml/setup.py
>>> new file mode 100644
>>> index 0000000..1277a61
>>> --- /dev/null
>>> +++ b/meta-python/recipes-devtools/python/python3-pyyaml/setup.py
>>> @@ -0,0 +1,64 @@
>>> +NAME = 'PyYAML'
>>> +VERSION = '3.12'
>>> +DESCRIPTION = "YAML parser and emitter for Python"
>>> +LONG_DESCRIPTION = """\
>>> +YAML is a data serialization format designed for human readability and
>>> +interaction with scripting languages.  PyYAML is a YAML parser and
>>> +emitter for Python.
>>> +
>>> +PyYAML features a complete YAML 1.1 parser, Unicode support, pickle
>>> +support, capable extension API, and sensible error messages.  PyYAML
>>> +supports standard YAML tags and provides Python-specific tags that allow
>>> +to represent an arbitrary Python object.
>>> +
>>> +PyYAML is applicable for a broad range of tasks from complex
>>> +configuration files to object serialization and persistance."""
>>> +AUTHOR = "Kirill Simonov"
>>> +AUTHOR_EMAIL = 'xi at resolvent.net'
>>> +LICENSE = "MIT"
>>> +PLATFORMS = "Any"
>>> +URL = "http://pyyaml.org/wiki/PyYAML"
>>> +DOWNLOAD_URL = "http://pyyaml.org/download/pyyaml/%s-%s.tar.gz" % (NAME, VERSION)
>>> +CLASSIFIERS = [
>>> +    "Development Status :: 5 - Production/Stable",
>>> +    "Intended Audience :: Developers",
>>> +    "License :: OSI Approved :: MIT License",
>>> +    "Operating System :: OS Independent",
>>> +    "Programming Language :: Python",
>>> +    "Topic :: Software Development :: Libraries :: Python Modules",
>>> +    "Topic :: Text Processing :: Markup",
>>> +]
>>> +
>>> +from distutils.core import setup
>>> +from distutils.extension import Extension
>>> +from Cython.Distutils import build_ext
>>> +
>>> +import sys, os.path
>>> +
>>> +
>>> +if __name__ == '__main__':
>>> +
>>> +    setup(
>>> +        name=NAME,
>>> +        version=VERSION,
>>> +        description=DESCRIPTION,
>>> +        long_description=LONG_DESCRIPTION,
>>> +        author=AUTHOR,
>>> +        author_email=AUTHOR_EMAIL,
>>> +        license=LICENSE,
>>> +        platforms=PLATFORMS,
>>> +        url=URL,
>>> +        download_url=DOWNLOAD_URL,
>>> +        classifiers=CLASSIFIERS,
>>> +
>>> +     package_dir={'': 'lib3'},
>>> +        packages=['yaml'],
>>> +
>>> +        ext_modules = [
>>> +        Extension( "_yaml", ["ext/_yaml.pyx"], libraries = ["yaml"] )
>>> +        ],
>>> +
>>> +        cmdclass={
>>> +            'build_ext': build_ext,
>>> +        },
>>> +    )
>>> diff --git a/meta-python/recipes-devtools/python/python3-pyyaml_3.12.bb b/meta-python/recipes-devtools/python/python3-pyyaml_3.12.bb
>>> new file mode 100644
>>> index 0000000..4969456
>>> --- /dev/null
>>> +++ b/meta-python/recipes-devtools/python/python3-pyyaml_3.12.bb
>>> @@ -0,0 +1,24 @@
>>> +SUMMARY = "Python support for YAML"
>>> +HOMEPAGE = "http://www.pyyaml.org"
>>> +SECTION = "devel/python"
>>> +LICENSE = "MIT"
>>> +LIC_FILES_CHKSUM = "file://LICENSE;md5=6015f088759b10e0bc2bf64898d4ae17"
>>> +DEPENDS = "libyaml python3-cython-native"
>>> +
>>> +SRC_URI = "http://pyyaml.org/download/pyyaml/PyYAML-${PV}.tar.gz \
>>> +           file://setup.py \
>>> +"
>>> +
>>> +SRC_URI[md5sum] = "4c129761b661d181ebf7ff4eb2d79950"
>>> +SRC_URI[sha256sum] = "592766c6303207a20efc445587778322d7f73b161bd994f227adaa341ba212ab"
>>> +
>>> +S = "${WORKDIR}/PyYAML-${PV}"
>>> +
>>> +inherit distutils3
>>> +
>>> +do_configure_prepend() {
>>> +    # upstream setup.py overcomplicated, use ours
>>> +    install -m 0644 ${WORKDIR}/setup.py ${S}
>>> +}
>>> +
>>> +BBCLASSEXTEND = "native"
>>>
>> --
>> _______________________________________________
>> meta-xilinx mailing list
>> meta-xilinx at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/meta-xilinx
> 



More information about the meta-xilinx mailing list