diff options
author | Tarek Ziade <tarek@ziade.org> | 2010-05-06 16:50:18 +0200 |
---|---|---|
committer | Tarek Ziade <tarek@ziade.org> | 2010-05-06 16:50:18 +0200 |
commit | 3a9c591f47b69048b513e5654e5d98efe3f2365a (patch) | |
tree | 06faaaea0aa7d00a972f45709bf872c60336413a | |
parent | b53fad8a9e4e807564d11db3ed5a75187e3e1f6c (diff) | |
download | external_python_setuptools-3a9c591f47b69048b513e5654e5d98efe3f2365a.tar.gz external_python_setuptools-3a9c591f47b69048b513e5654e5d98efe3f2365a.tar.bz2 external_python_setuptools-3a9c591f47b69048b513e5654e5d98efe3f2365a.zip |
respect the sys.dont_write_bytecode flag. Fixes #1470.6.11
--HG--
branch : distribute
extra : rebase_source : 889c1badc92b1de14352a141865172b0a39384fa
-rw-r--r-- | CHANGES.txt | 1 | ||||
-rw-r--r-- | setuptools/__init__.py | 10 | ||||
-rwxr-xr-x | setuptools/command/easy_install.py | 6 |
3 files changed, 14 insertions, 3 deletions
diff --git a/CHANGES.txt b/CHANGES.txt index e74f1714..9824beff 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -17,6 +17,7 @@ CHANGES * Issue 100: Fixed develop --user not taking '.' in PYTHONPATH into account * Issue 134: removed spurious UserWarnings. Patch by VanLindberg * Issue 138: cant_write_to_target error when setup_requires is used. +* Issue 147: respect the sys.dont_write_bytecode flag ------ 0.6.10 diff --git a/setuptools/__init__.py b/setuptools/__init__.py index c8a631a0..9de373f9 100644 --- a/setuptools/__init__.py +++ b/setuptools/__init__.py @@ -5,7 +5,8 @@ import distutils.core, setuptools.command from setuptools.depends import Require from distutils.core import Command as _Command from distutils.util import convert_path -import os.path +import os +import sys __version__ = '0.6' __all__ = [ @@ -95,4 +96,9 @@ def findall(dir = os.curdir): import distutils.filelist distutils.filelist.findall = findall # fix findall bug in distutils. - +# sys.dont_write_bytecode was introduced in Python 2.6. +if ((hasattr(sys, "dont_write_bytecode") and sys.dont_write_bytecode) or + (not hasattr(sys, "dont_write_bytecode") and os.environ.get("PYTHONDONTWRITEBYTECODE"))): + _dont_write_bytecode = True +else: + _dont_write_bytecode = False diff --git a/setuptools/command/easy_install.py b/setuptools/command/easy_install.py index 7af42c65..8aab6f1e 100755 --- a/setuptools/command/easy_install.py +++ b/setuptools/command/easy_install.py @@ -12,7 +12,7 @@ __ http://packages.python.org/distribute/easy_install.html """ import sys, os.path, zipimport, shutil, tempfile, zipfile, re, stat, random from glob import glob -from setuptools import Command +from setuptools import Command, _dont_write_bytecode from setuptools.sandbox import run_setup from distutils import log, dir_util from distutils.util import convert_path, subst_vars @@ -1149,6 +1149,10 @@ See the setuptools documentation for the "develop" command for more info. chmod(f, mode) def byte_compile(self, to_compile): + if _dont_write_bytecode: + self.warn('byte-compiling is disabled, skipping.') + return + from distutils.util import byte_compile try: # try to make the byte compile messages quieter |