diff options
author | Andreas Müller <schnitzeltony@gmail.com> | 2019-10-28 00:35:27 +0100 |
---|---|---|
committer | Khem Raj <raj.khem@gmail.com> | 2019-10-27 23:10:00 -0700 |
commit | ccb810f34a7c413aad7921a4003ec5a2229b89a3 (patch) | |
tree | 988d9dc55cf2846c9bf6056a53e7d09b3aa63687 /meta-oe | |
parent | 704c0bafd9dd72fb8bd3ea2cc90e0088e7db3c6e (diff) | |
download | meta-openembedded-contrib-ccb810f34a7c413aad7921a4003ec5a2229b89a3.tar.gz |
itstool: rework native shebang and add class to make native itstool work
itstool was reworked in [1] to not use host's python. This patch introduced the
'-S' option for coreutils's env [2]. Unfortunately that option is relatively
young [3] and elder build-host don't support it [4].
The only way to get around this is:
* remove '-S' and -s' from native shebang
* add a class itstool.bbclass. This class depends itstool-native and creates a
valid python3 runtime environment. Most notable in the environment is
export PYTHONNOUSERSITE = "1"
which does same as '-s' option: force python to avoid adding (host) user sites.
[1] http://cgit.openembedded.org/meta-openembedded/commit/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch?id=e5ac325b7974a346b218d1f43b92d06f5b0dd078
[2] http://cgit.openembedded.org/meta-openembedded/tree/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch
[3] https://github.com/coreutils/coreutils/commit/668306ed86c8c79b0af0db8b9c882654ebb66db2#diff-83d9d52b1f12ac589739ab1334ae4f30
[4] https://errors.yoctoproject.org/Errors/Details/274743/
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe')
-rw-r--r-- | meta-oe/classes/itstool.bbclass | 5 | ||||
-rw-r--r-- | meta-oe/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch | 35 | ||||
-rw-r--r-- | meta-oe/recipes-support/itstool/itstool/0002-Don-t-use-build-time-hardcoded-python-binary-path.patch (renamed from meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch) | 0 | ||||
-rw-r--r-- | meta-oe/recipes-support/itstool/itstool_2.0.6.bb | 6 |
4 files changed, 44 insertions, 2 deletions
diff --git a/meta-oe/classes/itstool.bbclass b/meta-oe/classes/itstool.bbclass new file mode 100644 index 0000000000..45e3fb839c --- /dev/null +++ b/meta-oe/classes/itstool.bbclass @@ -0,0 +1,5 @@ +# helper class to prepare correct environment for native itstool + +inherit python3native + +DEPENDS_append = " itstool-native" diff --git a/meta-oe/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch b/meta-oe/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch new file mode 100644 index 0000000000..19a858bd75 --- /dev/null +++ b/meta-oe/recipes-support/itstool/itstool/0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch @@ -0,0 +1,35 @@ +From 335ef14fc801c9dfbe7e5692dc71cfbe72049d2b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com> +Date: Sun, 27 Oct 2019 16:38:52 +0100 +Subject: [PATCH] Native: Don't use build time hardcoded python binary path. +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This is same patch as used for target build except that we do not use the +'-S' and '-s' option because '-S' is relatively young [1] and elder build-host +don't support it [2] + +[1] https://github.com/coreutils/coreutils/commit/668306ed86c8c79b0af0db8b9c882654ebb66db2#diff-83d9d52b1f12ac589739ab1334ae4f30 +[2] https://errors.yoctoproject.org/Errors/Details/274743/ + +Upstream-Status: Inappropriate [OE specific] + +Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> +--- + itstool.in | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/itstool.in b/itstool.in +index e64cd34..05d264f 100755 +--- a/itstool.in ++++ b/itstool.in +@@ -1,4 +1,4 @@ +-#!@PYTHON@ -s ++#!/usr/bin/env python3 + # + # Copyright (c) 2010-2018 Shaun McCance <shaunm@gnome.org> + # +-- +2.21.0 + diff --git a/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch b/meta-oe/recipes-support/itstool/itstool/0002-Don-t-use-build-time-hardcoded-python-binary-path.patch index b91105330c..b91105330c 100644 --- a/meta-oe/recipes-support/itstool/itstool/0001-Don-t-use-build-time-hardcoded-python-binary-path.patch +++ b/meta-oe/recipes-support/itstool/itstool/0002-Don-t-use-build-time-hardcoded-python-binary-path.patch diff --git a/meta-oe/recipes-support/itstool/itstool_2.0.6.bb b/meta-oe/recipes-support/itstool/itstool_2.0.6.bb index b4b37aa013..8290c5e581 100644 --- a/meta-oe/recipes-support/itstool/itstool_2.0.6.bb +++ b/meta-oe/recipes-support/itstool/itstool_2.0.6.bb @@ -7,8 +7,10 @@ inherit autotools python3native DEPENDS = "libxml2-native" -SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2 \ - file://0001-Don-t-use-build-time-hardcoded-python-binary-path.patch" +SRC_URI = "http://files.itstool.org/${BPN}/${BPN}-${PV}.tar.bz2" +SRC_URI_append_class-native = " file://0001-Native-Don-t-use-build-time-hardcoded-python-binary-.patch" +SRC_URI_append_class-target = " file://0002-Don-t-use-build-time-hardcoded-python-binary-path.patch" + SRC_URI[md5sum] = "4306eeba4f4aee6b393d14f9c3c57ca1" SRC_URI[sha256sum] = "6233cc22726a9a5a83664bf67d1af79549a298c23185d926c3677afa917b92a9" |