Re: [OE-core] [PATCH] lrzsz: remove
On Fri, Dec 8, 2017 at 9:46 AM, Richard Purdiewrote: > On Fri, 2017-12-08 at 17:05 +, Burton, Ross wrote: >> I've had people from the past > > What are you suggesting? ;-) > >> suggest that this is still useful for deeply embedded environments >> where a serial line is the only form of communication, so I'm >> retracting this and will instead clean up dependencies so it doesn't >> end up in all images. > > To be clear, if you have a device you're doing board bringup on and > serial works but network doesn't this does provide a useful way to get > files in/out. That isn't an entirely unknown situation for OE users. It > would also potentially allow us to improve the serial test runner used > by poky-tiny. > I agree. Please don't drop this. On a previous project (FPGA based co-processor board), x/y/zmodem was the only way to transfer files to the target since it did not have a network interface at all - just serial. -Bill -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] ✗ patchtest: failure for python improvements
== Series Details == Series: python improvements Revision: 1 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 fixCreate the series again using git-format-patch and ensure it can be applied using git am Diff linediff --git a/meta/recipes-devtools/python/python-native_2.7.13.bb b/meta/recipes-devtools/python/python-native_2.7.13.bb * Issue Series does not apply on top of target branch [test_series_merge_on_head] Suggested fixRebase your series on top of targeted branch Targeted branch master (currently at a7cd9d1183) If you believe any of these test results are incorrect, please reply to the mailing list (openembedded-core@lists.openembedded.org) 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 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 19/19] python-scons: upgrade to 3.0.1; use pypi.bbclass
* Simplify recipe by using pypi.bbclass * Drop patch for __future__ print_function - fixed upstream: https://github.com/SConsProject/scons/pull/1/commits/4c199d06e76afb9379e76942d0f68caa57f42509 Signed-off-by: Tim Orling--- ...ative_3.0.0.bb => python-scons-native_3.0.1.bb} | 0 ...onscript-Support-python2-print-statements.patch | 38 -- meta/recipes-devtools/python/python-scons_3.0.0.bb | 27 --- meta/recipes-devtools/python/python-scons_3.0.1.bb | 18 ++ 4 files changed, 18 insertions(+), 65 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 delete mode 100644 meta/recipes-devtools/python/python-scons_3.0.0.bb create mode 100644 meta/recipes-devtools/python/python-scons_3.0.1.bb diff --git a/meta/recipes-devtools/python/python-scons-native_3.0.0.bb b/meta/recipes-devtools/python/python-scons-native_3.0.1.bb similarity index 100% rename from meta/recipes-devtools/python/python-scons-native_3.0.0.bb rename to meta/recipes-devtools/python/python-scons-native_3.0.1.bb diff --git a/meta/recipes-devtools/python/python-scons/SConscript-Support-python2-print-statements.patch b/meta/recipes-devtools/python/python-scons/SConscript-Support-python2-print-statements.patch deleted file mode 100644 index b1a790219ed..000 --- a/meta/recipes-devtools/python/python-scons/SConscript-Support-python2-print-statements.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 885aabdb313685405737112dcb7d7774eee6d879 Mon Sep 17 00:00:00 2001 -From: Thomas Berg -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 - 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 - diff --git a/meta/recipes-devtools/python/python-scons_3.0.0.bb b/meta/recipes-devtools/python/python-scons_3.0.0.bb deleted file mode 100644 index e780c542e4a..000 --- a/meta/recipes-devtools/python/python-scons_3.0.0.bb +++ /dev/null @@ -1,27 +0,0 @@ -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" - -UPSTREAM_CHECK_URI = "http://scons.org/pages/download.html; -UPSTREAM_CHECK_REGEX = "(?P\d+(\.\d+)+)\.tar" - -S = "${WORKDIR}/${SRCNAME}-${PV}" - -inherit setuptools - -RDEPENDS_${PN} = "\ - python-fcntl \ - python-io \ - python-json \ - python-subprocess \ - python-shell \ - python-pprint \ - " diff --git a/meta/recipes-devtools/python/python-scons_3.0.1.bb b/meta/recipes-devtools/python/python-scons_3.0.1.bb new file mode 100644 index 000..4add9eb3ad7 --- /dev/null +++ b/meta/recipes-devtools/python/python-scons_3.0.1.bb @@ -0,0 +1,18 @@ +SUMMARY = "Software Construction tool (make/autotools replacement)" +SECTION = "devel/python" +LICENSE = "MIT" +LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=46ddf66004e5be5566367cb525a66fc6" + +SRC_URI[md5sum] = "b6a292e251b34b82c203b56cfa3968b3" +SRC_URI[sha256sum] = "24475e38d39c19683bc88054524df018fe6949d70fbd4c69e298d39a0269f173" + +inherit pypi setuptools + +RDEPENDS_${PN} = "\ + python-fcntl \ + python-io \ + python-json \ + python-subprocess \ + python-shell \ + python-pprint \ + " -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 12/19] python-six: use pypi.bbclass
* Simplify python3-six by using pypi.bbclass - Use PYTHON_PN in .inc to avoid duplication in RDEPENDS Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python-six.inc| 8 +++- meta/recipes-devtools/python/python3-six_1.11.0.bb | 4 +--- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/meta/recipes-devtools/python/python-six.inc b/meta/recipes-devtools/python/python-six.inc index f9e7d6429d0..aeac7e7e9fc 100644 --- a/meta/recipes-devtools/python/python-six.inc +++ b/meta/recipes-devtools/python/python-six.inc @@ -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(\d+[\.\-_]*)+)" +inherit pypi -BBCLASSEXTEND = "native nativesdk" +RDEPENDS_${PN} += "${PYTHON_PN}-io" -S = "${WORKDIR}/six-${PV}" +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/python/python3-six_1.11.0.bb b/meta/recipes-devtools/python/python3-six_1.11.0.bb index 38a47b77ddf..9c41f947625 100644 --- a/meta/recipes-devtools/python/python3-six_1.11.0.bb +++ b/meta/recipes-devtools/python/python3-six_1.11.0.bb @@ -1,4 +1,2 @@ -inherit setuptools3 require python-six.inc - -RDEPENDS_${PN} += "python3-io" +inherit setuptools3 -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 18/19] python3-iniparse: use pypi.bbclass
* Simplify recipe using pypi.bbclass Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python3-iniparse_0.4.bb | 11 --- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/meta/recipes-devtools/python/python3-iniparse_0.4.bb b/meta/recipes-devtools/python/python3-iniparse_0.4.bb index f51ce647c9b..7ab9fe3b386 100644 --- a/meta/recipes-devtools/python/python3-iniparse_0.4.bb +++ b/meta/recipes-devtools/python/python3-iniparse_0.4.bb @@ -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" +RDEPENDS_${PN} += "python3-core python3-six" -S = "${WORKDIR}/iniparse-${PV}" +BBCLASSEXTEND = "native nativesdk" -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 15/19] python-smmap: use pypi.bbclass
* Simpify python3-smmap using pypi.bbclass * Consolidate common content in .inc Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python-smmap.inc | 9 + meta/recipes-devtools/python/python3-smmap_0.9.0.bb | 2 -- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/meta/recipes-devtools/python/python-smmap.inc b/meta/recipes-devtools/python/python-smmap.inc index d67e6b54124..4117c947947 100644 --- a/meta/recipes-devtools/python/python-smmap.inc +++ b/meta/recipes-devtools/python/python-smmap.inc @@ -7,13 +7,14 @@ 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; SRC_URI[md5sum] = "d7932d5ace206bf4ae15198cf36fb6ab" SRC_URI[sha256sum] = "0e2b62b497bd5f0afebc002eda4d90df9d209c30ef257e8673c90a6b5c119d62" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/smmap/; -UPSTREAM_CHECK_REGEX = "/smmap/(?P(\d+[\.\-_]*)+)" +inherit pypi -S = "${WORKDIR}/smmap-${PV}" +RDEPENDS_${PN} += " \ + ${PYTHON_PN}-codecs \ + ${PYTHON_PN}-mmap \ + " BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-devtools/python/python3-smmap_0.9.0.bb b/meta/recipes-devtools/python/python3-smmap_0.9.0.bb index 1df74c172c4..9c25ca18096 100644 --- a/meta/recipes-devtools/python/python3-smmap_0.9.0.bb +++ b/meta/recipes-devtools/python/python3-smmap_0.9.0.bb @@ -1,5 +1,3 @@ require python-smmap.inc inherit setuptools3 - -RDEPENDS_${PN} += "python3-codecs python3-mmap" -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 13/19] python-async: use pypi.bbclass
* Simplify by using pypi.bbclass * Use PYTHON_PN for RDEPENDS in .inc to avoid duplication Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python-async.inc | 5 ++--- meta/recipes-devtools/python/python3-async_0.6.2.bb | 3 --- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/meta/recipes-devtools/python/python-async.inc b/meta/recipes-devtools/python/python-async.inc index 2c5cb4d1916..56e9592ac02 100644 --- a/meta/recipes-devtools/python/python-async.inc +++ b/meta/recipes-devtools/python/python-async.inc @@ -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; SRC_URI[md5sum] = "9b06b5997de2154f3bc0273f80bcef6b" SRC_URI[sha256sum] = "ac6894d876e45878faae493b0cf61d0e28ec417334448ac0a6ea2229d8343051" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/async/; +inherit pypi -S = "${WORKDIR}/async-${PV}" +RDEPENDS_${PN} += "${PYTHON_PN}-threading" BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-devtools/python/python3-async_0.6.2.bb b/meta/recipes-devtools/python/python3-async_0.6.2.bb index f45781c44f8..e62b21fcaef 100644 --- a/meta/recipes-devtools/python/python3-async_0.6.2.bb +++ b/meta/recipes-devtools/python/python3-async_0.6.2.bb @@ -1,6 +1,3 @@ require python-async.inc inherit setuptools3 - -RDEPENDS_${PN} += "python3-threading" - -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 14/19] python-mako: use pypi.bbclass
* Simplify python3-mako by using pypi.bbclass * Avoid duplication by using PYTHON_PN in .inc Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python-mako.inc | 14 +- meta/recipes-devtools/python/python3-mako_1.0.7.bb | 9 - 2 files changed, 9 insertions(+), 14 deletions(-) diff --git a/meta/recipes-devtools/python/python-mako.inc b/meta/recipes-devtools/python/python-mako.inc index 1c83af6a239..7adae6161e8 100644 --- a/meta/recipes-devtools/python/python-mako.inc +++ b/meta/recipes-devtools/python/python-mako.inc @@ -4,13 +4,17 @@ 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(\d+[\.\-_]*)+)" - -S = "${WORKDIR}/Mako-${PV}" +RDEPENDS_${PN}_class-target += " \ + ${PYTHON_PN}-html \ + ${PYTHON_PN}-netclient \ + ${PYTHON_PN}-threading \ + " +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/python/python3-mako_1.0.7.bb b/meta/recipes-devtools/python/python3-mako_1.0.7.bb index 2b50ffd08ad..156d4f16829 100644 --- a/meta/recipes-devtools/python/python3-mako_1.0.7.bb +++ b/meta/recipes-devtools/python/python3-mako_1.0.7.bb @@ -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" -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 11/19] python-nose: use pypi.bbclass
* Simplify python- and python3-nose by using pypi.bbclass * Consolidate common content in python-nose.inc - Avoid duplication by using PYTHON_PN variable * nosetests RDEPENDS on python-logging Signed-off-by: Tim Orling--- 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, 22 insertions(+), 45 deletions(-) create mode 100644 meta/recipes-devtools/python/python-nose.inc diff --git a/meta/recipes-devtools/python/python-nose.inc b/meta/recipes-devtools/python/python-nose.inc new file mode 100644 index 000..072be87356d --- /dev/null +++ b/meta/recipes-devtools/python/python-nose.inc @@ -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}_class-target = "\ + ${PYTHON_PN}-unittest \ + " + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/python/python-nose_1.3.7.bb b/meta/recipes-devtools/python/python-nose_1.3.7.bb index 9b3509cafbb..584d604079b 100644 --- a/meta/recipes-devtools/python/python-nose_1.3.7.bb +++ b/meta/recipes-devtools/python/python-nose_1.3.7.bb @@ -1,25 +1,6 @@ -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(\d+[\.\-_]*)+)" - -S = "${WORKDIR}/nose-${PV}" - +require python-nose.inc inherit setuptools -RDEPENDS_${PN} = "\ - python-unittest \ +RDEPENDS_${PN}_class-target += "\ + python-logging \ " - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/python/python3-nose_1.3.7.bb b/meta/recipes-devtools/python/python3-nose_1.3.7.bb index 1e2ff74f578..2d1ae3b8bf5 100644 --- a/meta/recipes-devtools/python/python3-nose_1.3.7.bb +++ b/meta/recipes-devtools/python/python3-nose_1.3.7.bb @@ -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(\d+[\.\-_]*)+)" - -S = "${WORKDIR}/nose-${PV}" - +require python-nose.inc inherit setuptools3 do_install_append() { mv ${D}${bindir}/nosetests ${D}${bindir}/nosetests3 } - -RDEPENDS_${PN}_class-target = "\ - python3-unittest \ - " - -BBCLASSEXTEND = "native nativesdk" -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 16/19] python-gitdb: use pypi.bbclass
* Simplify python3-gitdb recipe using pypi.bblass * Avoid duplication by using PYTHON_PN in .inc * Sort RDEPENDS alphabetically Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python-gitdb.inc | 16 meta/recipes-devtools/python/python3-gitdb_0.6.4.bb | 4 2 files changed, 12 insertions(+), 8 deletions(-) diff --git a/meta/recipes-devtools/python/python-gitdb.inc b/meta/recipes-devtools/python/python-gitdb.inc index 08193fbf258..45c75ef3089 100644 --- a/meta/recipes-devtools/python/python-gitdb.inc +++ b/meta/recipes-devtools/python/python-gitdb.inc @@ -4,13 +4,21 @@ 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; - SRC_URI[md5sum] = "44e4366b8bdfd306b075c3a52c96ae1a" SRC_URI[sha256sum] = "a3ebbc27be035a2e874ed904df516e35f4a29a778a764385de09de9e0f139658" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/gitdb/; +inherit pypi + +DEPENDS = "${PYTHON_PN}-async ${PYTHON_PN}-smmap" -S = "${WORKDIR}/gitdb-${PV}" +RDEPENDS_${PN} += " \ + ${PYTHON_PN}-async \ + ${PYTHON_PN}-compression \ + ${PYTHON_PN}-crypt \ + ${PYTHON_PN}-io \ + ${PYTHON_PN}-mmap \ + ${PYTHON_PN}-shell \ + ${PYTHON_PN}-smmap \ + " BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-devtools/python/python3-gitdb_0.6.4.bb b/meta/recipes-devtools/python/python3-gitdb_0.6.4.bb index a209c52f9ee..412cf8c02c9 100644 --- a/meta/recipes-devtools/python/python3-gitdb_0.6.4.bb +++ b/meta/recipes-devtools/python/python3-gitdb_0.6.4.bb @@ -1,7 +1,3 @@ require python-gitdb.inc -DEPENDS = "python3-async python3-smmap" - inherit distutils3 - -RDEPENDS_${PN} += "python3-smmap python3-async python3-mmap python3-io python3-shell python3-crypt python3-compression" -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 17/19] python-git: use pypi.bbclass
* Simplify python3-git recipe using pypi.bbclass * Avoid duplication by using PYTHON_PN in .inc * Sort RDEPENDS alphabetically Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python-git.inc | 23 ++- meta/recipes-devtools/python/python3-git_2.1.7.bb | 4 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/meta/recipes-devtools/python/python-git.inc b/meta/recipes-devtools/python/python-git.inc index 0b7e44ac0c4..696f8081de9 100644 --- a/meta/recipes-devtools/python/python-git.inc +++ b/meta/recipes-devtools/python/python-git.inc @@ -8,14 +8,27 @@ 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; - SRC_URI[md5sum] = "a63fdd2a650694ea23e268fd0c952034" SRC_URI[sha256sum] = "13c7cd99c2bf277fc99accfc25148752fa90e7cc6c6d08a3f01d229dacb461d9" -UPSTREAM_CHECK_URI = "https://pypi.python.org/pypi/GitPython/; -UPSTREAM_CHECK_REGEX = "/GitPython/(?P(\d+[\.\-_]*)+)" +PYPI_PACKAGE = "GitPython" + +inherit pypi + +DEPENDS = "${PYTHON_PN}-gitdb" -S = "${WORKDIR}/GitPython-${PV}" +RDEPENDS_${PN} += " \ + ${PYTHON_PN}-datetime \ + ${PYTHON_PN}-gitdb \ + ${PYTHON_PN}-io \ + ${PYTHON_PN}-logging \ + ${PYTHON_PN}-math \ + ${PYTHON_PN}-netclient \ + ${PYTHON_PN}-shell \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-unittest \ + ${PYTHON_PN}-unixadmin \ + git \ + " BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-devtools/python/python3-git_2.1.7.bb b/meta/recipes-devtools/python/python3-git_2.1.7.bb index ca42688f97e..1d69de5c782 100644 --- a/meta/recipes-devtools/python/python3-git_2.1.7.bb +++ b/meta/recipes-devtools/python/python3-git_2.1.7.bb @@ -1,7 +1,3 @@ require python-git.inc -DEPENDS = "python3-gitdb" - inherit setuptools3 - -RDEPENDS_${PN} += "python3-gitdb python3-io python3-shell python3-math python3-stringold python3-unixadmin python3-logging python3-datetime python3-netclient python3-unittest git" -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 09/19] python*-setuptools: upgrade to 38.2.3; use pypi.bbclass; improvements
* 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 RDEPENDS on _markupbase - prior commit it added to -core rather than -misc catchall - installer no longer creates setuptools.pth, drop fixes - easy_install script is installed in /usr/bin/, add --script-dir Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python-setuptools.inc | 39 ++ .../python/python-setuptools_36.5.0.bb | 38 - .../python/python-setuptools_38.2.3.bb | 9 + .../python/python3-setuptools_36.5.0.bb| 35 --- .../python/python3-setuptools_38.2.3.bb| 6 5 files changed, 48 insertions(+), 79 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.3.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.3.bb diff --git a/meta/recipes-devtools/python/python-setuptools.inc b/meta/recipes-devtools/python/python-setuptools.inc index 1eae0b6174d..dcabd4c9288 100644 --- a/meta/recipes-devtools/python/python-setuptools.inc +++ b/meta/recipes-devtools/python/python-setuptools.inc @@ -5,17 +5,44 @@ 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; +SRC_URI[md5sum] = "0ae64455d276ff864b40aca9c06ea7c1" +SRC_URI[sha256sum] = "63c394084de7d11bbbec59a4f9a9a6bab10209657c615e76ef62ae25cea39288" -SRC_URI[md5sum] = "704f500dd55f4bd0be905444f3ba892c" -SRC_URI[sha256sum] = "ce2007c1cea3359870b80657d634253a0765b0c7dc5a988d77ba803fc86f2c64" +inherit pypi -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}-netserver \ + ${PYTHON_PN}-numbers \ + ${PYTHON_PN}-pkgutil \ + ${PYTHON_PN}-plistlib \ + ${PYTHON_PN}-shell \ + ${PYTHON_PN}-stringold \ + ${PYTHON_PN}-threading \ + ${PYTHON_PN}-unittest \ + ${PYTHON_PN}-xml \ +" do_install_prepend() { install -d ${D}${PYTHON_SITEPACKAGES_DIR} } + +BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-devtools/python/python-setuptools_36.5.0.bb b/meta/recipes-devtools/python/python-setuptools_36.5.0.bb deleted file mode 100644 index 526474c7ea5..000 --- a/meta/recipes-devtools/python/python-setuptools_36.5.0.bb +++ /dev/null @@ -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" diff --git a/meta/recipes-devtools/python/python-setuptools_38.2.3.bb b/meta/recipes-devtools/python/python-setuptools_38.2.3.bb new file mode 100644 index 000..cf9440495bd --- /dev/null +++ b/meta/recipes-devtools/python/python-setuptools_38.2.3.bb @@ -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" diff --git a/meta/recipes-devtools/python/python3-setuptools_36.5.0.bb b/meta/recipes-devtools/python/python3-setuptools_36.5.0.bb deleted file mode 100644 index dab8ad89b01..000 --- a/meta/recipes-devtools/python/python3-setuptools_36.5.0.bb +++ /dev/null @@ -1,35 +0,0 @@ -require python-setuptools.inc - -DEPENDS += "python3" -DEPENDS_class-native +=
[OE-core] [PATCH v2 10/19] python3-pip: use pypi.bbclass
* Simplify recipe using pypi.bbclass Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python3-pip_9.0.1.bb | 14 -- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/meta/recipes-devtools/python/python3-pip_9.0.1.bb b/meta/recipes-devtools/python/python3-pip_9.0.1.bb index a6dd72df3b1..b56862c2450 100644 --- a/meta/recipes-devtools/python/python3-pip_9.0.1.bb +++ b/meta/recipes-devtools/python/python3-pip_9.0.1.bb @@ -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 @@ -46,6 +39,7 @@ RDEPENDS_${PN} = "\ python3-io \ python3-html \ python3-json \ + python3-netclient \ python3-netserver \ python3-setuptools \ python3-unixadmin \ -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 07/19] python2 create_manifest.py: fix trailing whitespace in json
The json.dumps function adds trailing whitespace when using indent, because the default separator is not ','. The workaround [1] is to set the separators to be ',' and ': ', e.g. separators=(',', ': ') [1] https://hg.python.org/cpython/rev/78bad589f205 Signed-off-by: Tim Orling--- meta/recipes-devtools/python/python/create_manifest2.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-devtools/python/python/create_manifest2.py b/meta/recipes-devtools/python/python/create_manifest2.py index bd64ec3ee74..e7450452ba5 100644 --- a/meta/recipes-devtools/python/python/create_manifest2.py +++ b/meta/recipes-devtools/python/python/create_manifest2.py @@ -274,4 +274,4 @@ for key in new_manifest: # Create the manifest from the data structure that was built with open('python2-manifest.json.new','w') as outfile: -json.dump(new_manifest,outfile,sort_keys=True, indent=4) +json.dump(new_manifest,outfile,sort_keys=True, indent=4, separators=(',', ': ')) -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 08/19] python*-manifest.json: add dependencies, runpy
* runpy allows running modules/scripts with 'python -m foo' - create explicit python2 and 3 packages rather than the misc catchall * python3-setuptools and html.parser RDEPENDS on _markupbase - add to python3-core rather than misc catchall * pip3 RDEPENDS on plistlib, http.client - already packaged in python2, add to python3 - add http/ to -netclient * "pip3 install" RDEPENDS on encodingds.idna - encodings.idna packaged in -core, but missing: - stringprep (move from -codecs to -core) - unicodedata (move from -codecs to -core) Signed-off-by: Tim Orling--- .../python/python/python2-manifest.json| 1295 ++-- .../python/python3/python3-manifest.json | 41 +- 2 files changed, 690 insertions(+), 646 deletions(-) diff --git a/meta/recipes-devtools/python/python/python2-manifest.json b/meta/recipes-devtools/python/python/python2-manifest.json index 2e325971556..a0321ee7d06 100644 --- a/meta/recipes-devtools/python/python/python2-manifest.json +++ b/meta/recipes-devtools/python/python/python2-manifest.json @@ -1,1033 +1,1044 @@ { "2to3": { "files": [ -"${bindir}/2to3", +"${bindir}/2to3", "${libdir}/python2.7/lib2to3" -], +], "rdepends": [ "core" -], +], "summary": "Python automated Python 2 to 3 code translator" -}, +}, "argparse": { "files": [ "${libdir}/python2.7/argparse.py" -], +], "rdepends": [ -"codecs", -"core", -"lang", +"codecs", +"core", +"lang", "textutils" -], +], "summary": "Python command line argument parser" -}, +}, "audio": { "files": [ -"${libdir}/python2.7/audiodev.py", -"${libdir}/python2.7/chunk.py", -"${libdir}/python2.7/lib-dynload/audioop.so", -"${libdir}/python2.7/lib-dynload/ossaudiodev.so", -"${libdir}/python2.7/sndhdr.py", -"${libdir}/python2.7/sunau.py", -"${libdir}/python2.7/sunaudio.py", -"${libdir}/python2.7/toaiff.py", +"${libdir}/python2.7/audiodev.py", +"${libdir}/python2.7/chunk.py", +"${libdir}/python2.7/lib-dynload/audioop.so", +"${libdir}/python2.7/lib-dynload/ossaudiodev.so", +"${libdir}/python2.7/sndhdr.py", +"${libdir}/python2.7/sunau.py", +"${libdir}/python2.7/sunaudio.py", +"${libdir}/python2.7/toaiff.py", "${libdir}/python2.7/wave.py" -], +], "rdepends": [ -"core", -"crypt", -"fcntl", -"io", +"core", +"crypt", +"fcntl", +"io", "math" -], +], "summary": "Python Audio Handling" -}, +}, "bsddb": { "files": [ -"${libdir}/python2.7/bsddb", +"${libdir}/python2.7/bsddb", "${libdir}/python2.7/lib-dynload/_bsddb.so" -], +], "rdepends": [ "core" -], +], "summary": "Python bindings for the Berkeley Database" -}, +}, "codecs": { "files": [ -"${libdir}/python2.7/gettext.py", -"${libdir}/python2.7/lib-dynload/_codecs_cn.so", -"${libdir}/python2.7/lib-dynload/_codecs_hk.so", -"${libdir}/python2.7/lib-dynload/_codecs_iso2022.so", -"${libdir}/python2.7/lib-dynload/_codecs_jp.so", -"${libdir}/python2.7/lib-dynload/_codecs_kr.so", -"${libdir}/python2.7/lib-dynload/_codecs_tw.so", -"${libdir}/python2.7/lib-dynload/_multibytecodec.so", -"${libdir}/python2.7/lib-dynload/unicodedata.so", -"${libdir}/python2.7/locale.py", -"${libdir}/python2.7/stringprep.py", +"${libdir}/python2.7/gettext.py", +"${libdir}/python2.7/lib-dynload/_codecs_cn.so", +"${libdir}/python2.7/lib-dynload/_codecs_hk.so", +"${libdir}/python2.7/lib-dynload/_codecs_iso2022.so", +"${libdir}/python2.7/lib-dynload/_codecs_jp.so", +"${libdir}/python2.7/lib-dynload/_codecs_kr.so", +"${libdir}/python2.7/lib-dynload/_codecs_tw.so", +"${libdir}/python2.7/lib-dynload/_multibytecodec.so", +"${libdir}/python2.7/lib-dynload/unicodedata.so", +"${libdir}/python2.7/locale.py", +"${libdir}/python2.7/stringprep.py", "${libdir}/python2.7/xdrlib.py" -], +], "rdepends": [ -"core", -"io", +"core", +"io", "lang" -], +],
[OE-core] [PATCH v2 05/19] python-scons: Remove python-importlib dependency
From: Alejandro HernandezWith the new manifest python-importlib became part of python-core (it was being installed anyway), so now the package cant be found and it shouldnt be listed as a dependency, this patch fixes python-scons RDEPENDS to avoid dependency errors. Signed-off-by: Alejandro Hernandez --- meta/recipes-devtools/python/python-scons_3.0.0.bb | 1 - 1 file changed, 1 deletion(-) diff --git a/meta/recipes-devtools/python/python-scons_3.0.0.bb b/meta/recipes-devtools/python/python-scons_3.0.0.bb index 8fe74f4b3c1..e780c542e4a 100644 --- a/meta/recipes-devtools/python/python-scons_3.0.0.bb +++ b/meta/recipes-devtools/python/python-scons_3.0.0.bb @@ -24,5 +24,4 @@ RDEPENDS_${PN} = "\ python-subprocess \ python-shell \ python-pprint \ - python-importlib \ " -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 04/19] hwlatdetect: fix RDEPENDS to avoid QA failures
From: Alejandro HernandezWhen listing python3 as an RDEPENDS, the image will in fact contain python3-modules, but the QA check fails to get RPROVIDERS correctly (since the python3 package does not actually exist), /usr/bin/python3 is provided by the python3-core package, so by fixing the RDEPENDS and listing python3-core instead of python3, the QA check works correctly and we avoid failures. Signed-off-by: Alejandro Hernandez --- meta/recipes-rt/rt-tests/hwlatdetect_1.1.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/recipes-rt/rt-tests/hwlatdetect_1.1.bb b/meta/recipes-rt/rt-tests/hwlatdetect_1.1.bb index 60b44a4d258..5f61c4ecddc 100644 --- a/meta/recipes-rt/rt-tests/hwlatdetect_1.1.bb +++ b/meta/recipes-rt/rt-tests/hwlatdetect_1.1.bb @@ -22,5 +22,5 @@ do_install() { } FILES_${PN} += "${libdir}/python${PYTHON_BASEVERSION}/dist-packages/hwlatdetect.py" -RDEPENDS_${PN} = "python3 " +RDEPENDS_${PN} = "python3-core " RRECOMMENDS_${PN} = "kernel-module-hwlat-detector" -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2 01/19] python: Restructure python packaging and replace it with autopackaging
From: Alejandro HernandezThe reason we have a manifest file for python is that our goal is to keep python-core as small as posible and add other python packages only when the user needs them, hence why we split upstream python into several packages. Although our manifest file has several issues: - Its unorganized and hard to read and understand it for an average human being. - When a new package needs to be added, the user actually has to modify the script that creates the manifest, then call the script to create a new manifest, and then submit a patch for both the script and the manifest, so its a little convoluted. - Git complains every single time a patch is submitted to the manifest, since it violates some of its guidelines. - It changes or may change with every release of python, its impossible to know if the required files for a certain package have changed (it could have more or less dependencies), the only way of doing so would be to install and test them all one by one on separate individual images, and even then we wouldnt know if they require less dependencies, we would just know if an extra dependency is required since it would complain, lets face it, this isnt feasible. - The same thing happens for new packages, if someone wants to add a new package, its dependencies need to be checked manually one by one. This patch fixes those issues, while adding some additional features. Features/Fixes: - A new manifest format is used (JSON), easy to read and understand. This file is parsed by the python recipe and python packages read from here are passed directly to bitbake during parsing time. - It provides an automatic manifest creation task (explained below), which automagically checks for every package dependencies and adds them to the new manifest, hence we will have on each package exactly what that package needs to be run, providing finer granularity. - Dependencies are also checked automagically for new packages (explained below). - Fixes the manifest in the following ways: * python-core should be base and all packages should depend on it, fixes lang, string, codecs, etc. * Fixes packages with repeated files (e.g. bssdb and db, or netclient and mime, and many others). - Sitecustomize was fixed since encoding was deprecated. - The JSON manifest file invalidates bitbake's cache, so if it changes the python package will be rebuilt. - It creates a solution for users that want precompiled bytecode files (*.pyc) INCLUDE_PYCS = "1" can be set by the user on their local.conf to include such files, some argument they get faster boot time, even when the files would be created on their first run?, but they also sometimes give a magic number error and take up space, so we leave it to the user to decide if they want them or not. - Fixes python-core dependencies, e.g. When python is run on an image, it TRIES to import everything it needs, but it doesnt necessarily fails when it doesnt find something, so even if we didnt know, we had errors like (trimmed on purpose): # trying /usr/lib/python2.7/_locale.so # trying /usr/lib/python2.7/lib-dynload/_locale.so # trying /usr/lib/python2.7/_sysconfigdata.so while it didnt complain about _locale it should have imported it, after creating a new manifest with the automated script we get: # trying /usr/lib/python2.7/lib-dynload/_locale.so dlopen("/usr/lib/python2.7/lib-dynload/_locale.so", 2); import _locale # dynamically loaded from /usr/lib/python2.7/lib-dynload/_locale.so How to use (after a new release of python, or maybe before every OE release): - A new task called create_manifest was added to the python package, which may be invoked via: $ bitbake python -c create_manifest This task runs a script on native python on our HOST system, and since the python and python-native packages come from the same source, we can use it to know the dependencies of each module as if we were doing it on an image, this script is called create_manifest.py and in a very simplistic way it does the following: 1. Reads the JSON manifest file and creates a dictionary data structure with all of our python packages, their FILES, RDEPENDS and SUMMARY. 2. Loops through all of them and runs every module listed on them asynchronously, determining every dependency that they have. 3. These module dependencies are then handled, to be able to know which packages contain those files and which should RDEPEND on one another. 4. The data structure that comes out of this, is then used to create a new manifest file which is automatically copied onto the user's python directory replacing the old one. Create_manifest script features: - Handles modules which dont exist anymore (new release for example). - Handles modules that are builtin. - Deals with modules which were not compiled (e.g.
[OE-core] [PATCH v2 03/19] python3: fix RDEPENDS on several recipes, due to non-existent python3 packages
From: Alejandro HernandezSigned-off-by: Alejandro Hernandez --- meta/recipes-core/libxml/libxml2_2.9.7.bb | 2 +- .../bootchart2/bootchart2_0.14.8.bb| 2 +- meta/recipes-devtools/dnf/dnf_2.6.3.bb | 26 -- meta/recipes-devtools/gdb/gdb-cross-canadian.inc | 4 ++-- .../opkg-utils/opkg-utils_0.3.5.bb | 2 +- .../python-numpy/python3-numpy_1.13.3.bb | 2 -- .../recipes-devtools/python/python3-async_0.6.2.bb | 2 +- meta/recipes-devtools/python/python3-git_2.1.7.bb | 2 +- .../recipes-devtools/python/python3-gitdb_0.6.4.bb | 2 +- meta/recipes-devtools/python/python3-pip_9.0.1.bb | 1 - .../python/python3-pygobject_3.26.0.bb | 2 +- .../python/python3-setuptools_36.5.0.bb| 3 --- .../recipes-devtools/python/python3-smmap_0.9.0.bb | 2 +- .../qemu/nativesdk-qemu-helper_1.0.bb | 2 +- meta/recipes-graphics/piglit/piglit_git.bb | 4 ++-- meta/recipes-rt/rt-tests/hwlatdetect_1.1.bb| 2 +- meta/recipes-rt/rt-tests/rt-tests_1.1.bb | 2 +- 17 files changed, 39 insertions(+), 23 deletions(-) diff --git a/meta/recipes-core/libxml/libxml2_2.9.7.bb b/meta/recipes-core/libxml/libxml2_2.9.7.bb index 996e671ae04..1f755fcc1fa 100644 --- a/meta/recipes-core/libxml/libxml2_2.9.7.bb +++ b/meta/recipes-core/libxml/libxml2_2.9.7.bb @@ -39,7 +39,7 @@ inherit autotools pkgconfig binconfig-disabled ptest inherit ${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3native', '', d)} -RDEPENDS_${PN}-ptest += "make ${@bb.utils.contains('PACKAGECONFIG', 'python', 'libgcc python3-core python3-argparse python3-logging python3-shell python3-signal python3-stringold python3-threading python3-unittest ${PN}-python', '', d)}" +RDEPENDS_${PN}-ptest += "make ${@bb.utils.contains('PACKAGECONFIG', 'python', 'libgcc python3-core python3-logging python3-shell python3-stringold python3-threading python3-unittest ${PN}-python', '', d)}" RDEPENDS_${PN}-python += "${@bb.utils.contains('PACKAGECONFIG', 'python', 'python3-core', '', d)}" diff --git a/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb b/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb index a3101351ee7..c047be1e85b 100644 --- a/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb +++ b/meta/recipes-devtools/bootchart2/bootchart2_0.14.8.bb @@ -139,7 +139,7 @@ do_install () { PACKAGES =+ "pybootchartgui" FILES_pybootchartgui += "${PYTHON_SITEPACKAGES_DIR}/pybootchartgui ${bindir}/pybootchartgui" -RDEPENDS_pybootchartgui = "python3-pycairo python3-compression python3-image python3-textutils python3-shell python3-compression python3-codecs" +RDEPENDS_pybootchartgui = "python3-pycairo python3-compression python3-image python3-shell python3-compression python3-codecs" RDEPENDS_${PN}_class-target += "${@bb.utils.contains('DISTRO_FEATURES', 'sysvinit', 'sysvinit-pidof', 'procps', d)}" RDEPENDS_${PN}_class-target += "lsb" DEPENDS_append_class-native = " python3-pycairo-native" diff --git a/meta/recipes-devtools/dnf/dnf_2.6.3.bb b/meta/recipes-devtools/dnf/dnf_2.6.3.bb index 3ed6a74570f..39d9b92f6ec 100644 --- a/meta/recipes-devtools/dnf/dnf_2.6.3.bb +++ b/meta/recipes-devtools/dnf/dnf_2.6.3.bb @@ -26,8 +26,30 @@ DEPENDS += "libdnf librepo libcomps python3-iniparse" EXTRA_OECMAKE = " -DWITH_MAN=0 -DPYTHON_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} -DPYTHON_DESIRED=3" BBCLASSEXTEND = "native nativesdk" -RDEPENDS_${PN}_class-target += "python3-core python3-codecs python3-netclient python3-email python3-threading python3-distutils librepo python3-shell python3-subprocess libcomps libdnf python3-sqlite3 python3-compression python3-rpm python3-iniparse python3-json python3-importlib python3-curses python3-argparse python3-misc python3-gpg" -# Recommend gnupg so that GPG signature check on repository metadata is possible + +RDEPENDS_${PN}_class-target += " \ + python3-core \ + python3-codecs \ + python3-netclient \ + python3-email \ + python3-threading \ + python3-distutils \ + python3-logging \ + python3-fcntl \ + librepo \ + python3-shell \ + libcomps \ + libdnf \ + python3-sqlite3 \ + python3-compression \ + python3-rpm \ + python3-iniparse \ + python3-json \ + python3-curses \ + python3-misc \ + python3-gpg \ + " + RRECOMMENDS_${PN}_class-target += "gnupg" # Create a symlink called 'dnf' as 'make install' does not do it, but diff --git a/meta/recipes-devtools/gdb/gdb-cross-canadian.inc b/meta/recipes-devtools/gdb/gdb-cross-canadian.inc index 3ff19895388..4fc6747d9da 100644 --- a/meta/recipes-devtools/gdb/gdb-cross-canadian.inc +++ b/meta/recipes-devtools/gdb/gdb-cross-canadian.inc @@ -13,9 +13,9 @@ GDBPROPREFIX = "--program-prefix='${TARGET_PREFIX}'" # Overrides PACKAGECONFIG variables in gdb-common.inc PACKAGECONFIG ??= "python readline" PACKAGECONFIG[python] =
[OE-core] [PATCH v2 02/19] python3: Restructure python3 packaging and replace it with autopackaging
From: Alejandro HernandezSee previous commit (python2 version) for more info, since mostly everything applies here as well. Old manifest file had several issues: - Its unorganized and hard to read and understand it for an average human being. - When a new package needs to be added, the user actually has to modify the script that creates the manifest, then call the script to create a new manifest, and then submit a patch for both the script and the manifest, so its a little convoluted. - Git complains every single time a patch is submitted to the manifest, since it violates some of its guidelines. - It changes or may change with every release of python, its impossible to know if the required files for a certain package have changed (it could have more or less dependencies), the only way of doing so would be to install and test them all one by one on separate individual images, and even then we wouldnt know if they require less dependencies, we would just know if an extra dependency is required since it would complain, lets face it, this isnt feasible. - The same thing happens for new packages, if someone wants to add a new package, its dependencies need to be checked manually one by one. Features/Fixes: - A new manifest format is used (JSON), easy to read and understand. This file is parsed by the python recipe and python packages read from here are passed directly to bitbake during parsing time. - It provides an automatic manifest creation task (explained on previous commit), which automagically checks for every package dependencies and adds them to the new manifest, hence we will have on each package exactly what that package needs to be run, providing finer granularity. - Dependencies are also checked automagically for new packages (explained on previous commit). This patch has the same features as the python2 version but it differs in the following ways: - Python3 handles precompiled bytecode files (*.pyc) differently. for this reason and since we are cross compiling, wildcards couldnt be avoided on python3 (See PEP #3147 [1]). Both the manifest and the manifest creation script handle this differently, the manifest for python3 has an extra field for cached files, which is how it lets the user install the cached files or not via : INCLUDE_PYCS = "1" on their local.conf. - Shared libraries nomenclature also changed on python3, so again, we use wildcards to deal with this issue ( See PEP #3149 [2]): - Fixes python3 manifest, python3-core should be base and everything should depend on it, hence several packages were deleted: python3-enum, re, gdbm, subprocess, signal, readline. - When building python3-native it adds as symlink to it called nativepython3, which is then isued by the create_manifest task. - Fixes [YOCTO #11513] while were at it. References: [1] https://www.python.org/dev/peps/pep-3147/ [2] https://www.python.org/dev/peps/pep-3149/ Signed-off-by: Alejandro Hernandez --- .../python/python-3.5-manifest.inc | 283 - .../python/python-native-3.5-manifest.inc | 10 - .../python/python3-native_3.5.3.bb | 30 +- .../python/python3/create_manifest3.py | 321 ++ .../python/python3/get_module_deps3.py | 146 +++ .../python/python3/python3-manifest.json | 1097 meta/recipes-devtools/python/python3_3.5.3.bb | 83 +- scripts/contrib/python/generate-manifest-3.5.py| 433 8 files changed, 1668 insertions(+), 735 deletions(-) delete mode 100644 meta/recipes-devtools/python/python-3.5-manifest.inc delete mode 100644 meta/recipes-devtools/python/python-native-3.5-manifest.inc create mode 100644 meta/recipes-devtools/python/python3/create_manifest3.py create mode 100644 meta/recipes-devtools/python/python3/get_module_deps3.py create mode 100644 meta/recipes-devtools/python/python3/python3-manifest.json delete mode 100755 scripts/contrib/python/generate-manifest-3.5.py diff --git a/meta/recipes-devtools/python/python-3.5-manifest.inc b/meta/recipes-devtools/python/python-3.5-manifest.inc deleted file mode 100644 index 0260e87e75f..000 --- a/meta/recipes-devtools/python/python-3.5-manifest.inc +++ /dev/null @@ -1,283 +0,0 @@ - -# WARNING: This file is AUTO GENERATED: Manual edits will be lost next time I regenerate the file. -# Generator: 'scripts/contrib/python/generate-manifest-3.5.py' Version 20140131 (C) 2002-2010 Michael 'Mickey' Lauer - - - -PROVIDES+="${PN}-2to3 ${PN}-argparse ${PN}-asyncio ${PN}-audio ${PN}-codecs ${PN}-compile ${PN}-compression ${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}-enum ${PN}-fcntl
[OE-core] [PATCH v2 00/19] python improvements
This patchset combines Alejandro Hernandez' new python packaging as well as adding Derek Straka's pypi.bbclass from meta-python. The commits which delete the old manifests will fail git send-email, so this series must be pulled from git. 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 new json-style 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 4469acdf1d0338220f3fe2ecb5e079eea6fda375: lib/oe/utils: remove param_bool() (2017-12-02 11:25:34 +) are available in the git repository at: git://push.yoctoproject.org/poky-contrib timo/pypi-v2 Alejandro Hernandez (5): python: Restructure python packaging and replace it with autopackaging python3: Restructure python3 packaging and replace it with autopackaging python3: fix RDEPENDS on several recipes, due to non-existent python3 packages hwlatdetect: fix RDEPENDS to avoid QA failures python-scons: Remove python-importlib dependency Tim Orling (14): pypi.bbclass: bring in from meta-python python2 create_manifest.py: fix trailing whitespace in json python*-manifest.json: add dependencies, runpy python*-setuptools: upgrade to 38.2.3; 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 3.0.1; use pypi.bbclass meta/classes/pypi.bbclass | 26 + meta/conf/documentation.conf |3 + meta/recipes-core/libxml/libxml2_2.9.7.bb |2 +- .../bootchart2/bootchart2_0.14.8.bb|2 +- meta/recipes-devtools/dnf/dnf_2.6.3.bb | 26 +- meta/recipes-devtools/gdb/gdb-cross-canadian.inc |4 +- .../opkg-utils/opkg-utils_0.3.5.bb |2 +- .../python-numpy/python3-numpy_1.13.3.bb |2 - .../python/python-2.7-manifest.inc | 287 - .../python/python-3.5-manifest.inc | 283 - meta/recipes-devtools/python/python-async.inc |5 +- meta/recipes-devtools/python/python-git.inc| 23 +- meta/recipes-devtools/python/python-gitdb.inc | 16 +- meta/recipes-devtools/python/python-mako.inc | 14 +- .../python/python-native-3.5-manifest.inc | 10 - .../python/python-native_2.7.13.bb | 24 +- 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 - meta/recipes-devtools/python/python-scons_3.0.0.bb | 28 - meta/recipes-devtools/python/python-scons_3.0.1.bb | 18 + meta/recipes-devtools/python/python-setuptools.inc | 39 +- .../python/python-setuptools_36.5.0.bb | 38 - .../python/python-setuptools_38.2.3.bb |9 + meta/recipes-devtools/python/python-six.inc|8 +- meta/recipes-devtools/python/python-smmap.inc |9 +- .../python/python/create_manifest2.py | 277 + .../python/python/get_module_deps2.py | 112 ++ .../python/python/python2-manifest.json| 1044 ++ .../python/python/sitecustomize.py |8 - .../recipes-devtools/python/python3-async_0.6.2.bb |3 -
Re: [OE-core] kernel.bbclass do_sizecheck behaviour changes
On Fri, Dec 8, 2017 at 1:34 PM, Khem Rajwrote: >> >> The size limit for an uncompressed kernel vs a compressed kernel is >> going to be quite different, so defining one size limit and applying >> it to all images doesn't seem logical. > > I was hoping that we are talking about deployed kernels here compressed > sizes can vary widely too > > So may be we can have a hook to define which image types should be monitored > and what the limits are for individual type We could do a lot of things and add a lot of complexity. However based on the fact that the simplest test has been broken for some time and no-one noticed, the evidence is that the kernel image size check isn't a widely used feature (and the kernel image size check with multiple kernel image types even less so, if at all) and so probably shouldn't be the focus of our efforts. -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] kernel.bbclass do_sizecheck behaviour changes
On Thu, Dec 7, 2017 at 11:44 AM Andre McCurdywrote: > On Thu, Dec 7, 2017 at 11:20 AM, Khem Raj wrote: > > On Thu, Dec 7, 2017 at 8:15 AM, Mike Crowe wrote: > >> I discovered today that our kernel size check has been ineffective > since we > >> took 7384d2831c713ac5999aca83c312154dc15cec56 from 2014 which changed > the > >> units for KERNEL_IMAGE_MAXSIZE from bytes to kilobytes. > >> > >> However whilst fixing that, I also noticed that > >> 849b67b2e4820564b5e5c9bd4bb293c44351c5f3 in 2016 changed the > consequences > >> of exceeding the size from being fatal to merely a warning. > >> > >> This second change in behaviour wasn't described in the commit message, > so > >> I'm not sure whether it was intentional. I can believe that when > generating > >> multiple kernel image types it may not be essential that they all fit, > but > >> I don't really know what the use case for the feature is. > >> > >> I could fix this by adding to kernel.bbclass something like: > >> > >> KERNEL_IMAGE_MAXSIZE_CONSEQUENCE ?= "warn" > >> > >> and then using it when delivering the bad news so that recipes can > override > >> it if they wish. > >> > >> Alternatively, I could treat the error as being fatal if none of the > kernel > >> images fit within the required size. This would degenerate to the old > >> behaviour automatically if KERNEL_IMAGETYPES contains only one entry. > > That sounds like a good solution. > > >> Does one of these solutions appeal, or is there another even better > >> solution? > > > > I think default should be a warning with a possibility to be turned > > into an error > > if user wishes too. I think if you are generating multiple kernel types > then you > > will use all of them somewhere, so I would say if the size of one of > > them excedes > > the set limit them break the build. > > The size limit for an uncompressed kernel vs a compressed kernel is > going to be quite different, so defining one size limit and applying > it to all images doesn't seem logical. I was hoping that we are talking about deployed kernels here compressed sizes can vary widely too So may be we can have a hook to define which image types should be monitored and what the limits are for individual type > > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH V4 1/2] imagefeatures.py: Added testcase to track IMAGE_GEN_DEBUGFS
From: Humberto IbarraAdd new testcase to check varibale IMAGE_GEN_DEBUGFS. Test makes sure that debug filesystem is created accordingly. [YOCTO #10906] Signed-off-by: Humberto Ibarra --- meta/lib/oeqa/selftest/cases/imagefeatures.py | 21 + 1 file changed, 21 insertions(+) diff --git a/meta/lib/oeqa/selftest/cases/imagefeatures.py b/meta/lib/oeqa/selftest/cases/imagefeatures.py index 0ffb686..88fdf96 100644 --- a/meta/lib/oeqa/selftest/cases/imagefeatures.py +++ b/meta/lib/oeqa/selftest/cases/imagefeatures.py @@ -4,6 +4,7 @@ from oeqa.core.decorator.oeid import OETestID from oeqa.utils.sshcontrol import SSHControl import os import json +import glob class ImageFeatures(OESelftestTestCase): @@ -238,3 +239,23 @@ USERADD_GID_TABLES += "files/static-group" """ self.write_config(config) bitbake("core-image-base") + +def test_image_gen_debugfs(self): +""" +Summary: Check debugfs generation +Expected:1. core-image-minimal can be build with IMAGE_GEN_DEBUGFS variable set + 2. debug filesystem is created when variable set +Product: oe-core +Author: Humberto Ibarra +""" + +image_name = 'core-image-minimal' +deploy_dir_image = get_bb_var('DEPLOY_DIR_IMAGE') + +features = 'IMAGE_GEN_DEBUGFS = "1"\n' +features += 'IMAGE_FSTYPES_DEBUGFS = "tar.bz2"' +self.write_config(features) + +bitbake(image_name) +debug_files = glob.glob(os.path.join(deploy_dir_image,"*-dbg.rootfs.tar.bz2")) +self.assertNotEqual(len(debug_files), 0, 'debug filesystem not generated') -- 2.7.5 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH V4 2/2] imagefeatures.py: Add id to tests missing it
This commit adds an id to the following tests: - test_useradd_static - test_image_gen_debugfs Signed-off-by: Jair Gonzalez--- meta/lib/oeqa/selftest/cases/imagefeatures.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/meta/lib/oeqa/selftest/cases/imagefeatures.py b/meta/lib/oeqa/selftest/cases/imagefeatures.py index 88fdf96..6623277 100644 --- a/meta/lib/oeqa/selftest/cases/imagefeatures.py +++ b/meta/lib/oeqa/selftest/cases/imagefeatures.py @@ -230,6 +230,7 @@ class ImageFeatures(OESelftestTestCase): self.assertTrue(os.path.exists(image_path), "%s image %s doesn't exist" % (itype, image_path)) +@OETestID(1955) def test_useradd_static(self): config = """ USERADDEXTENSION = "useradd-staticids" @@ -240,6 +241,7 @@ USERADD_GID_TABLES += "files/static-group" self.write_config(config) bitbake("core-image-base") +@OETestID(1956) def test_image_gen_debugfs(self): """ Summary: Check debugfs generation -- 2.7.5 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH V4 0/2] imagefeatures.py: Added testcase to track IMAGE_GEN_DEBUGFS
Patch to add a testcase for IMAGE_GEN_DEBUGFS variable. Checks if debug filesystem was created. Changed on V4: - Rebased with master. - Added id to tests missing it. The following changes since commit 4469acdf1d0338220f3fe2ecb5e079eea6fda375: lib/oe/utils: remove param_bool() (2017-12-02 11:25:34 +) are available in the git repository at: git://git.yoctoproject.org/poky-contrib jairglez/ImageGenDebugfs http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=jairglez/ImageGenDebugfs Humberto Ibarra (1): imagefeatures.py: Added testcase to track IMAGE_GEN_DEBUGFS Jair Gonzalez (1): imagefeatures.py: Add id to tests missing it meta/lib/oeqa/selftest/cases/imagefeatures.py | 23 +++ 1 file changed, 23 insertions(+) -- 2.7.5 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] systemd: create wheel sysuser group offline
On Thu, Dec 7, 2017 at 10:44 PM, Yi Zhaowrote: > 在 2017年11月10日 13:54, Andre McCurdy 写道: >> >> The default systemd-tmpfiles config file expects to be able to create >> files etc belonging to the wheel system group. Currently the wheel >> group is created at run time by systemd-sysusers, but that doesn't >> happen if systemd-sysusers is disabled (as it currently is by default >> when building with musl libc). > > For sysvinit, we follow the Debian rule which doesn't have wheel group in > the system. Should we have to break this rule for systemd? Is this necessary > to use this group in systemd? The default systemd-tmpfiles config file expects to be able to create files etc belonging to the wheel system group. Unless we patch or over-ride the default systemd-tmpfiles config file to change that then yes, the wheel group appears to be necessary for systemd. -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH] lrzsz: remove
On Fri, 2017-12-08 at 17:05 +, Burton, Ross wrote: > I've had people from the past What are you suggesting? ;-) > suggest that this is still useful for deeply embedded environments > where a serial line is the only form of communication, so I'm > retracting this and will instead clean up dependencies so it doesn't > end up in all images. To be clear, if you have a device you're doing board bringup on and serial works but network doesn't this does provide a useful way to get files in/out. That isn't an entirely unknown situation for OE users. It would also potentially allow us to improve the serial test runner used by poky-tiny. Cheers, Richard -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [PATCH v2] perl: native modules will not trigger build perl for target.
Hello, I would like to request feedback about my patch. Br, Krzysztof Taborski -Original Message- From: Krzysztof Taborski [mailto:taborskikrzysz...@gmail.com] Sent: Monday, December 04, 2017 7:17 PM To: openembedded-core@lists.openembedded.org Cc: Krzysztof Taborski Subject: [OE-core][PATCH v2] perl: native modules will not trigger build perl for target. Currently building perl-native modules triggers build perl for target due to PACKAGES_DYNAMIC regex. This commit will cause, that perl native modules will trigger perl-native build. Signed-off-by: Krzysztof Taborski--- meta/recipes-devtools/perl/perl-native_5.24.1.bb | 2 ++ meta/recipes-devtools/perl/perl_5.24.1.bb| 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/meta/recipes-devtools/perl/perl-native_5.24.1.bb b/meta/recipes-devtools/perl/perl-native_5.24.1.bb index 48113f05a9..a81dc4d703 100644 --- a/meta/recipes-devtools/perl/perl-native_5.24.1.bb +++ b/meta/recipes-devtools/perl/perl-native_5.24.1.bb @@ -134,3 +134,5 @@ EOF # Fix the path in sstate SSTATE_SCAN_FILES += "*.pm *.pod *.h *.pl *.sh" +PACKAGES_DYNAMIC_class-native += "^perl-module-.*native$" + diff --git a/meta/recipes-devtools/perl/perl_5.24.1.bb b/meta/recipes-devtools/perl/perl_5.24.1.bb index 6b27b22d22..3dc7805da9 100644 --- a/meta/recipes-devtools/perl/perl_5.24.1.bb +++ b/meta/recipes-devtools/perl/perl_5.24.1.bb @@ -323,7 +323,7 @@ python split_perl_packages () { d.setVar(d.expand("RRECOMMENDS_${PN}-modules"), ' '.join(packages)) } -PACKAGES_DYNAMIC += "^perl-module-.*" +PACKAGES_DYNAMIC += "^perl-module-.*(?http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 1/2] packagegroups: don't mention lrzsz explicity
There's no need to explicitly depend on lrzsz in these core packagegroups when it's rarely required. Signed-off-by: Ross Burton--- meta/recipes-core/packagegroups/packagegroup-base.bb| 3 +-- meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb | 1 - meta/recipes-core/packagegroups/packagegroup-self-hosted.bb | 1 - meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb| 1 - 4 files changed, 1 insertion(+), 5 deletions(-) diff --git a/meta/recipes-core/packagegroups/packagegroup-base.bb b/meta/recipes-core/packagegroups/packagegroup-base.bb index 313628e6c79..87f193db06f 100644 --- a/meta/recipes-core/packagegroups/packagegroup-base.bb +++ b/meta/recipes-core/packagegroups/packagegroup-base.bb @@ -358,8 +358,7 @@ RRECOMMENDS_packagegroup-base-ipv6 = "\ SUMMARY_packagegroup-base-serial = "Serial port support" RDEPENDS_packagegroup-base-serial = "\ -setserial \ -lrzsz " +setserial" SUMMARY_packagegroup-base-phone = "Cellular telephony (voice) support" RDEPENDS_packagegroup-base-phone = "\ diff --git a/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb b/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb index 0d2da866132..1240212fc7e 100644 --- a/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb +++ b/meta/recipes-core/packagegroups/packagegroup-core-tools-testapps.bb @@ -36,7 +36,6 @@ X11TOOLS = "\ RDEPENDS_${PN} = "\ blktool \ -lrzsz \ ${KEXECTOOLS} \ alsa-utils-amixer \ alsa-utils-aplay \ diff --git a/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb b/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb index adb0c56c3a5..bfdff3bf22f 100644 --- a/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb +++ b/meta/recipes-core/packagegroups/packagegroup-self-hosted.bb @@ -126,7 +126,6 @@ RDEPENDS_packagegroup-self-hosted-extended = "\ libaio \ libusb1 \ libxml2 \ -lrzsz \ lsof \ lzo \ man \ diff --git a/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb b/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb index e1f34d5af11..b37d4035989 100644 --- a/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb +++ b/meta/recipes-extended/packagegroups/packagegroup-core-lsb.bb @@ -60,7 +60,6 @@ RDEPENDS_packagegroup-core-sys-extended = "\ hdparm \ lighttpd \ libaio \ -lrzsz \ lzo \ mc \ mc-fish \ -- 2.11.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 2/2] minicom: recommend lrzsz
minicom calls out to lrzsz to peform X/Y/ZMODEM transfers, so add a recommends. Signed-off-by: Ross Burton--- meta/recipes-extended/minicom/minicom_2.7.1.bb | 1 + 1 file changed, 1 insertion(+) diff --git a/meta/recipes-extended/minicom/minicom_2.7.1.bb b/meta/recipes-extended/minicom/minicom_2.7.1.bb index 1a31a872d6b..e6afe2b6555 100644 --- a/meta/recipes-extended/minicom/minicom_2.7.1.bb +++ b/meta/recipes-extended/minicom/minicom_2.7.1.bb @@ -27,3 +27,4 @@ do_install() { for d in doc extras man lib src; do make -C $d DESTDIR=${D} install; done } +RRECOMMENDS_${PN} += "lrzsz" -- 2.11.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH v2] classes/distutils: remove dependency on env
When building a setuptools-based recipe for the nativesdk, Bitbake complains about the missing dependency on 'env' (normally provided by coreutils): WARNING: nativesdk-foobar-baz-2.1.0-r0 do_package_qa: QA Issue: /opt/foobar-os/sysroots/x86_64-foobarsdk-linux/usr/bin/foobar_baz contained in package nativesdk-foobar-baz requires /opt/foobar-os/sysroots/x86_64-foobarsdk-linux/usr/bin/env, but no providers found in RDEPENDS_nativesdk-foobar-baz? [file-rdeps] That's because distutils.bbclass modifies the shebang line of all installed Python scripts, which would otherwise point to python-native's Python binary instead of the target's Python binary. Doing so, it introduces a dependency on 'env', which should not be needed as we know full well which Python binary we want. This commit replaces the call to env with a direct call to the installed Python binary. Signed-off-by: Noé Rubinstein--- meta/classes/distutils.bbclass | 4 ++-- meta/classes/distutils3.bbclass | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/meta/classes/distutils.bbclass b/meta/classes/distutils.bbclass index 1930c35292..9f048000ce 100644 --- a/meta/classes/distutils.bbclass +++ b/meta/classes/distutils.bbclass @@ -44,7 +44,7 @@ distutils_do_install() { if test -e ${D}${bindir} ; then for i in ${D}${bindir}/* ; do \ if [ ${PN} != "${BPN}-native" ]; then - sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${USRBINPATH}/env\ python:g $i + sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${USRBINPATH}/python:g $i fi sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i done @@ -53,7 +53,7 @@ distutils_do_install() { if [ -e ${D}${sbindir} ]; then for i in ${D}${sbindir}/* ; do \ if [ ${PN} != "${BPN}-native" ]; then - sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${USRBINPATH}/env\ python:g $i + sed -i -e s:${STAGING_BINDIR_NATIVE}/python-native/python:${USRBINPATH}/python:g $i fi sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i done diff --git a/meta/classes/distutils3.bbclass b/meta/classes/distutils3.bbclass index 6c30306882..d255bcf225 100644 --- a/meta/classes/distutils3.bbclass +++ b/meta/classes/distutils3.bbclass @@ -47,14 +47,14 @@ distutils3_do_install() { if test -e ${D}${bindir} ; then for i in ${D}${bindir}/* ; do \ -sed -i -e s:${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}:${USRBINPATH}/env\ ${PYTHON_PN}:g $i +sed -i -e s:${STAGING_BINDIR_NATIVE}/${PYTHON_PN}-native/${PYTHON_PN}:${USRBINPATH}/${PYTHON_PN}:g $i sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i done fi if test -e ${D}${sbindir}; then for i in ${D}${sbindir}/* ; do \ -sed -i -e s:${STAGING_BINDIR_NATIVE}/python-${PYTHON_PN}/${PYTHON_PN}:${USRBINPATH}/env\ ${PYTHON_PN}:g $i +sed -i -e s:${STAGING_BINDIR_NATIVE}/python-${PYTHON_PN}/${PYTHON_PN}:${USRBINPATH}/${PYTHON_PN}:g $i sed -i -e s:${STAGING_BINDIR_NATIVE}:${bindir}:g $i done fi -- 2.15.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 1/3] image_types: Remove ELF type
As warned in a proir commit, it's time to remove the elf image type, it is not long used anywhere (that I am aware of) and the mkelfimage tool has been removed from the upstream coreboot code base. Signed-off-by: Saul Wold--- meta/classes/image_types.bbclass | 13 - 1 file changed, 13 deletions(-) diff --git a/meta/classes/image_types.bbclass b/meta/classes/image_types.bbclass index d09d1277eaa..7bb9292be35 100644 --- a/meta/classes/image_types.bbclass +++ b/meta/classes/image_types.bbclass @@ -147,16 +147,6 @@ IMAGE_CMD_cpio () { fi } -ELF_KERNEL ?= "${DEPLOY_DIR_IMAGE}/${KERNEL_IMAGETYPE}" -ELF_APPEND ?= "ramdisk_size=32768 root=/dev/ram0 rw console=" - -IMAGE_CMD_elf () { - test -f ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.elf && rm -f ${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.elf - mkelfImage --kernel=${ELF_KERNEL} --initrd=${IMGDEPLOYDIR}/${IMAGE_LINK_NAME}.cpio.gz --output=${IMGDEPLOYDIR}/${IMAGE_NAME}${IMAGE_NAME_SUFFIX}.elf --append='${ELF_APPEND}' ${EXTRA_IMAGECMD} -} - -IMAGE_TYPEDEP_elf = "cpio.gz" - UBI_VOLNAME ?= "${MACHINE}-rootfs" multiubi_mkfs() { @@ -230,7 +220,6 @@ EXTRA_IMAGECMD_ext2 ?= "-i 4096" EXTRA_IMAGECMD_ext3 ?= "-i 4096" EXTRA_IMAGECMD_ext4 ?= "-i 4096" EXTRA_IMAGECMD_btrfs ?= "-n 4096" -EXTRA_IMAGECMD_elf ?= "" do_image_jffs2[depends] += "mtd-utils-native:do_populate_sysroot" do_image_cramfs[depends] += "util-linux-native:do_populate_sysroot" @@ -242,7 +231,6 @@ do_image_squashfs[depends] += "squashfs-tools-native:do_populate_sysroot" do_image_squashfs_xz[depends] += "squashfs-tools-native:do_populate_sysroot" do_image_squashfs_lzo[depends] += "squashfs-tools-native:do_populate_sysroot" do_image_squashfs_lz4[depends] += "squashfs-tools-native:do_populate_sysroot" -do_image_elf[depends] += "virtual/kernel:do_populate_sysroot mkelfimage-native:do_populate_sysroot" do_image_ubi[depends] += "mtd-utils-native:do_populate_sysroot" do_image_ubifs[depends] += "mtd-utils-native:do_populate_sysroot" do_image_multiubi[depends] += "mtd-utils-native:do_populate_sysroot" @@ -261,7 +249,6 @@ IMAGE_TYPES = " \ ubi ubifs multiubi \ tar tar.gz tar.bz2 tar.xz tar.lz4 \ cpio cpio.gz cpio.xz cpio.lzma cpio.lz4 \ -elf \ wic wic.gz wic.bz2 wic.lzma \ container \ " -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 3/3] oeqa/qemu: remove elf image type
Since we are depercating the ELF image type, we should not test it here either. Signed-off-by: Saul Wold--- meta/lib/oeqa/core/target/qemu.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/lib/oeqa/core/target/qemu.py b/meta/lib/oeqa/core/target/qemu.py index d359bf9fe35..bf3b633f047 100644 --- a/meta/lib/oeqa/core/target/qemu.py +++ b/meta/lib/oeqa/core/target/qemu.py @@ -9,7 +9,7 @@ import time from .ssh import OESSHTarget from oeqa.utils.qemurunner import QemuRunner -supported_fstypes = ['ext3', 'ext4', 'cpio.gz', 'wic', 'elf'] +supported_fstypes = ['ext3', 'ext4', 'cpio.gz', 'wic'] class OEQemuTarget(OESSHTarget): def __init__(self, logger, ip, server_ip, timeout=300, user='root', -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH 2/3] mkelfimage: Remove un-needed recipe
As we are removing the ELF image type, we can now removed this older mkelfimage recipe also, we reach back 3+ years in the coreboot git repo to retrieve the source. This tool needs updating everything we change binutils, which would normally be done by the upstream, but that is now gone. [YOCTO #11967] Signed-off-by: Saul Wold--- .../mkelfimage/mkelfimage/convert.bin.c| 348 - .../mkelfimage/mkelfimage/cross-compile.patch | 106 --- .../mkelfimage/fix-makefile-to-find-libz.patch | 33 -- meta/recipes-devtools/mkelfimage/mkelfimage_git.bb | 48 --- 4 files changed, 535 deletions(-) delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage/convert.bin.c delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage/cross-compile.patch delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage/fix-makefile-to-find-libz.patch delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage_git.bb diff --git a/meta/recipes-devtools/mkelfimage/mkelfimage/convert.bin.c b/meta/recipes-devtools/mkelfimage/mkelfimage/convert.bin.c deleted file mode 100644 index cb6faa8c6cb..000 --- a/meta/recipes-devtools/mkelfimage/mkelfimage/convert.bin.c +++ /dev/null @@ -1,348 +0,0 @@ -0xfc, 0xfa, 0xa3, 0x9c, 0x02, 0x01, 0x00, 0x89, 0x1d, 0xa0, 0x02, 0x01, 0x00, 0x83, 0xfc, 0x00, -0x74, 0x09, 0x8b, 0x44, 0x24, 0x04, 0xa3, 0xa4, 0x02, 0x01, 0x00, 0x8b, 0x25, 0x80, 0x14, 0x01, -0x00, 0x6a, 0x00, 0x9d, 0x31, 0xc0, 0xbf, 0xb8, 0x15, 0x01, 0x00, 0xb9, 0x44, 0x58, 0x01, 0x00, -0x29, 0xf9, 0xfc, 0xf3, 0xaa, 0xbe, 0xba, 0x02, 0x01, 0x00, 0xbf, 0x00, 0x10, 0x02, 0x00, 0xb9, -0x70, 0x00, 0x00, 0x00, 0xf3, 0xa4, 0x0f, 0x01, 0x15, 0xb4, 0x02, 0x01, 0x00, 0x0f, 0x01, 0x1d, -0xae, 0x02, 0x01, 0x00, 0xb8, 0x18, 0x00, 0x00, 0x00, 0x8e, 0xd8, 0x8e, 0xc0, 0x8e, 0xe0, 0x8e, -0xe8, 0x8e, 0xd0, 0x68, 0x90, 0x14, 0x01, 0x00, 0xff, 0x35, 0xa4, 0x02, 0x01, 0x00, 0xff, 0x35, -0xa0, 0x02, 0x01, 0x00, 0xff, 0x35, 0x9c, 0x02, 0x01, 0x00, 0xe8, 0xe3, 0x08, 0x00, 0x00, 0x89, -0xc6, 0x83, 0xc4, 0x10, 0x6a, 0x00, 0x9d, 0x31, 0xdb, 0xa1, 0xac, 0x14, 0x01, 0x00, 0x83, 0xf8, -0x01, 0x74, 0x13, 0x31, 0xc0, 0x31, 0xc9, 0x31, 0xd2, 0x31, 0xff, 0x31, 0xed, 0x6a, 0x10, 0xa1, -0xa8, 0x14, 0x01, 0x00, 0x50, 0xcb, 0x89, 0xf0, 0xbe, 0x2a, 0x03, 0x01, 0x00, 0xbf, 0x00, 0x20, -0x02, 0x00, 0xb9, 0x20, 0x00, 0x00, 0x00, 0xf3, 0xa4, 0x89, 0xc6, 0x0f, 0x01, 0x15, 0x2a, 0x03, -0x01, 0x00, 0x31, 0xc0, 0x0f, 0xba, 0xe8, 0x05, 0x0f, 0x22, 0xe0, 0xbf, 0x00, 0x30, 0x02, 0x00, -0x31, 0xc0, 0xb9, 0x00, 0x18, 0x00, 0x00, 0xf3, 0xab, 0xbf, 0x00, 0x30, 0x02, 0x00, 0x8d, 0x87, -0x07, 0x10, 0x00, 0x00, 0x89, 0x07, 0xbf, 0x00, 0x40, 0x02, 0x00, 0x8d, 0x87, 0x07, 0x10, 0x00, -0x00, 0xb9, 0x04, 0x00, 0x00, 0x00, 0x89, 0x07, 0x05, 0x00, 0x10, 0x00, 0x00, 0x83, 0xc7, 0x08, -0x49, 0x75, 0xf3, 0xbf, 0x00, 0x50, 0x02, 0x00, 0xb8, 0x83, 0x01, 0x00, 0x00, 0xb9, 0x00, 0x08, -0x00, 0x00, 0x89, 0x07, 0x05, 0x00, 0x00, 0x20, 0x00, 0x83, 0xc7, 0x08, 0x49, 0x75, 0xf3, 0xb8, -0x00, 0x30, 0x02, 0x00, 0x0f, 0x22, 0xd8, 0xb9, 0x80, 0x00, 0x00, 0xc0, 0x0f, 0x32, 0x0f, 0xba, -0xe8, 0x08, 0x0f, 0x30, 0x6a, 0x10, 0xa1, 0xa8, 0x14, 0x01, 0x00, 0x50, 0x31, 0xc0, 0x0f, 0xba, -0xe8, 0x1f, 0x0f, 0xba, 0xe8, 0x00, 0x0f, 0x22, 0xc0, 0xcb, 0x55, 0x89, 0xe5, 0x53, 0x56, 0x57, -0x8b, 0x7d, 0x08, 0x81, 0xef, 0x00, 0x00, 0x01, 0x00, 0x8b, 0x75, 0x0c, 0x56, 0xe8, 0xfc, 0x00, -0x00, 0x00, 0x66, 0x31, 0xdb, 0x66, 0xb8, 0x20, 0xe8, 0x00, 0x00, 0x66, 0xba, 0x50, 0x41, 0x4d, -0x53, 0x66, 0xb9, 0x14, 0x00, 0x00, 0x00, 0xcd, 0x15, 0x72, 0x18, 0x66, 0x3d, 0x50, 0x41, 0x4d, -0x53, 0x75, 0x10, 0x66, 0x4e, 0x66, 0x85, 0xf6, 0x74, 0x09, 0x83, 0xc7, 0x14, 0x66, 0x83, 0xfb, -0x00, 0x75, 0xd2, 0x66, 0xe8, 0x82, 0x00, 0x00, 0x00, 0x58, 0x29, 0xf0, 0x5f, 0x5e, 0x5b, 0x89, -0xec, 0x5d, 0xc3, 0x53, 0x56, 0x57, 0xe8, 0xb3, 0x00, 0x00, 0x00, 0xf9, 0x31, 0xc9, 0x31, 0xd2, -0xb8, 0x01, 0xe8, 0xcd, 0x15, 0x72, 0x28, 0x83, 0xf9, 0x00, 0x75, 0x09, 0x83, 0xfa, 0x00, 0x75, -0x04, 0x89, 0xc1, 0x89, 0xda, 0x66, 0x81, 0xe2, 0xff, 0xff, 0x00, 0x00, 0x66, 0xc1, 0xe2, 0x06, -0x66, 0x89, 0xd0, 0x66, 0x81, 0xe1, 0xff, 0xff, 0x00, 0x00, 0x66, 0x01, 0xc8, 0xeb, 0x03, 0x66, -0x31, 0xc0, 0x66, 0xe8, 0x33, 0x00, 0x00, 0x00, 0x5f, 0x5e, 0x5b, 0xc3, 0x53, 0x56, 0x57, 0xe8, -0x6a, 0x00, 0x00, 0x00, 0xb4, 0x88, 0xcd, 0x15, 0x66, 0x25, 0xff, 0xff, 0x00, 0x00, 0x66, 0xe8, -0x17, 0x00, 0x00, 0x00, 0x5f, 0x5e, 0x5b, 0xc3, 0xe8, 0x51, 0x00, 0x00, 0x00, 0xcd, 0x12, 0x89, -0xc1, 0x66, 0xe8, 0x04, 0x00, 0x00, 0x00, 0x66, 0x89, 0xc8, 0xc3, 0xfa, 0x2e, 0x67, 0x0f, 0x01, -0x15, 0xb4, 0x02, 0x00, 0x00, 0x0f, 0x20, 0xc0, 0x66, 0x83, 0xc8, 0x01, 0x0f, 0x22, 0xc0, 0x66, -0xea, 0x37, 0x02, 0x01, 0x00, 0x10, 0x00, 0xb8, 0x18, 0x00, 0x00, 0x00, 0x8e, 0xd8, 0x8e, 0xc0, -0x8e, 0xd0, 0x81, 0xc4, 0x00, 0x00, 0x01, 0x00, 0x31, 0xc0, 0x8e, 0xe0, 0x8e, 0xe8, 0x58, 0x05, -0x00, 0x00, 0x01, 0x00, 0x50, 0x2e, 0x0f, 0x01, 0x1d, 0xae, 0x02, 0x01, 0x00, 0xc3, 0x58,
[OE-core] [PATCH 0/3] Remove ELF Image Type
The ELF Image type is not currently used any more by the coreboot project which was the original creator of this image type along with the mkelfimage tool. The tool was removed from the coreboot repo back in 2014 and has no updates. Each time binutils changes, the mkelfimage tool breaks and requires a patch to the convert.bin.c special header file. Seeing as there have been no objections, please consider merging this patch set! Sau! Saul Wold (3): image_types: Remove ELF type mkelfimage: Remove un-needed recipe oeqa/qemu: remove elf image type meta/classes/image_types.bbclass | 13 - meta/lib/oeqa/core/target/qemu.py | 2 +- .../mkelfimage/mkelfimage/convert.bin.c| 348 - .../mkelfimage/mkelfimage/cross-compile.patch | 106 --- .../mkelfimage/fix-makefile-to-find-libz.patch | 33 -- meta/recipes-devtools/mkelfimage/mkelfimage_git.bb | 48 --- 6 files changed, 1 insertion(+), 549 deletions(-) delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage/convert.bin.c delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage/cross-compile.patch delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage/fix-makefile-to-find-libz.patch delete mode 100644 meta/recipes-devtools/mkelfimage/mkelfimage_git.bb -- 2.13.6 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
[OE-core] [PATCH] kernel.bbclass: Fix do_sizecheck behaviour
During the introduction of support for multiple kernel image types in 849b67b2e4820564b5e5c9bd4bb293c44351c5f3, do_sizecheck was changed to only warn if any kernel was bigger than ${KERNEL_IMAGE_MAXSIZE}. (Well, it tried to warn - it turns out that there's no function called "warn", it should be "bbwarn".) The previous behaviour had been to fail the build if the single kernel image did not fit. It seems possible that people might be generating both compressed and uncompressed kernels and only really care whether the compressed one fits. This means that we shouldn't just always fail if any of the images are too large. So, let's warn (correctly this time) on every image that is too large, but only ultimately fail if no image will fit. The build will also fail if ${KERNEL_IMAGETYPES} is empty, but I hope that no-one needs to do that. While we're here correct a typo in the KERNEL_IMAGE_MAXSIZE validity check. Signed-off-by: Mike Crowe--- meta/classes/kernel.bbclass | 14 +++--- 1 file changed, 11 insertions(+), 3 deletions(-) Discussion: http://lists.openembedded.org/pipermail/openembedded-core/2017-December/145376.html diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 756707a3c2..14f41e9b17 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -595,19 +595,27 @@ do_strip[dirs] = "${B}" addtask strip before do_sizecheck after do_kernel_link_images # Support checking the kernel size since some kernels need to reside in partitions -# with a fixed length or there is a limit in transferring the kernel to memory +# with a fixed length or there is a limit in transferring the kernel to memory. +# If more than one image type is enabled, warn on any that don't fit but only fail +# if none fit. do_sizecheck() { if [ ! -z "${KERNEL_IMAGE_MAXSIZE}" ]; then invalid=`echo ${KERNEL_IMAGE_MAXSIZE} | sed 's/[0-9]//g'` if [ -n "$invalid" ]; then - die "Invalid KERNEL_IMAGE_MAXSIZE: ${KERNEL_IMAGE_MAXSIZE}, should be an integerx (The unit is Kbytes)" + die "Invalid KERNEL_IMAGE_MAXSIZE: ${KERNEL_IMAGE_MAXSIZE}, should be an integer (The unit is Kbytes)" fi + at_least_one_fits= for type in ${KERNEL_IMAGETYPES} ; do size=`du -ks ${B}/${KERNEL_OUTPUT_DIR}/$type | awk '{print $1}'` if [ $size -ge ${KERNEL_IMAGE_MAXSIZE} ]; then - warn "This kernel $type (size=$size(K) > ${KERNEL_IMAGE_MAXSIZE}(K)) is too big for your device. Please reduce the size of the kernel by making more of it modular." + bbwarn "This kernel $type (size=$size(K) > ${KERNEL_IMAGE_MAXSIZE}(K)) is too big for your device." + else + at_least_one_fits=y fi done + if [ -z "$at_least_one_fits" ]; then + die "All kernel images are too big for your device. Please reduce the size of the kernel by making more of it modular." + fi fi } do_sizecheck[dirs] = "${B}" -- 2.11.0 -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] kernel.bbclass do_sizecheck behaviour changes
On Thursday 07 December 2017 at 11:44:12 -0800, Andre McCurdy wrote: > On Thu, Dec 7, 2017 at 11:20 AM, Khem Rajwrote: > > On Thu, Dec 7, 2017 at 8:15 AM, Mike Crowe wrote: > >> I also noticed that > >> 849b67b2e4820564b5e5c9bd4bb293c44351c5f3 in 2016 changed the consequences > >> of exceeding the size from being fatal to merely a warning. > >> > >> This second change in behaviour wasn't described in the commit message, so > >> I'm not sure whether it was intentional. I can believe that when generating > >> multiple kernel image types it may not be essential that they all fit, but > >> I don't really know what the use case for the feature is. > >> > >> I could fix this by adding to kernel.bbclass something like: > >> > >> KERNEL_IMAGE_MAXSIZE_CONSEQUENCE ?= "warn" > >> > >> and then using it when delivering the bad news so that recipes can override > >> it if they wish. > >> > >> Alternatively, I could treat the error as being fatal if none of the kernel > >> images fit within the required size. This would degenerate to the old > >> behaviour automatically if KERNEL_IMAGETYPES contains only one entry. > > That sounds like a good solution. Thanks. I've implemented that and it seems to work. I shall provide a patch shortly. However, despite appearances it seems that 849b67b2e4820564b5e5c9bd4bb293c44351c5f3 did accidentally make exceeding KERNEL_IMAGE_MAXSIZE fatal because there's no such function as "warn". I think that it should have been "bbwarn": run.do_sizecheck.12393: line 119: warn: command not found Mike. -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [OE-Core][PATCH 1/1] package_manager.py: fix opkg custom config path
An even easier solution would be to use oe.path.join, which solely exists to join paths without the "interesting" absolute path quirk of os.path.join. Ross On 8 December 2017 at 10:48, André Draszikwrote: > On Thu, 2017-12-07 at 16:16 -0500, Gaël PORTAY wrote: > > The opkg custom config feature has moved to the package_manager python > > module. This feature is broken since commit 19c538f57c. > > > > The python function os.path.join joins path components. If a component > > is an absolute path, all previous components are thrown away. > > > > The sysconfdir variable is an absolute path component. It causes the > > leading target rootfs component to be removed. As a result, the > > package-manager module tries to write in the real root filesystem > > instead of the temporary work directory for the rootfs image. > > > > This fixes the issue by prepending the target rootfs component using the > > string concatenation operator when the file is opened (without using > > os.path module). > > > > Cc: Ash Charles > > Signed-off-by: Gaël PORTAY > > --- > > meta/lib/oe/package_manager.py | 5 ++--- > > 1 file changed, 2 insertions(+), 3 deletions(-) > > > > diff --git a/meta/lib/oe/package_manager.py > > b/meta/lib/oe/package_manager.py > > index 6cbb61fd84..ac29593f88 100644 > > --- a/meta/lib/oe/package_manager.py > > +++ b/meta/lib/oe/package_manager.py > > @@ -953,12 +953,11 @@ class OpkgPM(OpkgDpkgPM): > > """ > > if (self.d.getVar('FEED_DEPLOYDIR_BASE_URI') or "") != "": > > for arch in self.pkg_archs.split(): > > -cfg_file_name = os.path.join(self.target_rootfs, > > - > self.d.getVar("sysconfdi > > r"), > > +cfg_file_name = > > os.path.join(self.d.getVar("sysconfdir", True), > > The 'True' argument has been removed from all getVar() calls, please don't > re-introduce it. > > > > "opkg", > > "local-%s-feed.conf" % > > arch) > > > > -with open(cfg_file_name, "w+") as cfg_file: > > +with open(self.target_rootfs + cfg_file_name, "w+") > > as cfg_file: > > cfg_file.write("src/gz local-%s %s/%s" % > > (arch, > > self.d.getVar('FEED_DEPLOYDIR_ > BAS > > E_URI'), > > -- > > 2.15.0 > > > > Also, a simpler solution would be to simply strip the leading '/' from > sysconfdir: > > cfg_file_name = os.path.join(self.target_rootfs, > - > self.d.getVar("sysconfdir"), > + > self.d.getVar("sysconfdir").lstrip("/"), > "opkg", > "local-%s-feed.conf" % > arch) > > would be the only change needed. > > > Cheers, > Andre' > > -- > ___ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.openembedded.org/mailman/listinfo/openembedded-core > -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core
Re: [OE-core] [OE-Core][PATCH 1/1] package_manager.py: fix opkg custom config path
On Thu, 2017-12-07 at 16:16 -0500, Gaël PORTAY wrote: > The opkg custom config feature has moved to the package_manager python > module. This feature is broken since commit 19c538f57c. > > The python function os.path.join joins path components. If a component > is an absolute path, all previous components are thrown away. > > The sysconfdir variable is an absolute path component. It causes the > leading target rootfs component to be removed. As a result, the > package-manager module tries to write in the real root filesystem > instead of the temporary work directory for the rootfs image. > > This fixes the issue by prepending the target rootfs component using the > string concatenation operator when the file is opened (without using > os.path module). > > Cc: Ash Charles> Signed-off-by: Gaël PORTAY > --- > meta/lib/oe/package_manager.py | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/meta/lib/oe/package_manager.py > b/meta/lib/oe/package_manager.py > index 6cbb61fd84..ac29593f88 100644 > --- a/meta/lib/oe/package_manager.py > +++ b/meta/lib/oe/package_manager.py > @@ -953,12 +953,11 @@ class OpkgPM(OpkgDpkgPM): > """ > if (self.d.getVar('FEED_DEPLOYDIR_BASE_URI') or "") != "": > for arch in self.pkg_archs.split(): > -cfg_file_name = os.path.join(self.target_rootfs, > - self.d.getVar("sysconfdi > r"), > +cfg_file_name = > os.path.join(self.d.getVar("sysconfdir", True), The 'True' argument has been removed from all getVar() calls, please don't re-introduce it. > "opkg", > "local-%s-feed.conf" % > arch) > > -with open(cfg_file_name, "w+") as cfg_file: > +with open(self.target_rootfs + cfg_file_name, "w+") > as cfg_file: > cfg_file.write("src/gz local-%s %s/%s" % > (arch, > self.d.getVar('FEED_DEPLOYDIR_BAS > E_URI'), > -- > 2.15.0 > Also, a simpler solution would be to simply strip the leading '/' from sysconfdir: cfg_file_name = os.path.join(self.target_rootfs, - self.d.getVar("sysconfdir"), + self.d.getVar("sysconfdir").lstrip("/"), "opkg", "local-%s-feed.conf" % arch) would be the only change needed. Cheers, Andre' -- ___ Openembedded-core mailing list Openembedded-core@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-core