Received: from out2.migadu.com (out2.migadu.com [188.165.223.204]) by nld3-dev1.alpinelinux.org (Postfix) with ESMTPS id 31D52781784 for <~alpine/aports@lists.alpinelinux.org>; Wed, 31 Mar 2021 00:47:42 +0000 (UTC) X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outerpassage.net; s=key1; t=1617151661; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=JmwIXl5YMxt2JvFX+tDVvBHNs1p1WaAj1pe3MMDlyeE=; b=mURCMjvohVKrkPJiq9mgfT415igXR5/0cOtXAwqinGmhrIXHyDUFeHBhJyIjX2SKAKhm14 TD9B2BFh4oCsU+kPIow1tCkW60L5bS3sv7w/17MwIsctPtKE8Q9p5BSBPK05ujBjMBt9dr 8SejiTrxo+oljuXzR5sQu5sWYbSCFpY= From: River Dillon To: ~alpine/aports@lists.alpinelinux.org Cc: River Dillon Subject: [PATCH v2] testing/agda: new aport Date: Tue, 30 Mar 2021 17:47:33 -0700 Message-Id: <20210331004733.2543-1-river@outerpassage.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-Migadu-Auth-User: river@outerpassage.net https://wiki.portal.chalmers.se/agda/pmwiki.php a dependently typed functional programming language --- The first patch was missing a build-time dependency (texlive) for the documentation. testing/agda/APKBUILD | 67 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 testing/agda/APKBUILD diff --git a/testing/agda/APKBUILD b/testing/agda/APKBUILD new file mode 100644 index 0000000000..12858c83b3 --- /dev/null +++ b/testing/agda/APKBUILD @@ -0,0 +1,67 @@ +# Contributor: River Dillon +# Maintainer: River Dillon +pkgname=agda +pkgver=2.6.1.3 +pkgrel=0 +pkgdesc="a dependently typed functional programming language" +url="https://wiki.portal.chalmers.se/agda/pmwiki.php" +arch="x86_64" +license="agda" +makedepends="\ + ghc \ + cabal \ + zlib-dev \ + ncurses-dev \ + icu-libs \ + py3-sphinx \ + py3-sphinx_rtd_theme \ + texlive-full \ + " +subpackages="$pkgname-doc" +source="$pkgname-$pkgver.tar.gz::https://github.com/agda/agda/archive/refs/tags/v$pkgver.tar.gz" +export CABAL_DIR="$srcdir/cabal" +export PATH="$PATH:$CABAL_DIR/bin" + +# Agda provides a 'test' target in the makefile, but I haven't been able to get +# it working yet. Agda should support the nix-style cabal commands soon, which +# will make this easier. +options="!check" + +prepare() { + default_prepare + cabal v2-update + touch doc/user-manual.pdf # hack + cabal v2-install -j --only-dependencies + cabal v2-install alex happy # just to add to path +} + +build() { + ghcver=$(runhaskell --version | awk '{print $2;}') # GHC version + runhaskell Setup.hs configure \ + "--package-db=$CABAL_DIR/store/ghc-$ghcver/package.db" \ + "--prefix=/usr" \ + "--datasubdir=$pkgname" \ + "--docdir=\$datadir/doc/$pkgname" + runhaskell Setup.hs build -j "--ghc-options=-j -O1" + make user-manual-pdf + make user-manual-html +} + +package() { + # copy everything + runhaskell Setup.hs copy "--destdir=$pkgdir" + + # install license in the correct location + rm -r "$pkgdir/usr/share/doc" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + + # don't need development files + rm -r "$pkgdir/usr/lib" + + # documentation + install -Dm644 "doc/user-manual.pdf" \ + "$pkgdir/usr/share/doc/$pkgname/pdf/user-manual.pdf" + cp -r "doc/user-manual/_build/html" "$pkgdir/usr/share/doc/$pkgname/html" +} + +sha512sums="3c9ca47181aca143f717642c143fb6a8124eb0cffec2b2f05e7b257a252e9c3253982a05af177974bc16da9c44244bb38731dd032f4f0fb0ede3c0a4f7fb77ac agda-2.6.1.3.tar.gz" -- 2.30.2