mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-09 21:30:08 +02:00
python: bump versions
This commit is contained in:
158
dev-lang/python/python36-3.6.12.recipe
Normal file
158
dev-lang/python/python36-3.6.12.recipe
Normal file
@@ -0,0 +1,158 @@
|
||||
SUMMARY="An interpreted, interactive, object-oriented programming language"
|
||||
DESCRIPTION="
|
||||
Python is a programming language that lets you work more quickly and integrate \
|
||||
your systems more effectively. You can learn to use Python and see almost \
|
||||
immediate gains in productivity and lower maintenance costs.
|
||||
Python runs on Windows, Linux/Unix, Mac OS X, and has been ported to the Java \
|
||||
and .NET virtual machines.
|
||||
Python is free to use, even for commercial products, because of its \
|
||||
OSI-approved open source license.
|
||||
"
|
||||
HOMEPAGE="https://www.python.org"
|
||||
LICENSE="Python"
|
||||
COPYRIGHT="1990-2018 Python Software Foundation"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://www.python.org/ftp/python/$portVersion/Python-$portVersion.tar.xz"
|
||||
CHECKSUM_SHA256="70953a9b5d6891d92e65d184c3512126a15814bee15e1eff2ddcce04334e9a99"
|
||||
SOURCE_DIR="Python-$portVersion"
|
||||
PATCHES="python3-$portVersion.patchset"
|
||||
if [ "$secondaryArchSuffix" = _x86 ] ; then
|
||||
PATCHES+="
|
||||
python3_x86-$portVersion.patchset
|
||||
"
|
||||
fi
|
||||
|
||||
ARCHITECTURES=" !x86_gcc2 x86 x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
# On x86_gcc2 we don't want to install the commands in bin/<arch>/, but in bin/.
|
||||
commandSuffix=$secondaryArchSuffix
|
||||
commandBinDir=$binDir
|
||||
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
||||
commandSuffix=
|
||||
commandBinDir=$prefix/bin
|
||||
fi
|
||||
|
||||
PROVIDES="
|
||||
python36$secondaryArchSuffix = $portVersion compat >= 3.6
|
||||
cmd:2to3_3.6 = $portVersion compat >= 3.6
|
||||
cmd:idle3.6 = $portVersion compat >= 3.6
|
||||
cmd:pydoc3.6 = $portVersion compat >= 3.6
|
||||
cmd:python3.6 = $portVersion compat >= 3.6
|
||||
cmd:python3.6_config = $portVersion compat >= 3.6
|
||||
cmd:python3.6m = $portVersion compat >= 3.6
|
||||
cmd:python3.6m_config = $portVersion compat >= 3.6
|
||||
cmd:pyvenv_3.6 = $portVersion compat >= 3.6
|
||||
devel:libpython3.6m$secondaryArchSuffix = 1.0
|
||||
lib:libpython3.6m$secondaryArchSuffix = 1.0
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
cmd:file
|
||||
lib:libbz2$secondaryArchSuffix
|
||||
lib:libexpat$secondaryArchSuffix
|
||||
lib:libffi$secondaryArchSuffix
|
||||
lib:libintl$secondaryArchSuffix
|
||||
lib:libncurses$secondaryArchSuffix
|
||||
lib:libssl$secondaryArchSuffix
|
||||
lib:libreadline$secondaryArchSuffix
|
||||
lib:libsqlite3$secondaryArchSuffix
|
||||
lib:libz$secondaryArchSuffix
|
||||
"
|
||||
BUILD_REQUIRES="
|
||||
devel:libbz2$secondaryArchSuffix
|
||||
devel:libexpat$secondaryArchSuffix
|
||||
devel:libffi$secondaryArchSuffix
|
||||
devel:libncurses$secondaryArchSuffix
|
||||
devel:libssl$secondaryArchSuffix
|
||||
devel:libreadline$secondaryArchSuffix
|
||||
devel:libsqlite3$secondaryArchSuffix
|
||||
devel:libz$secondaryArchSuffix
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
cmd:aclocal
|
||||
cmd:autoconf
|
||||
cmd:find
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
cmd:ld$secondaryArchSuffix
|
||||
cmd:libtoolize
|
||||
cmd:pkg_config$secondaryArchSuffix
|
||||
cmd:make
|
||||
cmd:python
|
||||
"
|
||||
|
||||
GLOBAL_WRITABLE_FILES="
|
||||
non-packaged/lib/python3.6/site-packages directory keep-old
|
||||
"
|
||||
|
||||
BUILD()
|
||||
{
|
||||
export CFLAGS="-D_BSD_SOURCE"
|
||||
rm -Rf Modules/zlib Modules/expat
|
||||
|
||||
cd Modules/_ctypes/libffi
|
||||
libtoolize --force --copy --install
|
||||
cd ../../..
|
||||
|
||||
libtoolize --force --copy --install
|
||||
aclocal
|
||||
autoconf
|
||||
export OPT=""
|
||||
runConfigure --omit-dirs binDir,includeDir ./configure \
|
||||
--enable-shared --without-ensurepip --with-system-ffi \
|
||||
--with-system-expat --bindir=$commandBinDir --includedir=$developDir/headers
|
||||
|
||||
# prevent make from rebuilding stuff that requires python
|
||||
touch Parser/asdl* Python/Python-ast.c Include/Python-ast.h
|
||||
|
||||
rm -f python
|
||||
|
||||
make $jobArgs
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
make install
|
||||
|
||||
rm $libDir/libpython3.so $libDir/pkgconfig/python3.pc
|
||||
|
||||
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
||||
# On x86_gcc2, move lib-dynload to lib/python3.x/
|
||||
mv $libDir/python3.6/lib-dynload $prefix/lib/python3.6/
|
||||
fi
|
||||
prepareInstalledDevelLibs libpython3.6m
|
||||
fixPkgconfig
|
||||
if [ "$targetArchitecture" = x86_gcc2 ]; then
|
||||
# fix pkgconfig to match configure flags
|
||||
sed -i -e 's,headers/x86,headers,' $developLibDir/pkgconfig/python*.pc
|
||||
fi
|
||||
|
||||
mkdir -p $prefix/lib/python3.6/vendor-packages
|
||||
echo 'This directory contains packaged python modules.' \
|
||||
>$prefix/lib/python3.6/vendor-packages/README
|
||||
|
||||
mkdir -p $prefix/non-packaged/lib/python3.6
|
||||
mv $prefix/lib/python3.6/site-packages $prefix/non-packaged/lib/python3.6/
|
||||
|
||||
# drop testsuite altogether; move to a separate package if needed
|
||||
cd $prefix/lib/python3.6
|
||||
rm -rf ctypes/test distutils/tests idlelib/idle_test lib2to3/tests \
|
||||
sqlite3/test test tkinter/test unittest/test
|
||||
|
||||
# TODO: drop __pycache__ folders as well?
|
||||
find . -name __pycache__ | xargs rm -rf
|
||||
|
||||
rm $commandBinDir/2to3 $commandBinDir/idle3 $commandBinDir/pydoc3 \
|
||||
$commandBinDir/python3 $commandBinDir/python3-config \
|
||||
$commandBinDir/pyvenv $manDir/man1/python3.1
|
||||
}
|
||||
|
||||
TEST()
|
||||
{
|
||||
cd Lib/test
|
||||
rm -f test_asynchat.py # this one stalls, so skip it for now
|
||||
rm -f test_multiprocessing.py # this one stalls, so skip it for now
|
||||
|
||||
python3 regrtest.py
|
||||
}
|
||||
Reference in New Issue
Block a user