SUMMARY="A C parser and AST generator written in Python" DESCRIPTION="pycparser is a parser for the C language, written in pure Python. \ It is designed to be easily integrated into applications that need to parse C \ source code." HOMEPAGE="https://github.com/eliben/pycparser" COPYRIGHT="2008-2018 Eli Bendersky" LICENSE="BSD (3-clause)" REVISION="3" SOURCE_URI="https://github.com/eliben/pycparser/archive/release_v$portVersion.tar.gz" CHECKSUM_SHA256="3c797eb2eb1ba57772bb99ffa7caed23c3a2c2ae58daef114c9b09d3a6da97e2" SOURCE_FILENAME="pycparser-$portVersion.tar.gz" SOURCE_DIR="pycparser-release_v$portVersion" ARCHITECTURES="any" PROVIDES=" pycparser = $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\ \"; \ REQUIRES_$pythonPackage=\"\ haiku\n\ cmd:python$pythonVersion\ \"" BUILD_REQUIRES="$BUILD_REQUIRES setuptools_$pythonPackage" BUILD_PREREQUIRES="$BUILD_PREREQUIRES cmd:python$pythonVersion" 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 cd pycparser $python _build_tables.py cd .. 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 --root=/ --prefix="$prefix" --optimize=1 install -m 755 -d "$dataDir"/licenses install -m 644 -T LICENSE "$dataDir"/licenses/pycparser packageEntries $pythonPackage \ "$dataDir" \ "$prefix"/lib/$python done install -m 755 -d "$dataDir"/licenses "$docDir" install -m 644 -T LICENSE "$dataDir"/licenses/pycparser install -m 644 -t "$docDir" README.rst } TEST() { for i in "${!PYTHON_PACKAGES[@]}"; do pythonPackage=${PYTHON_PACKAGES[i]} pythonVersion=${PYTHON_VERSIONS[$i]} cd "$sourceDir"-$pythonPackage python=python$pythonVersion $python tests/all_tests.py done }