# upstream git revision: a6efc98e6cda125be25a45410c45f87a8769ca76

# Maintainer:  Erich Eckner <arch32 at eckner dot net>
# Contributor: Angel Velasquez <angvp@archlinux.org>
# Contributor: Felix Yan <felixonmars@archlinux.org>
# Contributor: Eli Schwartz <eschwartz@archlinux.org>

# heavily borrowed from python-setuptools' PKGBUILD

pkgname=python-setuptools-bootstrap
_pkgname="${pkgname%-*}"
pkgver='56.2.0'
pkgrel='2'
epoch='1'
pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages - bootstrap variant"
arch=('any')
license=('PSF')
url="https://pypi.org/project/setuptools/"
makedepends=('python' 'git')
source=("$_pkgname-$pkgver.tar.gz::https://github.com/pypa/setuptools/archive/v$pkgver.tar.gz")
sha512sums=('ff062db8adf4478bb55650e0c5ef162aed1e4de2b6dba8c0b6ea986b669ef2c8af126247f281feb749cd8a54c0bd9af54e99289073ab742b0d4e26a0208b963c')

export SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES=0

prepare() {

  # Remove post-release tag since we are using stable tags
  sed -e '/tag_build = .post/d' \
      -e '/tag_date = 1/d' \
      -i setuptools-$pkgver/setup.cfg

  # 'Clean' installation is expected to fail since we removed bundled packages
  sed -i '/^def test_clean_env_install/i import pytest\n\n@pytest.mark.xfail' setuptools-$pkgver/setuptools/tests/test_virtualenv.py

  # Tests failed. Importing an unbundled new setuptools in a virtualenv does not work, but this won't
  # affect normal virtualenv usage (which don't have to import the unbundled setuptools in *current*
  # dir.
  sed -e '/^def test_pip_upgrade_from_source/i @pytest.mark.xfail' \
      -e '/^def test_test_command_install_requirements/i @pytest.mark.xfail' \
      -e '/^def test_no_missing_dependencies/i @pytest.mark.xfail' \
      -i setuptools-$pkgver/setuptools/tests/test_virtualenv.py

  cd "$srcdir"/setuptools-$pkgver
  sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python3|" setuptools/command/easy_install.py
}

build() {
  cd "$srcdir"/setuptools-$pkgver
  python bootstrap.py
  python setup.py build
}

package() {
  depends=("${_deps[@]/#/python-}")
  provides=('python-distribute' "python-setuptools=${pkgver}")
  replaces=('python-distribute')

  cd "$srcdir"/setuptools-$pkgver
  # create directory before installing (otherwise installing fails)
  mkdir build/scripts-3.10
  python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 --skip-build
}