0
0
Fork 0
haikuports/dev-python/setuptools/setuptools-41.4.0.recipe

99 lines
2.5 KiB
Bash

SUMMARY="Download, build, install, upgrade, and uninstall Python packages"
DESCRIPTION="EasyInstall (easy_install) gives you a quick and painless way \
to install packages remotely by connecting to the cheeseshop or even other \
websites via HTTP. It is somewhat analogous to the CPAN and PEAR tools for \
Perl and PHP, respectively."
HOMEPAGE="https://pypi.python.org/pypi/setuptools"
COPYRIGHT="2006-2019 Python Packaging Authority"
LICENSE="Python"
REVISION="1"
SOURCE_URI="https://github.com/pypa/setuptools/archive/v$portVersion.tar.gz"
SOURCE_FILENAME="setuptools-$portVersion.tar.gz"
CHECKSUM_SHA256="185d519d6b283a10008427402cc3f834878759da279e5100b7810bc5f772ee1c"
ARCHITECTURES="any"
PROVIDES="
$portName = $portVersion
"
REQUIRES="
haiku
"
BUILD_REQUIRES="
haiku_devel
"
BUILD_PREREQUIRES="
cmd:sed
"
PYTHON_PACKAGES=(python python36 python3)
PYTHON_VERSIONS=(2.7 3.6 3.7)
for i in "${!PYTHON_PACKAGES[@]}"; do
pythonPackage=${PYTHON_PACKAGES[i]}
pythonVersion=${PYTHON_VERSIONS[$i]}
eval "PROVIDES_${pythonPackage}=\"\
${portName}_$pythonPackage = $portVersion\n\
cmd:easy_install_$pythonVersion\n\
\"; \
REQUIRES_$pythonPackage=\"\
haiku\n\
cmd:python$pythonVersion\n\
\""
BUILD_PREREQUIRES="$BUILD_PREREQUIRES
cmd:python$pythonVersion"
done
PROVIDES_python="$PROVIDES_python
cmd:easy_install
"
REPLACES_python="
python_setuptools
"
REPLACES_python3="
python3_setuptools
"
BUILD()
{
rm -rf build*
for i in "${!PYTHON_PACKAGES[@]}"; do
pythonPackage=${PYTHON_PACKAGES[i]}
pythonVersion=${PYTHON_VERSIONS[$i]}
# GENERIC: all python_setuptools-based installs need this
python=$portPackageLinksDir/cmd~python$pythonVersion/bin/python$pythonVersion
pythonVersion=$($python --version 2>&1 | sed 's/Python //' | head -c3)
installLocation=$prefix/lib/python$pythonVersion/vendor-packages/
$python bootstrap.py
$python setup.py build
mv build build$pythonVersion
done
}
INSTALL()
{
for i in "${!PYTHON_PACKAGES[@]}"; do
pythonPackage=${PYTHON_PACKAGES[i]}
pythonVersion=${PYTHON_VERSIONS[$i]}
python=python$pythonVersion
installLocation=$prefix/lib/$python/vendor-packages/
export PYTHONPATH=$installLocation:$PYTHONPATH
mkdir -p $installLocation
mv build$pythonVersion build
$python setup.py install \
--root=/ --prefix=$prefix --skip-build
sed -i -e "s|^#\!.*/usr/bin/env python|#!/bin/env python$pythonVersion|" $binDir/easy_install*
if [ $pythonPackage != python ]; then
rm $binDir/easy_install
fi
packageEntries $pythonPackage \
$prefix/lib/python* \
$binDir
done
}