diff options
Diffstat (limited to 'dev-java/jython/files/jython-2.5.1-distutils_byte_compilation.patch')
-rw-r--r-- | dev-java/jython/files/jython-2.5.1-distutils_byte_compilation.patch | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/dev-java/jython/files/jython-2.5.1-distutils_byte_compilation.patch b/dev-java/jython/files/jython-2.5.1-distutils_byte_compilation.patch new file mode 100644 index 000000000000..9ba2cc51924c --- /dev/null +++ b/dev-java/jython/files/jython-2.5.1-distutils_byte_compilation.patch @@ -0,0 +1,48 @@ +--- Lib/distutils/tests/test_build_py.py ++++ Lib/distutils/tests/test_build_py.py +@@ -92,6 +92,25 @@ + os.chdir(cwd) + sys.stdout = sys.__stdout__ + ++ def test_dont_write_bytecode(self): ++ # makes sure byte_compile is not used ++ pkg_dir, dist = self.create_dist() ++ cmd = build_py(dist) ++ cmd.compile = 1 ++ cmd.optimize = 1 ++ ++ old_dont_write_bytecode = os.environ.get("PYTHONDONTWRITEBYTECODE") ++ os.environ["PYTHONDONTWRITEBYTECODE"] = "1" ++ try: ++ cmd.byte_compile([]) ++ finally: ++ if old_dont_write_bytecode is None: ++ del os.environ["PYTHONDONTWRITEBYTECODE"] ++ else: ++ os.environ["PYTHONDONTWRITEBYTECODE"] = old_dont_write_bytecode ++ ++ self.assertTrue('byte-compiling is disabled' in self.logs[0][1]) ++ + def test_suite(): + return unittest.makeSuite(BuildPyTestCase) + +--- Lib/distutils/util.py ++++ Lib/distutils/util.py +@@ -11,6 +11,7 @@ + from distutils.dep_util import newer + from distutils.spawn import spawn + from distutils import log ++from distutils.errors import DistutilsByteCompileError + + def get_platform (): + """Return a string that identifies the current platform. This is used +@@ -397,6 +398,9 @@ + generated in indirect mode; unless you know what you're doing, leave + it set to None. + """ ++ # nothing is done if PYTHONDONTWRITEBYTECODE environment variable is set ++ if os.environ.get("PYTHONDONTWRITEBYTECODE") is not None: ++ raise DistutilsByteCompileError('byte-compiling is disabled.') + + # First, if the caller didn't force us into direct or indirect mode, + # figure out which mode we should be in. We take a conservative |