mirror of
https://git.yoctoproject.org/poky
synced 2026-04-16 06:32:13 +02:00
automake: omit compilation of pyc files on install
* On install, automake calls py-compile, which previously
compiled python source code to pyc and pyo, which both
got packaged.
* The python interpreter in OE contains patches to enable
optimization (pyo) by default:
04-default-is-optimized.patch
99-ignore-optimization-flag.patch
* automake created pyc files by calling py_compile.compile()
and adding the c suffix manually, resulting in identical
byte code for both pyc and pyo files.
* py-compile-compile-only-optimized-byte-code.patch
applies to automake 1.11 and automake master, but older
versions require a slightly modified patch. However,
older versions are only pinned by chinook-compat and
nylon, so I left them untouched.
(From OE-Core rev: 40ccf816c597e7eed5243fb4b4e9473d2b58afaa)
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
The patch was imported from the OpenEmbedded git server
(git://git.openembedded.org/openembedded) as of commit id
aa4585c5065e05c759f16e1e8623fc7f40640f1b.
Modified to apply to automake version 1.11.2 and to
include a patch header. Also renamed the patch.
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
6aa3a09876
commit
eb8ce05d13
@@ -0,0 +1,42 @@
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
|
||||
* OE-Core's python creates the same binary output
|
||||
for both pyc and pyo, so disable the creation of
|
||||
pyc files by automake.
|
||||
|
||||
Signed-off-by: Andreas Oberritter <obi@opendreambox.org>
|
||||
---
|
||||
lib/py-compile | 17 -----------------
|
||||
1 files changed, 0 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/lib/py-compile b/lib/py-compile
|
||||
index 3f9d05b..101c814 100755
|
||||
--- a/lib/py-compile
|
||||
+++ b/lib/py-compile
|
||||
@@ -101,23 +101,6 @@ else
|
||||
filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)"
|
||||
fi
|
||||
|
||||
-$PYTHON -c "
|
||||
-import sys, os, py_compile
|
||||
-
|
||||
-files = '''$files'''
|
||||
-
|
||||
-sys.stdout.write('Byte-compiling python modules...\n')
|
||||
-for file in files.split():
|
||||
- $pathtrans
|
||||
- $filetrans
|
||||
- if not os.path.exists(filepath) or not (len(filepath) >= 3
|
||||
- and filepath[-3:] == '.py'):
|
||||
- continue
|
||||
- sys.stdout.write(file)
|
||||
- sys.stdout.flush()
|
||||
- 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
|
||||
--
|
||||
1.7.0.4
|
||||
|
||||
@@ -37,9 +37,10 @@ PATHFIXPATCH_virtclass-nativesdk = ""
|
||||
SRC_URI += "${PATHFIXPATCH} \
|
||||
file://prefer-cpio-over-pax-for-ustar-archives.patch \
|
||||
file://python-libdir.patch \
|
||||
file://automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch"
|
||||
file://automake_1.11.2_fix_for_pkglibexec_SCRIPTS.patch \
|
||||
file://py-compile-compile-only-optimized-byte-code.patch"
|
||||
|
||||
PR = "r1"
|
||||
PR = "r2"
|
||||
SRC_URI[md5sum] = "18194e804d415767bae8f703c963d456"
|
||||
SRC_URI[sha256sum] = "4f46d1f9380c8a3506280750f630e9fc915cb1a435b724be56b499d016368718"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user