wok annotate python3/receipt @ rev 25621

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