# 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
pkgver='49.2.1'
pkgrel='1'
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=("$pkgbase-$pkgver.tar.gz::https://github.com/pypa/setuptools/archive/v$pkgver.tar.gz")
sha512sums=('4764ec7f73fe442885a1818a879a87976ff8cec7cd06db7a484b07892645ceb892b0ae897ad63648c4d2d4ae43bc6d2222526b0faa4559d3c10e7f175c80d9a3')

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
  python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 --skip-build
}