mirror of
https://gitlab.alpinelinux.org/alpine/aports.git
synced 2025-06-07 11:45:36 +02:00
81 lines
2.2 KiB
Text
81 lines
2.2 KiB
Text
# Contributor: gay <gay@disroot.org>
|
|
# Maintainer: Celeste <cielesti@protonmail.com>
|
|
maintainer="Celeste <cielesti@protonmail.com>"
|
|
pkgname=darcs
|
|
pkgver=2.18.5
|
|
pkgrel=0
|
|
pkgdesc="Patch-based revision control system"
|
|
url="https://darcs.net/"
|
|
arch="aarch64 x86_64" # limited by ghc
|
|
license="GPL-2.0-or-later"
|
|
makedepends="cabal ghc curl-dev ncurses-dev zlib-dev"
|
|
#checkdepends="diffutils grep lighttpd musl-locales"
|
|
options="!check" # tests relying on presence of shell utils fail without giving detailed log
|
|
subpackages="$pkgname-doc"
|
|
source="https://hackage.haskell.org/package/darcs-$pkgver/darcs-$pkgver.tar.gz
|
|
cabal.project.freeze
|
|
"
|
|
|
|
# Directory where cabal files are stored.
|
|
export CABAL_DIR="${CABAL_DIR:-"$srcdir/dist"}"
|
|
|
|
cabal_update() {
|
|
local repo="hackage.haskell.org"
|
|
|
|
# Default config uses HTTP, change it to HTTPS.
|
|
[ -f "$CABAL_DIR"/config ] || {
|
|
cabal user-config init
|
|
cabal user-config update -a \
|
|
"repository $repo {url: https://$repo/}"
|
|
}
|
|
|
|
cd "$startdir"
|
|
[ -d "$builddir" ] || abuild unpack
|
|
msg "Freezing $pkgname dependencies"
|
|
|
|
# Resolve deps and generate fresh cabal.project.freeze with version constraints.
|
|
(
|
|
cd "$builddir" || {
|
|
error 'Is $builddir set correctly?'
|
|
return 1
|
|
}
|
|
cabal v2-update
|
|
cabal v2-freeze --shadow-installed-packages
|
|
|
|
mv -v cabal.project.freeze "$startdir"/
|
|
)
|
|
|
|
if ! abuild checksum; then
|
|
die "Failed to update checksum, run 'abuild checksum' manually"
|
|
fi
|
|
}
|
|
|
|
prepare() {
|
|
default_prepare
|
|
|
|
ln -svf "$srcdir"/cabal.project.freeze "$builddir"/
|
|
}
|
|
|
|
build() {
|
|
cabal v2-update
|
|
cabal v2-build darcs:exes \
|
|
--jobs=${JOBS:-1} \
|
|
--prefix=/usr \
|
|
--docdir=/usr/share/doc/$pkgname \
|
|
--sysconfdir=/etc
|
|
}
|
|
|
|
check() {
|
|
cabal test
|
|
}
|
|
|
|
package() {
|
|
cd dist-newstyle/build/*-linux/ghc-*/$pkgname-$pkgver/build/$pkgname
|
|
install -Dm755 $pkgname "$pkgdir"/usr/bin/$pkgname
|
|
install -Dm644 $pkgname.1 "$pkgdir"/usr/share/man/man1/$pkgname.1
|
|
}
|
|
|
|
sha512sums="
|
|
858d134e0ad4af1b4adeb4dd8250a34b12358de5993c34ee33c9ebbbe85f5b7bf49e219da7f0cdd254601095c4c70f41430871c2dd7508d5f02f1b141ff1ad4d darcs-2.18.5.tar.gz
|
|
79fc2487eb3e5cbe236a43825b28e1bc759db53a6df550be51f66324077c37640d51d1477ae6b344468d08dfe2ec8ecb19022711324667eaf072a7a1beed0483 cabal.project.freeze
|
|
"
|