python,python3: Increase max recursion level when generating bytecode
authorJeffery To <redacted>
Wed, 3 Apr 2019 18:45:19 +0000 (02:45 +0800)
committerJeffery To <redacted>
Wed, 3 Apr 2019 19:07:02 +0000 (03:07 +0800)
commit85c805d0ada334c0b90c3b74bc4b7c5779627e11
tree70aec708b3a82db54788487f3152886b4b94819f
parentbf3bb52c3f05fe5786f5cbb62f664580990c8927
python,python3: Increase max recursion level when generating bytecode

"python -m compileall" has a default maximum recursion level of 10, i.e.
it will descend up to 10 levels of subdirectories when looking for
source files to compile. This is usually sufficient but there are
packages that include more than 10 levels (botocore,
https://github.com/openwrt/packages/pull/8214#discussion_r270056741).

This adds the "-r" command line option to the call to compileall to
increase the max recursion level (currently set to 20).

This also patches Python 2's compileall.py to add this max recursion
level option. (Python 3's compileall.py already supports this option.)

This also applies some related changes to python-package-install.sh:

* Use the "-delete" option with find instead of exec'ing rm / rmdir. For
  the case of removing empty directories (in delete_empty_dirs()), this
  has the added benefit of simplifying the code, as the "-delete" option
  implies "-depth", and thus find "does the right thing" (removing empty
  directories depth-first).

* Remove the backslash in "-name" patterns (for find), as they are not
  regular expression but glob patterns.

Signed-off-by: Jeffery To <redacted>
lang/python/python-package-install.sh
lang/python/python/Makefile
lang/python/python/patches/021-compileall-add-recursion-option.patch [new file with mode: 0644]
git clone https://git.99rst.org/PROJECT