SUMMARY="Optimising static compiler for Python" DESCRIPTION="Cython is an optimising static compiler for both the Python \ programming language and the extended Cython programming language (based on \ Pyrex). It makes writing C extensions for Python as easy as Python itself." HOMEPAGE="https://cython.org/" COPYRIGHT="2007-2023 Stefan Behnel, Robert Bradshaw, et al." LICENSE="Apache v2" REVISION="1" SOURCE_URI="https://files.pythonhosted.org/packages/source/c/cython/Cython-$portVersion.tar.gz" CHECKSUM_SHA256="41c0cfd2d754e383c9eeb95effc9aa4ab847d0c9747077ddd7c0dcb68c3bc01f" SOURCE_DIR="Cython-$portVersion" SOURCE_FILENAME="Cython-$portVersion.tar.gz" ARCHITECTURES="all !x86_gcc2" SECONDARY_ARCHITECTURES="x86" PROVIDES=" $portName = $portVersion " REQUIRES=" haiku$secondaryArchSuffix " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel " BUILD_PREREQUIRES=" cmd:gcc$secondaryArchSuffix cmd:make " PYTHON_VERSIONS=(3.9 3.10) # Build packages for these Python versions. defaultVersion=3.10 # And treat this one as the default. for i in "${!PYTHON_VERSIONS[@]}"; do pythonVersion=${PYTHON_VERSIONS[$i]} pythonPackage=python${pythonVersion//.} eval "PROVIDES_${pythonPackage}=\" ${portName}_$pythonPackage = $portVersion cmd:cygdb$pythonVersion cmd:cython$pythonVersion cmd:cythonize$pythonVersion \"" if [ "$targetArchitecture" = x86_gcc2 ]; then eval "PROVIDES_${pythonPackage}+=\" cython_$pythonPackage = $portVersion \"" fi # Provide non version-suffixed cmds for the default Python version if [ $pythonVersion = $defaultVersion ]; then eval "PROVIDES_${pythonPackage}+=\" cmd:cygdb = $portVersion cmd:cython = $portVersion cmd:cythonize = $portVersion \"" fi eval "REQUIRES_$pythonPackage=\" $REQUIRES cmd:python$pythonVersion \"" BUILD_REQUIRES+=" build_$pythonPackage installer_$pythonPackage setuptools_$pythonPackage wheel_$pythonPackage " BUILD_PREREQUIRES+=" cmd:python$pythonVersion " done INSTALL() { for i in "${!PYTHON_VERSIONS[@]}"; do pythonVersion=${PYTHON_VERSIONS[$i]} pythonPackage=python${pythonVersion//.} python=python$pythonVersion rm -rf dist $python -m build --wheel --skip-dependency-check --no-isolation $python -m installer --p $prefix dist/*.whl # Version suffix all the scripts for command in cygdb cython cythonize; do mv $prefix/bin/$command $prefix/bin/$command$pythonVersion done # And provide suffix-less symlinks for the default version if [ $pythonVersion = $defaultVersion ]; then for command in $prefix/bin/*; do ln -sr $command ${command%$pythonVersion} done fi install -m 755 -d "$docDir" install -m 644 -t "$docDir" README.rst packageEntries $pythonPackage \ $prefix/lib/python* \ $prefix/bin/* \ $docDir done }