wok-current annotate python3/receipt @ rev 25786

Bump gvfs to fix issue with open files on android device, patch udev to fix mtp issue on pcmanfm
author Stanislas Leduc <shann@slitaz.org>
date Tue Jul 29 18:05:13 2025 +0000 (2 months ago)
parents 5926178cd6fa
children
rev   line source
shann@25629 1 # SliTaz package receipt.
shann@25629 2
shann@25629 3 PACKAGE="python3"
shann@25768 4 VERSION="3.9.22"
shann@25629 5 CATEGORY="development"
shann@25629 6 SHORT_DESC="The Python 3 programming language."
shann@25629 7 MAINTAINER="shann@slitaz.org"
shann@25629 8 LICENSE="GPL"
shann@25629 9 SOURCE="Python"
shann@25629 10 TARBALL="$SOURCE-$VERSION.tar.xz"
shann@25629 11 WEB_SITE="https://www.python.org/"
shann@25629 12 WGET_URL="https://www.python.org/ftp/python/$VERSION/$TARBALL"
shann@25728 13 HOST_ARCH="i486 x86_64"
shann@25629 14
shann@25629 15 RELATED="python3-dev python3-idle" # version must match
shann@25629 16 DEPENDS="openssl bzlib readline sqlite zlib ncursesw gdbm libffi"
shann@25629 17 BUILD_DEPENDS="openssl-dev bzip2-dev readline-dev sqlite-dev zlib-dev \
shann@25629 18 expat-dev liblzma-dev ncursesw-dev tcl-dev db-dev gdbm-dev libffi-dev"
shann@25629 19
shann@25629 20 # What is the latest version available today?
shann@25629 21 current_version()
shann@25629 22 {
shann@25629 23 wget -O - https://www.python.org/downloads/ 2>/dev/null | \
shann@25629 24 sed '/Download Python [0-9]/!d;s|.*Python ||;s|<.*||;q'
shann@25629 25 }
shann@25629 26
shann@25629 27 # Rules to configure and make the package.
shann@25629 28 compile_rules()
shann@25629 29 {
shann@25629 30
shann@25629 31 case "$ARCH" in
shann@25629 32 arm*)
shann@25629 33 # First pass for build host tools
shann@25629 34 unset CFLAGS CXXFLAGS
shann@25629 35 cp -f $CONFIG_SITE .
shann@25629 36 CONFIG_SITE="$(pwd)/cook.site"
shann@25629 37 cat >> $CONFIG_SITE << EOT
shann@25629 38 ac_cv_have_long_long_format=yes
shann@25629 39 EOT
shann@25629 40 ./configure CC=gcc \
shann@25629 41 --disable-ipv6 \
shann@25629 42 --build=i486-slitaz-linux \
shann@25629 43 --host=${BUILD_SYSTEM} &&
shann@25629 44 make python Parser/pgen &&
shann@25629 45 mv python hostpython &&
shann@25629 46 mv Parser/pgen Parser/hostpgen || exit 1
shann@25629 47 make distclean
shann@25629 48 rm -f $CONFIG_SITE
shann@25629 49 # Second pass for host tools
shann@25629 50 . /etc/slitaz/cook.conf
shann@25629 51 #patch -p1 < $stuff/python-2.7.3-xcompile.patch || exit 1
shann@25629 52 cp -f $CONFIG_SITE .
shann@25629 53 CONFIG_SITE="$(pwd)/cook.site"
shann@25629 54 cat >> $CONFIG_SITE << EOT
shann@25629 55 ac_cv_have_long_long_format=yes
shann@25629 56 ac_cv_buggy_getaddrinfo=no
shann@25629 57 ac_cv_file__dev_ptmx=yes
shann@25629 58 ac_cv_file__dev_ptc=no
shann@25629 59 EOT
shann@25629 60 ./configure CC=${HOST_SYSTEM}-gcc \
shann@25629 61 --disable-ipv6 \
shann@25629 62 --enable-shared \
shann@25629 63 --with-system-ffi \
shann@25629 64 ${CONFIGURE_ARGS} &&
shann@25629 65 make \
shann@25629 66 PYTHON_FOR_BUILD=${src}/hostpython \
shann@25629 67 HOSTPYTHON=${src}/hostpython \
shann@25629 68 HOSTPGEN=${src}/Parser/hostpgen \
shann@25629 69 CROSS_COMPILE_TARGET=yes \
shann@25629 70 HOSTARCH=${HOST_SYSTEM} \
shann@25629 71 BUILDARCH=${BUILD_SYSTEM} || exit 1
shann@25629 72 make DESTDIR=$DESTDIR install || exit 1 ;;
shann@25629 73 i?86|x86_64)
shann@25629 74 CFLAGS="$CFLAGS -fPIC"
shann@25629 75 ./configure \
shann@25629 76 --enable-shared \
shann@25629 77 --with-system-expat \
shann@25629 78 --with-system-ffi \
shann@25629 79 --without-ensurepip \
shann@25629 80 --build=${HOST_SYSTEM} \
shann@25629 81 --host=${HOST_SYSTEM} &&
shann@25634 82 make && make DESTDIR=$DESTDIR install ;;
shann@25629 83 esac
shann@25629 84
shann@25629 85 # chmod 755 $install/usr/lib/libpython${VERSION%.*}m.so
shann@25629 86 chmod 755 $install/usr/lib/libpython${VERSION%%.*}.so
shann@25629 87 find $install -type f -name "*.pyc" -delete
shann@25629 88 }
shann@25629 89
shann@25629 90 # Rules to gen a SliTaz package suitable for Tazpkg.
shann@25629 91 genpkg_rules()
shann@25629 92 {
shann@25629 93 python_version=${VERSION:0:3}
shann@25629 94 # mkdir -p $fs/usr/include/python${python_version}m
shann@25629 95 mkdir -p $fs/usr
shann@25629 96 mkdir $fs/usr/bin && mkdir $fs/usr/lib
shann@25629 97 cp -a $install/usr/bin/* $fs/usr/bin
shann@25629 98 cp -a $install/usr/lib/* $fs/usr/lib
shann@25728 99
shann@25728 100 # Ensure we don't have pyc file
shann@25728 101 find $fs/usr/lib -name "*.pyc" -delete
shann@25728 102
shann@25629 103 # needed for mercurial to work now
shann@25629 104 # cp -a $install/usr/include/python${python_version}m/pyconfig.h \
shann@25629 105 # $fs/usr/include/python${python_version}m
shann@25629 106 rm -f $fs/usr/bin/*-config
shann@25629 107 # Split IDLE with TK dep
shann@25629 108 rm -f $fs/usr/bin/idle*
shann@25634 109 rm -rf $fs/usr/lib/python3.9/idlelib
shann@25629 110 }
shann@25629 111
shann@25629 112 # Post install commands for Tazpkg.
shann@25629 113 pre_install()
shann@25629 114 {
shann@25629 115 # Removed symlinks if python2 installed
shann@25629 116 if [ -d ${1}${INSTALLED}/python2 ]; then
shann@25629 117 rm -f /usr/bin/2to3
shann@25629 118 fi
shann@25629 119 }
shann@25629 120
shann@25629 121 post_remove()
shann@25629 122 {
shann@25629 123 if [ -d ${1}${INSTALLED}/python2 ]; then
shann@25629 124 ln -s /usr/bin/2to3-2.7 /usr/bin/2to3
shann@25629 125 fi
shann@25629 126 }