diff options
author | Hongxu Jia <hongxu.jia@windriver.com> | 2018-07-17 21:36:35 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-07-26 13:16:31 +0100 |
commit | 57414f4a1c549e6faaa110e6e95ff601b05b7361 (patch) | |
tree | f9cb2a7a79133d08f57a0289bcbf244e94c576f7 /meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch | |
parent | a6ce79b87d3db57033a3d1710cb3292366a0a8f7 (diff) | |
download | openembedded-core-57414f4a1c549e6faaa110e6e95ff601b05b7361.tar.gz openembedded-core-57414f4a1c549e6faaa110e6e95ff601b05b7361.tar.bz2 openembedded-core-57414f4a1c549e6faaa110e6e95ff601b05b7361.zip |
distutils/setuptools-native, distutils3/setuptools3-native: do not try to fetch code during do_compile
If a python recipe is using setuptools and the setup_requires argument, where
setuptools will use easy_install to fetch the module if it isn't
present.
The build failed on a machine where a proxy was required, but succeeded on a
machine which had direct access to the internet
Add var-NO_FETCH_BUILD, and set it in distutils_do_compile which does not
allow to fetch code from internet during do_compile.
Example result:
...
ERROR: Do not try to fetch `pytest-runner1' for building. Please add its native recipe to DEPENDS.
Traceback (most recent call last):
File "setup.py", line 56, in <module>
...
The improvement is flexible for test_requirements argument (used at
`setup.py test'), where use easy_install also.
[YOCTO #12084]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch')
-rw-r--r-- | meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch b/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch new file mode 100644 index 0000000000..4b17921880 --- /dev/null +++ b/meta/recipes-devtools/python/files/0001-conditionally-do-not-fetch-code-by-easy_install.patch @@ -0,0 +1,34 @@ +From 019422d19c6401fa8f45b1311ecd31bb087c809d Mon Sep 17 00:00:00 2001 +From: Hongxu Jia <hongxu.jia@windriver.com> +Date: Tue, 17 Jul 2018 10:13:38 +0800 +Subject: [PATCH] conditionally do not fetch code by easy_install + +If var-NO_FETCH_BUILD is set, do not allow to fetch code from +internet by easy_install. + +Upstream-Status: Inappropriate [oe specific] + +Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> +--- + setuptools/command/easy_install.py | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py +index 85ee40f..7eb9d2a 100755 +--- a/setuptools/command/easy_install.py ++++ b/setuptools/command/easy_install.py +@@ -637,6 +637,11 @@ class easy_install(Command): + os.path.exists(tmpdir) and rmtree(rmtree_safe(tmpdir)) + + def easy_install(self, spec, deps=False): ++ if os.environ.get('NO_FETCH_BUILD', None): ++ log.error("ERROR: Do not try to fetch `%s' for building. " ++ "Please add its native recipe to DEPENDS." % spec) ++ return None ++ + if not self.editable: + self.install_site_py() + +-- +2.7.4 + |