summarylogtreecommitdiffstats
path: root/PKGBUILD
diff options
context:
space:
mode:
authorDaniel Bermond2023-10-17 15:47:56 -0300
committerDaniel Bermond2023-10-17 15:47:56 -0300
commit3b55f0f7fdaa5bf11a8a0a90fd4072a8d4302d02 (patch)
tree69e22fd7b35d534327a966cd63f670f9f968e637 /PKGBUILD
parent4329009e979f1d347638eae8fdcdaeb05ab89031 (diff)
downloadaur-confu-git.tar.gz
Drop python2 support. Modernize the package.
Diffstat (limited to 'PKGBUILD')
-rw-r--r--PKGBUILD79
1 files changed, 15 insertions, 64 deletions
diff --git a/PKGBUILD b/PKGBUILD
index b594040e8803..5f61bf57dd67 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,84 +1,35 @@
-# Maintainer : Daniel Bermond < gmail-com: danielbermond >
+# Maintainer: Daniel Bermond <dbermond@archlinux.org>
-pkgbase=confu-git
-pkgname=('confu-git' 'confu2-git')
+pkgname=confu-git
pkgver=r44.4f3d0e7
-pkgrel=1
-pkgdesc='Cross-platform C/C++ configuration system (git version, uses python3)'
+pkgrel=2
+pkgdesc='Ninja-based configuration system (git version)'
arch=('any')
url='https://github.com/Maratyszcza/confu/'
license=('MIT')
-makedepends=(
- # official repositories
- 'git'
- 'python' 'python-setuptools' 'python-six' 'python-sphinx' 'python-sphinx_rtd_theme' 'python-yaml'
- 'python2' 'python2-setuptools' 'python2-six' 'python2-yaml'
- # AUR:
- 'python-ninja-syntax' 'python2-ninja-syntax'
-)
+depends=('python' 'python-pygit2' 'python-six' 'python-yaml' 'python-ninja-syntax')
+makedepends=('git' 'python-build' 'python-installer' 'python-setuptools' 'python-wheel')
+optdepends=('python-peachpy')
source=('git+https://github.com/Maratyszcza/confu.git')
sha256sums=('SKIP')
-prepare() {
- cp -a confu confu-py2
-}
-
pkgver() {
printf 'r%s.%s' "$(git -C confu rev-list --count HEAD)" "$(git -C confu rev-parse --short HEAD)"
}
build() {
- printf '%s\n' ' -> Building for Python3...'
cd confu
- python setup.py build
- python setup.py build_sphinx --all-files --source-dir="${srcdir}/confu/sphinx"
-
- printf '%s\n' ' -> Building for Python2...'
- cd "${srcdir}/confu-py2"
- python2 setup.py build
+ python -m build --wheel --no-isolation
}
package_confu-git() {
- depends=(
- # binary repositories:
- 'python' 'python-six' 'python-yaml'
- # AUR:
- 'python-ninja-syntax'
- )
-
- cd confu
- python setup.py install --root="$pkgdir" --optimize=1
-
- # doc
- install -d -m755 "${pkgdir}/usr/share/doc/${pkgname}"
- cp -dr --no-preserve='ownership' "${srcdir}/confu/build/sphinx/html/"* "${pkgdir}/usr/share/doc/${pkgname}"
-
- # license
- install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}"
- install -D -m644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
-}
-
-package_confu2-git() {
- pkgdesc='Cross-platform C/C++ configuration system (git version, uses python2)'
- depends=(
- # binary repositories:
- 'python2' 'python2-six' 'python2-yaml'
- # AUR:
- 'python2-ninja-syntax'
- )
-
- cd confu-py2
- python2 setup.py install --root="$pkgdir" --optimize=1
- mv "${pkgdir}/usr/bin/confu" "${pkgdir}/usr/bin/confu2"
-
- # fix wrong python versions
- sed -i '1s/python$/python2/' "${pkgdir}/usr/lib/python2.7/site-packages/confu/recipes/"*.py
-
- # doc
- install -d -m755 "${pkgdir}/usr/share/doc/${pkgname}"
- cp -dr --no-preserve='ownership' "${srcdir}/confu/build/sphinx/html/"* "${pkgdir}/usr/share/doc/${pkgname}"
+ python -m installer --destdir="$pkgdir" confu/dist/*.whl
- # license
+ local _pyver
+ local _pkgver
+ _pyver="$(python -c 'import sys; print(".".join(map(str, sys.version_info[:2])))')"
+ _pkgver="$(awk -F'=' "/__version_info__/ { gsub(/,/, \".\"); gsub(/['()[:space:]]+/, \"\"); print \$2; exit }" confu/confu/__init__.py)"
install -d -m755 "${pkgdir}/usr/share/licenses/${pkgname}"
- install -D -m644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
+ ln -s "../../../lib/python${_pyver}/site-packages/confu-${_pkgver}.dist-info/LICENSE" \
+ "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
}