Browse Source

python&python2: Fix PATH handling

After changes to build-package.sh the PATH setup in python&python2
caused the toolchain strip not to be found, causing broken binaries
due to non-stripped elf symbol versioning.

Fixes #460.
android-5
Fredrik Fornwall 8 years ago
parent
commit
b2a8800c2c
  1. 14
      packages/python/build.sh
  2. 9
      packages/python2/build.sh

14
packages/python/build.sh

@ -9,7 +9,7 @@ TERMUX_PKG_HOSTBUILD=true
_MAJOR_VERSION=3.5
TERMUX_PKG_VERSION=${_MAJOR_VERSION}.2
TERMUX_PKG_BUILD_REVISION=2
TERMUX_PKG_BUILD_REVISION=3
TERMUX_PKG_SRCURL=http://www.python.org/ftp/python/${TERMUX_PKG_VERSION}/Python-${TERMUX_PKG_VERSION}.tar.xz
# The flag --with(out)-pymalloc (disable/enable specialized mallocs) is enabled by default and causes m suffix versions of python.
@ -29,12 +29,6 @@ TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" ac_cv_func_linkat=no"
TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" ac_cv_posix_semaphores_enabled=no"
TERMUX_PKG_RM_AFTER_INSTALL="lib/python${_MAJOR_VERSION}/test lib/python${_MAJOR_VERSION}/tkinter lib/python${_MAJOR_VERSION}/turtledemo lib/python${_MAJOR_VERSION}/idlelib bin/python${_MAJOR_VERSION}m bin/idle*"
# Python does not use CPPFLAGS when building modules, so add this to CFLAGS as well (needed when building _cursesmodule):
# export CFLAGS="$CFLAGS -isystem $TERMUX_PREFIX/include/libandroid-support"
# NOTE: termux_step_host_build may not be called if host build is cached.
export TERMUX_ORIG_PATH=$PATH
export PATH=$TERMUX_PKG_HOSTBUILD_DIR:$PATH
termux_step_host_build () {
# We need a host-built Parser/pgen binary, copied into cross-compile build in termux_step_post_configure() below
$TERMUX_PKG_SRCDIR/configure
@ -45,6 +39,12 @@ termux_step_host_build () {
ln -s python python$_MAJOR_VERSION
}
termux_step_pre_configure() {
# Put the host-built python in path:
export TERMUX_ORIG_PATH=$PATH
export PATH=$TERMUX_PKG_HOSTBUILD_DIR:$PATH
}
termux_step_post_configure () {
cp $TERMUX_PKG_HOSTBUILD_DIR/Parser/pgen $TERMUX_PKG_BUILDDIR/Parser/pgen
cp $TERMUX_PKG_HOSTBUILD_DIR/Programs/_freeze_importlib $TERMUX_PKG_BUILDDIR/Programs/_freeze_importlib

9
packages/python2/build.sh

@ -28,9 +28,6 @@ TERMUX_PKG_EXTRA_CONFIGURE_ARGS+=" --enable-unicode=ucs4"
# Let 2to3 be in the python3 package:
TERMUX_PKG_RM_AFTER_INSTALL="bin/2to3"
# NOTE: termux_step_host_build may not be called if host build is cached.
export TERMUX_ORIG_PATH=$PATH
export PATH=$TERMUX_PKG_HOSTBUILD_DIR:$PATH
termux_step_host_build () {
# We need a host-built Parser/pgen binary, copied into cross-compile build in termux_step_post_configure() below
$TERMUX_PKG_SRCDIR/configure
@ -46,6 +43,12 @@ termux_step_post_configure () {
$TERMUX_TOUCH -d "next hour" $TERMUX_PKG_BUILDDIR/Parser/pgen
}
termux_step_pre_configure() {
# Put the host-built python in path:
export TERMUX_ORIG_PATH=$PATH
export PATH=$TERMUX_PKG_HOSTBUILD_DIR:$PATH
}
termux_step_post_make_install () {
# Avoid file clashes with the python (3) package:
mv $TERMUX_PREFIX/share/man/man1/{python.1,python2.1}

Loading…
Cancel
Save