Arthur de Jong

Open Source / Free Software developer

summaryrefslogtreecommitdiffstats
path: root/py-compile
diff options
context:
space:
mode:
authorArthur de Jong <arthur@arthurdejong.org>2013-07-11 21:48:35 +0200
committerArthur de Jong <arthur@arthurdejong.org>2013-07-11 22:03:56 +0200
commit5b785086084122074dea451850aa87e2d7594c77 (patch)
tree7708e76dc7c008146078e17d0147a1e5fb1a9d18 /py-compile
parentee7b2e93082d436008204b2e670bb944531cf714 (diff)
Upgrade to automake 1.13
Diffstat (limited to 'py-compile')
-rwxr-xr-xpy-compile23
1 files changed, 16 insertions, 7 deletions
diff --git a/py-compile b/py-compile
index 15c834c..46ea866 100755
--- a/py-compile
+++ b/py-compile
@@ -3,8 +3,7 @@
scriptversion=2011-06-08.12; # UTC
-# Copyright (C) 2000, 2001, 2003, 2004, 2005, 2008, 2009, 2011 Free
-# Software Foundation, Inc.
+# Copyright (C) 2000-2013 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -37,7 +36,7 @@ me=py-compile
usage_error ()
{
echo "$me: $*" >&2
- echo "Try \`$me --help' for more information." >&2
+ echo "Try '$me --help' for more information." >&2
exit 1
}
@@ -117,7 +116,7 @@ else
fi
$PYTHON -c "
-import sys, os, py_compile
+import sys, os, py_compile, imp
files = '''$files'''
@@ -130,12 +129,19 @@ for file in files.split():
continue
sys.stdout.write(file)
sys.stdout.flush()
- py_compile.compile(filepath, filepath + 'c', path)
+ if hasattr(imp, 'get_tag'):
+ py_compile.compile(filepath, imp.cache_from_source(filepath), path)
+ else:
+ py_compile.compile(filepath, filepath + 'c', path)
sys.stdout.write('\n')" || exit $?
# this will fail for python < 1.5, but that doesn't matter ...
$PYTHON -O -c "
-import sys, os, py_compile
+import sys, os, py_compile, imp
+
+# pypy does not use .pyo optimization
+if hasattr(sys, 'pypy_translation_info'):
+ sys.exit(0)
files = '''$files'''
sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n')
@@ -147,7 +153,10 @@ for file in files.split():
continue
sys.stdout.write(file)
sys.stdout.flush()
- py_compile.compile(filepath, filepath + 'o', path)
+ if hasattr(imp, 'get_tag'):
+ py_compile.compile(filepath, imp.cache_from_source(filepath, False), path)
+ else:
+ py_compile.compile(filepath, filepath + 'o', path)
sys.stdout.write('\n')" 2>/dev/null || :
# Local Variables: