3 echo "##########################################################################"
5 echo "##########################################################################"
7 if [ ${#VERSION} -lt 5 ]
9 echo "ERROR : VERSION argument of Python compilation script has not the expected x.y.z format"
12 PYTHON_VERSION="${VERSION:0:3}"
14 # --enable-shared : enable building shared python library
15 # --with-threads : enable thread support
16 # --without-pymalloc: disable specialized mallocs
17 # --with-ensurepip : installation using bundled pip
18 # --enable-optimizations: recommandé et utilisé par Nijni -> mais trop long!
19 # spns #30153 : pymalloc on demand
20 CONFIGURE_ARGUMENTS="--enable-shared --with-threads --with-ensurepip=install --with-ssl --enable-loadable-sqlite-extensions"
21 if [ "${SAT_ENABLE_PYTHON_PYMALLOC}" == "1" ]; then
22 CONFIGURE_ARGUMENTS+=" --with-pymalloc"
24 CONFIGURE_ARGUMENTS+=" --without-pymalloc"
28 echo "*** configure --prefix=$PRODUCT_INSTALL $CONFIGURE_ARGUMENTS"
29 $SOURCE_DIR/configure --prefix=$PRODUCT_INSTALL $CONFIGURE_ARGUMENTS
32 echo "ERROR on configure"
37 echo "*** make" $MAKE_OPTIONS
46 echo "*** make install"
50 echo "ERROR on make install"
54 cd ${PRODUCT_INSTALL}/lib/python${PYTHON_VERSION}/config-${PYTHON_VERSION}*
56 if [ ! -e libpython${PYTHON_VERSION}.so ]
59 echo "*** create missing link"
60 ln -sf ../../libpython${PYTHON_VERSION}.so .
63 echo "ERROR when creating missing link"
67 cd ${PRODUCT_INSTALL}/bin
71 if [ "${SAT_ENABLE_PYTHON_PYMALLOC}" == "1" ]; then
72 cd ${PRODUCT_INSTALL}/include
73 if [ ! -d python3.6 ]; then
74 ln -s python3.6m python3.6
79 L="2to3 2to3-3.6 easy_install-3.6 idle3 idle3.6 pip3 pip3.6 pydoc3 pydoc3.6 pyvenv pyvenv-3.6"
80 cd ${PRODUCT_INSTALL}/bin
82 awk '$0 = NR==1 ? replace : $0' replace="#!/usr/bin/env python3" $f > $f.t && mv $f.t $f && chmod 755 $f