@Xuebing: so, there doesn't seem to be a very easy way to do this at build time. I mean, at first, it can seem easy, because all that is needed, is to add script that compiles here: https://github.com/openwrt/packages/blob/for-15.05/lang/python/files/python-package.mk#L94
That script needs to recursively compile all .py files and [optionally] remove them. So, feel free to try/hack something for your case. Maybe a shell script that uses this: http://effbot.org/zone/python-compile.htm > compile.py import os import sys import py_compile for file in sys.argv: py_compile.compile(file) os.remove(file) find . -name "\.py" | xargs compile.py For the general case [in trunk], I think I have to start considering splitting the Python source files and Python byte-compiled files into 2 package types. There was a older discussion about this ; the idea is to package the byte coded files, and offer the sources and python source packages. Example: Have `python` package and `python-sources` package. `python` == byte-compiled .pyc files, `python-sources` .py files Will try to make an effort in the next couple of days to implement the general solution for this. But, it's Friday now here, and I usually don't do much in the weekend. So, hopefully next week I could allocate some time for this. Thanks Alex On Fri, Feb 17, 2017 at 9:42 AM, Xuebing Wang <[email protected]> wrote: > Hi Alex, > > Thanks a lot for your help. I am using Python 2.7.12, branch chaos_calmer > from (git://github.com/openwrt/openwrt.git), feeds branch is for-15.05. > > Also, I am using Atheros platform based on MIPS architecture. > > Thanks again. > > xuebing wang > > > On 2017年02月17日 15:31, Alexandru Ardelean wrote: >> >> Oh. >> >> This is an old topic. >> Let me think about it, for a bit. >> >> Quick q: which Python version are you using and from which repo/branch ? >> I usually test against trunk. >> >> Thanks >> Alex >> >> On Fri, Feb 17, 2017 at 8:40 AM, Xuebing Wang <[email protected]> wrote: >>> >>> Hi Community and Alexandru: >>> >>> I am using OpenWrt chaos_calmer for an Atheros based platform, we have a >>> complicated Python application which takes time to run. >>> - On the target board, I can "python -m compileall ." for Python standard >>> libraries in directories "/usr/lib/python2.7", and boot time can improve >>> significantly. >>> >>> Would you please advise how can I change in files >>> feeds/packages/lang/python >>> to byte-compile Python libraries and include .pyc files in the sysupgrade >>> image? >>> >>> I am using below packages: >>> CONFIG_PACKAGE_python-base=y >>> CONFIG_PACKAGE_python-light=y >>> CONFIG_PACKAGE_python-codecs=y >>> CONFIG_PACKAGE_python-openssl=y >>> CONFIG_PACKAGE_python-sqlite3=y >>> CONFIG_PACKAGE_python-logging=y >>> >>> Thanks. >>> xuebing wang >>> > _______________________________________________ openwrt-devel mailing list [email protected] https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel
