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="88fc85b6c0cf561e33c7359b887f2e1a29e877e420d74a257e8f2fe45f0ff856"
PATCHES="setuptools-$portVersion.patchset"

ARCHITECTURES="any"

PROVIDES="
	$portName = $portVersion
	"
REQUIRES="
	haiku
	"

BUILD_REQUIRES="
	haiku_devel
	"
BUILD_PREREQUIRES="
	"

PYTHON_PACKAGES=(python3 python38 python39 python310)
PYTHON_VERSIONS=(3.7 3.8 3.9 3.10)
for i in "${!PYTHON_PACKAGES[@]}"; do
pythonPackage=${PYTHON_PACKAGES[i]}
pythonVersion=${PYTHON_VERSIONS[$i]}
eval "PROVIDES_${pythonPackage}=\"\
	${portName}_$pythonPackage = $portVersion\n\
	\"; \
REQUIRES_$pythonPackage=\"\
	haiku\n\
	cmd:python$pythonVersion\n\
	\""
BUILD_PREREQUIRES="$BUILD_PREREQUIRES
	cmd:python$pythonVersion"
done

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
		installLocation=$prefix/lib/python$pythonVersion/vendor-packages/

		export SETUPTOOLS_USE_DISTUTILS=local
		$python setup.py egg_info
		$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
		export SETUPTOOLS_USE_DISTUTILS=local
		$python setup.py install \
			--root=/ --prefix=$prefix

		packageEntries $pythonPackage \
			$prefix/lib/python*
		mv build build$pythonVersion
	done
}
