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

Philip Balister philip at balister.org
Tue Jan 10 06:48:56 PST 2017


Have you thought about submitting this to meta-python? This looks like a
recipe with use far beyond meta-xilinx.

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"
> 



More information about the meta-xilinx mailing list