mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-10 22:00:09 +02:00
76 lines
2.0 KiB
Bash
76 lines
2.0 KiB
Bash
SUMMARY="Functors, Applicatives, And Monads in Python"
|
|
DESCRIPTION="OSlash (Ø) is a library for playing with functional programming in \
|
|
Python 3.8+. It's an attempt to re-implement some of the code from Learn You a \
|
|
Haskell for Great Good! in Python 3.8. OSlash unifies functional and object \
|
|
oriented paradigms by grouping related functions within classes. Objects are \
|
|
however never used for storing values or mutable data, and data only lives within \
|
|
function closures.
|
|
|
|
OSlash is intended to be a tutorial. For practical functional programming in Python \
|
|
in production environments you should use FSlash instead."
|
|
HOMEPAGE="https://github.com/dbrattli/oslash"
|
|
COPYRIGHT="Dag Brattli"
|
|
LICENSE="MIT"
|
|
REVISION="1"
|
|
SOURCE_URI="https://pypi.io/packages/source/${portName:0:1}/$portName/OSlash-$portVersion.tar.gz"
|
|
CHECKSUM_SHA256="868aeb58a656f2ed3b73d9dd6abe387b20b74fc9413d3e8653b615b15bf728f3"
|
|
SOURCE_DIR="OSlash-$portVersion"
|
|
|
|
ARCHITECTURES="any"
|
|
|
|
PROVIDES="
|
|
$portName = $portVersion
|
|
"
|
|
REQUIRES="
|
|
haiku
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku_devel
|
|
"
|
|
|
|
PYTHON_PACKAGES=(python39 python310)
|
|
PYTHON_VERSIONS=(3.9 3.10)
|
|
for i in "${!PYTHON_PACKAGES[@]}"; do
|
|
pythonPackage=${PYTHON_PACKAGES[i]}
|
|
pythonVersion=${PYTHON_VERSIONS[$i]}
|
|
|
|
eval "PROVIDES_${pythonPackage}=\"
|
|
${portName}_$pythonPackage = $portVersion
|
|
\""
|
|
eval "REQUIRES_$pythonPackage=\"
|
|
haiku
|
|
typing_extensions_$pythonPackage
|
|
cmd:python$pythonVersion
|
|
\""
|
|
BUILD_REQUIRES+="
|
|
pip_$pythonPackage
|
|
setuptools_$pythonPackage
|
|
"
|
|
BUILD_PREREQUIRES+="
|
|
cmd:python$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
|
|
rm -rf build
|
|
|
|
$python setup.py build install \
|
|
--root=/ --prefix=$prefix
|
|
|
|
packageEntries $pythonPackage \
|
|
$prefix/lib/python*
|
|
done
|
|
}
|