PLY: add python(2) subpackage, add TEST, add BUILD, fix HOMEPAGE.

Until now, INSTALL was doing both the build and the installation.
But this was bad because INSTALL was cleaning the build directory
of the python subpackage in order to build the python3 subpackage.
Creating separate build trees for each of the python subpackages
allows to keep both build trees. We can now use a TEST function.
This commit is contained in:
fbrosson
2018-10-27 10:47:44 +00:00
parent 7e5230d04a
commit 47973ca8f1

View File

@@ -9,10 +9,11 @@ empty productions, precedence rules, error recovery, and support for \
ambiguous grammars.
PLY is extremely easy to use and provides very extensive error checking."
HOMEPAGE="https://pypi.org/project/ply/"
HOMEPAGE="https://www.dabeaz.com/ply/
https://pypi.org/project/ply/"
COPYRIGHT="2006-2018 David Beazley"
LICENSE="BSD (3-clause)"
REVISION="1"
REVISION="2"
SOURCE_URI="https://files.pythonhosted.org/packages/e5/69/882ee5c9d017149285cab114ebeab373308ef0f874fcdac9beb90e0ac4da/ply-$portVersion.tar.gz"
CHECKSUM_SHA256="00c7c1aaa88358b9c765b6d3000c6eec0ba42abca5351b095321aef446081da3"
@@ -27,42 +28,80 @@ REQUIRES="
BUILD_REQUIRES="
haiku_devel
setuptools_python
setuptools_python3
"
BUILD_PREREQUIRES="
cmd:python
cmd:python3
"
PYTHON_PACKAGES=(python3)
PYTHON_VERSIONS=(3.6)
PYTHON_PACKAGES=(python python3)
PYTHON_VERSIONS=(2.7 3.6)
for i in "${!PYTHON_PACKAGES[@]}"; do
pythonPackage=${PYTHON_PACKAGES[i]}
pythonVersion=${PYTHON_VERSIONS[$i]}
eval "PROVIDES_${pythonPackage}=\"\
${portName}_$pythonPackage = $portVersion\
\"; \
REQUIRES_$pythonPackage=\"\
haiku\n\
cmd:python$pythonVersion\
\""
BUILD_REQUIRES="$BUILD_REQUIRES
setuptools_$pythonPackage"
BUILD_PREREQUIRES="$BUILD_PREREQUIRES
cmd:python$pythonVersion"
pythonPackage=${PYTHON_PACKAGES[i]}
pythonVersion=${PYTHON_VERSIONS[$i]}
eval "PROVIDES_${pythonPackage}=\"\
${portName}_$pythonPackage = $portVersion
\""
eval "REQUIRES_$pythonPackage=\"
haiku
cmd:python$pythonVersion
\""
TEST_REQUIRES+="
six_$pythonPackage
"
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:$PYTHONPATH
mkdir -p $installLocation
rm -rf build
$python setup.py build install \
--root=/ --prefix=$prefix
$python setup.py install \
--root=/ --prefix="$prefix"
packageEntries $pythonPackage \
$prefix/lib/python*
packageEntries $pythonPackage \
"$prefix"/lib/$python
done
install -m 755 -d "$docDir"
install -m 644 -t "$docDir" README.md
}
TEST()
{
for i in "${!PYTHON_PACKAGES[@]}"; do
pythonPackage=${PYTHON_PACKAGES[i]}
pythonVersion=${PYTHON_VERSIONS[$i]}
cd "$sourceDir"-$pythonPackage/test
python=python$pythonVersion
$python testlex.py
$python testyacc.py
$python testcpp.py
done
}