summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--build-support/python-setuptools-bootstrap/PKGBUILD78
1 files changed, 78 insertions, 0 deletions
diff --git a/build-support/python-setuptools-bootstrap/PKGBUILD b/build-support/python-setuptools-bootstrap/PKGBUILD
new file mode 100644
index 00000000..24b68b98
--- /dev/null
+++ b/build-support/python-setuptools-bootstrap/PKGBUILD
@@ -0,0 +1,78 @@
+# 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
+
+pkgbase=python-setuptools-bootstrap
+pkgname=('python-setuptools-bootstrap' 'python2-setuptools-bootstrap')
+pkgver=41.2.0
+pkgrel=5
+epoch=1
+pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages - bootstrap variant"
+arch=('any')
+license=('PSF')
+url="https://pypi.org/project/setuptools/"
+#_deps=('appdirs' 'packaging')
+makedepends=("${_deps[@]/#/python-}" "${_deps[@]/#/python2-}" 'git')
+source=("$pkgbase-$pkgver.tar.gz::https://github.com/pypa/setuptools/archive/v$pkgver.tar.gz")
+sha512sums=('9ddaae9d530cb5580566abba4b9aec19d5bbbc9bd571eb121ce597d311e99c8f766fd905d856419355fa9a676040c41703c0d7fbe7e6d068e701dd89df4280e1')
+
+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
+
+ cp -a setuptools-$pkgver{,-py2}
+
+ cd "$srcdir"/setuptools-$pkgver
+ sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python3|" setuptools/command/easy_install.py
+
+ cd "$srcdir"/setuptools-$pkgver-py2
+ sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python2|" setuptools/command/easy_install.py
+}
+
+build() {
+ cd "$srcdir"/setuptools-$pkgver
+ python bootstrap.py
+ python setup.py build
+
+ cd "$srcdir"/setuptools-$pkgver-py2
+ python2 bootstrap.py
+ python2 setup.py build
+}
+
+package_python-setuptools-bootstrap() {
+ 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
+}
+
+package_python2-setuptools-bootstrap() {
+ depends=("${_deps[@]/#/python2-}")
+ provides=('python2-distribute' "python2-setuptools=${pkgver}")
+ replaces=('python2-distribute')
+
+ cd "$srcdir"/setuptools-$pkgver-py2
+ python2 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 --skip-build
+ rm "$pkgdir"/usr/bin/easy_install
+}