| From 5028d1cd669c179ed49061316d04c8e8862a5bd8 Mon Sep 17 00:00:00 2001 |
| From: Hongxu Jia <hongxu.jia@windriver.com> |
| Date: Thu, 12 Jul 2018 15:04:47 +0800 |
| Subject: [PATCH 1/5] do not create python environment |
| |
| Use oe's python environment rather than create one of host |
| |
| Upstream-Status: Inappropriate [oe specific] |
| |
| Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> |
| --- |
| build/moz.configure/init.configure | 18 ------------------ |
| configure.py | 10 +++++++++- |
| js/src/old-configure | 4 ++-- |
| 3 files changed, 11 insertions(+), 21 deletions(-) |
| |
| --- a/build/moz.configure/init.configure |
| +++ b/build/moz.configure/init.configure |
| @@ -250,24 +250,6 @@ def virtualenv_python(env_python, build_ |
| else: |
| python = sys.executable |
| |
| - if not manager.up_to_date(python): |
| - log.info('Creating Python environment') |
| - manager.build(python) |
| - |
| - python = normsep(manager.python_path) |
| - |
| - if python != normsep(sys.executable): |
| - log.info('Reexecuting in the virtualenv') |
| - if env_python: |
| - del os.environ['PYTHON'] |
| - # One would prefer to use os.execl, but that's completely borked on |
| - # Windows. |
| - sys.exit(subprocess.call([python] + sys.argv)) |
| - |
| - # We are now in the virtualenv |
| - if not distutils.sysconfig.get_python_lib(): |
| - die('Could not determine python site packages directory') |
| - |
| return python |
| |
| |
| --- a/configure.py |
| +++ b/configure.py |
| @@ -12,7 +12,15 @@ import textwrap |
| |
| |
| base_dir = os.path.abspath(os.path.dirname(__file__)) |
| -sys.path.insert(0, os.path.join(base_dir, 'python', 'mozbuild')) |
| +sys.path.insert(0, os.path.join(base_dir, 'config')) |
| +def get_immediate_subdirectories(a_dir): |
| + return [name for name in os.listdir(a_dir) |
| + if os.path.isdir(os.path.join(a_dir, name))] |
| +for s in ["python", "testing/mozbase"]: |
| + sub_dir = os.path.join(base_dir, s) |
| + for module_dir in get_immediate_subdirectories(sub_dir): |
| + sys.path.insert(0, os.path.join(sub_dir, module_dir)) |
| + |
| from mozbuild.configure import ConfigureSandbox |
| from mozbuild.makeutil import Makefile |
| from mozbuild.pythonutil import iter_modules_in_path |
| --- a/js/src/old-configure |
| +++ b/js/src/old-configure |
| @@ -9974,7 +9974,7 @@ if test "$JS_STANDALONE"; then |
| |
| if test "$no_recursion" != yes; then |
| trap '' EXIT |
| - if ! $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then |
| + if ! PYTHONPATH=$_topsrcdir/python/mozbuild/ $PYTHON $_topsrcdir/build/subconfigure.py --list subconfigures --skip skip_subconfigures; then |
| exit 1 |
| fi |
| fi |