mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-17 09:10:08 +02:00
dev-python/coverage: new recipe.
This commit is contained in:
128
dev-python/coverage/coverage-4.5.2.recipe
Normal file
128
dev-python/coverage/coverage-4.5.2.recipe
Normal file
@@ -0,0 +1,128 @@
|
||||
SUMMARY="A Python library for measuring code coverage"
|
||||
DESCRIPTION="coverage is tool for measuring code coverage of Python programs."
|
||||
HOMEPAGE="https://github.com/nedbat/coveragepy
|
||||
https://coverage.readthedocs.io/
|
||||
https://pypi.org/project/coverage/"
|
||||
COPYRIGHT="2001 Gareth Rees
|
||||
2004-2018 Ned Batchelder"
|
||||
LICENSE="Apache v2"
|
||||
REVISION="1"
|
||||
SOURCE_URI="https://github.com/nedbat/coveragepy/archive/coverage-$portVersion.tar.gz"
|
||||
CHECKSUM_SHA256="254dc2460f1141fb7101943b2429dead2d93a78f03022d7d607b218e79b7cedd"
|
||||
SOURCE_DIR="coveragepy-coverage-$portVersion"
|
||||
|
||||
ARCHITECTURES="x86_gcc2 x86 x86_64"
|
||||
SECONDARY_ARCHITECTURES="x86"
|
||||
|
||||
PROVIDES="
|
||||
coverage$secondaryArchSuffix = $portVersion
|
||||
"
|
||||
REQUIRES="
|
||||
haiku$secondaryArchSuffix
|
||||
"
|
||||
|
||||
BUILD_REQUIRES="
|
||||
haiku${secondaryArchSuffix}_devel
|
||||
"
|
||||
BUILD_PREREQUIRES="
|
||||
cmd:gcc$secondaryArchSuffix
|
||||
"
|
||||
|
||||
PYTHON_PACKAGES=()
|
||||
PYTHON_VERSIONS=()
|
||||
PYTHON_LIBSUFFIXES=()
|
||||
# We don't have python2 for secondaryArch
|
||||
if [ -z "$secondaryArchSuffix" ]; then
|
||||
PYTHON_PACKAGES+=(python)
|
||||
PYTHON_VERSIONS+=(2.7)
|
||||
PYTHON_LIBSUFFIXES+=("")
|
||||
BUILD_REQUIRES+="
|
||||
setuptools_python
|
||||
"
|
||||
BUILD_PREREQUIRES+="
|
||||
cmd:python2
|
||||
"
|
||||
fi
|
||||
# gcc2 does not support the flags passed by python3
|
||||
if [ "$effectiveTargetArchitecture" != x86_gcc2 ]; then
|
||||
PYTHON_PACKAGES+=(python3)
|
||||
PYTHON_VERSIONS+=(3.6)
|
||||
PYTHON_LIBSUFFIXES+=(m)
|
||||
BUILD_REQUIRES+="
|
||||
setuptools_python3
|
||||
"
|
||||
BUILD_PREREQUIRES+="
|
||||
cmd:python3
|
||||
"
|
||||
fi
|
||||
if [ "$targetArchitecture" = x86_gcc2 -a -n "$secondaryArchSuffix" ]; then
|
||||
PROVIDES_python3="
|
||||
coverage_python3 = $portVersion
|
||||
"
|
||||
fi
|
||||
for i in "${!PYTHON_PACKAGES[@]}"; do
|
||||
pythonPackage=${PYTHON_PACKAGES[i]}
|
||||
pythonVersion=${PYTHON_VERSIONS[$i]}
|
||||
pythonLibSuffix=${PYTHON_LIBSUFFIXES[$i]}
|
||||
|
||||
eval "PROVIDES_$pythonPackage+=\"
|
||||
${portName}_$pythonPackage = $portVersion
|
||||
cmd:coverage${pythonVersion%.*}
|
||||
cmd:coverage_$pythonVersion
|
||||
\""
|
||||
if [ $pythonPackage = python3 ]; then
|
||||
PROVIDES_python3+="
|
||||
cmd:coverage
|
||||
"
|
||||
fi
|
||||
eval "REQUIRES_$pythonPackage=\"
|
||||
haiku$secondaryArchSuffix
|
||||
lib:libpython$pythonVersion$pythonLibSuffix$secondaryArchSuffix
|
||||
\""
|
||||
done
|
||||
|
||||
BUILD()
|
||||
{
|
||||
for i in "${!PYTHON_PACKAGES[@]}"; do
|
||||
pythonPackage=${PYTHON_PACKAGES[i]}
|
||||
pythonVersion=${PYTHON_VERSIONS[$i]}
|
||||
|
||||
rm -rf "$sourceDir"-$pythonPackage
|
||||
cp -a "$sourceDir" "$sourceDir"-$pythonPackage
|
||||
cd "$sourceDir"-$pythonPackage
|
||||
|
||||
python=python$pythonVersion
|
||||
$python setup.py build
|
||||
done
|
||||
}
|
||||
|
||||
INSTALL()
|
||||
{
|
||||
for i in "${!PYTHON_PACKAGES[@]}"; do
|
||||
pythonPackage=${PYTHON_PACKAGES[i]}
|
||||
pythonVersion=${PYTHON_VERSIONS[$i]}
|
||||
|
||||
cd "$sourceDir"-$pythonPackage
|
||||
|
||||
python=python$pythonVersion
|
||||
installLocation=$prefix/lib/$python/vendor-packages/
|
||||
export PYTHONPATH=$installLocation
|
||||
mkdir -p "$installLocation"
|
||||
$python setup.py install \
|
||||
--optimize=1 \
|
||||
--root=/ --prefix="$prefix"
|
||||
|
||||
if [ $pythonPackage = python ]; then
|
||||
rm "$prefix"/bin/coverage
|
||||
fi
|
||||
|
||||
packageEntries $pythonPackage \
|
||||
"$prefix"/bin \
|
||||
"$prefix"/lib/$python
|
||||
done
|
||||
|
||||
if [ -z "$secondaryArchSuffix" ]; then
|
||||
install -m 755 -d "$docDir"
|
||||
install -m 644 -t "$docDir" README.rst
|
||||
fi
|
||||
}
|
||||
Reference in New Issue
Block a user