| From 90507018442f9adabb586fd3d0a0206b9c2f2f50 Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> |
| Date: Sun, 5 Jun 2016 08:18:01 +0200 |
| Subject: [PATCH] distutils: make -OO enable both opt-1 and opt-2 optimization |
| |
| Bug: http://bugs.python.org/issue27226 |
| Bug: https://bugs.gentoo.org/585060 |
| --- |
| distutils/command/build_py.py | 8 ++++---- |
| distutils/command/install_lib.py | 12 ++++++------ |
| 2 files changed, 10 insertions(+), 10 deletions(-) |
| |
| diff --git a/distutils/command/build_py.py b/distutils/command/build_py.py |
| index cf0ca57..838d4e4 100644 |
| --- a/distutils/command/build_py.py |
| +++ b/distutils/command/build_py.py |
| @@ -315,9 +315,9 @@ class build_py (Command): |
| if self.compile: |
| outputs.append(importlib.util.cache_from_source( |
| filename, optimization='')) |
| - if self.optimize > 0: |
| + for opt in range(1, self.optimize + 1): |
| outputs.append(importlib.util.cache_from_source( |
| - filename, optimization=self.optimize)) |
| + filename, optimization=opt)) |
| |
| outputs += [ |
| os.path.join(build_dir, filename) |
| @@ -387,8 +387,8 @@ class build_py (Command): |
| if self.compile: |
| byte_compile(files, optimize=0, |
| force=self.force, prefix=prefix, dry_run=self.dry_run) |
| - if self.optimize > 0: |
| - byte_compile(files, optimize=self.optimize, |
| + for opt in range(1, self.optimize + 1): |
| + byte_compile(files, optimize=opt, |
| force=self.force, prefix=prefix, dry_run=self.dry_run) |
| |
| class build_py_2to3(build_py, Mixin2to3): |
| diff --git a/distutils/command/install_lib.py b/distutils/command/install_lib.py |
| index 6154cf0..049b662 100644 |
| --- a/distutils/command/install_lib.py |
| +++ b/distutils/command/install_lib.py |
| @@ -24,8 +24,8 @@ class install_lib(Command): |
| # 2) compile .pyc only (--compile --no-optimize; default) |
| # 3) compile .pyc and "opt-1" .pyc (--compile --optimize) |
| # 4) compile "opt-1" .pyc only (--no-compile --optimize) |
| - # 5) compile .pyc and "opt-2" .pyc (--compile --optimize-more) |
| - # 6) compile "opt-2" .pyc only (--no-compile --optimize-more) |
| + # 5) compile .pyc, "opt-1" and "opt-2" .pyc (--compile --optimize-more) |
| + # 6) compile "opt-1" and "opt-2" .pyc (--no-compile --optimize-more) |
| # |
| # The UI for this is two options, 'compile' and 'optimize'. |
| # 'compile' is strictly boolean, and only decides whether to |
| @@ -132,8 +132,8 @@ class install_lib(Command): |
| byte_compile(files, optimize=0, |
| force=self.force, prefix=install_root, |
| dry_run=self.dry_run) |
| - if self.optimize > 0: |
| - byte_compile(files, optimize=self.optimize, |
| + for opt in range(1, self.optimize + 1): |
| + byte_compile(files, optimize=opt, |
| force=self.force, prefix=install_root, |
| verbose=self.verbose, dry_run=self.dry_run) |
| |
| @@ -167,9 +167,9 @@ class install_lib(Command): |
| if self.compile: |
| bytecode_files.append(importlib.util.cache_from_source( |
| py_file, optimization='')) |
| - if self.optimize > 0: |
| + for opt in range(1, self.optimize + 1): |
| bytecode_files.append(importlib.util.cache_from_source( |
| - py_file, optimization=self.optimize)) |
| + py_file, optimization=opt)) |
| |
| return bytecode_files |
| |
| -- |
| 2.8.3 |
| |