Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python update 2 #445

Merged
merged 7 commits into from
Oct 20, 2014
Merged

Python update 2 #445

merged 7 commits into from
Oct 20, 2014

Conversation

commodo
Copy link
Contributor

@commodo commodo commented Oct 20, 2014

Finally happy to create this pull request; took me a while to test a bit the changes I made.
I wanted to first run the changes on a target; tested successfully on a ppc system.

Fixes:

  • use libncursesw instead of libncurses since Python's build scripts will prefer that
  • split the Python executable into a shared library so that 3rd party C extensions can use it; this splits most of the Python exec into libpython and makes the Python exec use it; the overhead is small (several kb) compared to the Python binary (around 5 MB)
  • fix cross-compilation for 3rd party C extensions

Signed-off-by: Alexandru Ardelean ardeleanalex@gmail.com

…sions properly

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
The target's PYTHON_INC_DIR should take precedence over the host's
include dir when cross-compiling.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Tells the host Python to use the target's linker.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
This will reduce the bloat when users will want to compile in their
Python C extensions.
There will be a initial bloat (several kb) if just Python
is installed, but that will be compensated when users will add more
C extensions.

During the build we also have to add Python's PKG_BUILD_DIR
so that the shared lib is found when compiling Python's
built-in C extensions.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
…nsions

This mostly helps to avoid confusion when modules are cross-compiled.
Otherwise build folders are named with the host's platform name.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
Python's build scripts prefer ncursesw, and if it is detected
it will be used.
The problem will occur when linking, since ncursesw libs may not be
installed if not added as deps, but the sources will be compiled
against ncursesw.

Reference from Python's HISTORY file:
  Patch #1428494: Prefer linking against ncursesw over ncurses library.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
sbyx added a commit that referenced this pull request Oct 20, 2014
@sbyx sbyx merged commit eb3ccec into openwrt:master Oct 20, 2014
@commodo commodo mentioned this pull request Oct 20, 2014
@commodo commodo deleted the python-update-2 branch October 27, 2014 13:12
champtar pushed a commit to champtar/packages that referenced this pull request Jul 7, 2019
nodogsplash: libmicrohttpd-no-ssl -> libmicrohttpd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants