summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 0fde0985964b3fffb9dbffb04d1840eb11edb9fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
# Maintainer: Manuel Wiesinger <m {you know what belongs here} mmap {and here} at>
# Contributor: Daniel Peukert <daniel@peukert.cc>

_projectname='mdx'
pkgname="ocaml-$_projectname"
pkgver='2.7.0'
pkgrel='1'
pkgdesc='Executable code blocks inside markdown files for OCaml'
arch=('x86_64' 'aarch64')
url="https://github.com/realworldocaml/$_projectname"
license=('ISC')
depends=(
    'camlp-streams'
    'ocaml-astring'
    'ocaml-cmdliner>=1.1.0'
    'ocaml-csexp>=1.3.2'
    'ocaml-findlib'
    'ocaml-fmt>=0.8.7'
    'ocaml-logs>=0.7.0'
    'ocaml-ocaml-version>=2.3.0'
    'ocaml-re>=1.7.2'
    'ocaml>=4.08.0'
    'zstd'
)
makedepends=(
    'dune>=3.5.0'
    'cppo>=1.1.0'
)
checkdepends=(
    'ocaml-alcotest'
    'ocaml-lwt'
)
options=('!strip')
source=("$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz")
b2sums=('8328abb601f8af26fd59b0ae4cebc9d645dfc4ef1df577abdd05c173dae45a635c5d5974e1cd3eccd06c9cb346bf33fd7aeb935b7087a159a5c065f3c543bf59')

_sourcedirectory="$_projectname-$pkgver"

prepare() {
	cd "$srcdir/$_sourcedirectory/"

	# Replace version watermarks
	find . -type f -exec sed -i "s/%%VERSION%%/$pkgver/g" {} +
}

build() {
	cd "$srcdir/$_sourcedirectory/"
	dune build --release --verbose
}

check() {
	cd "$srcdir/$_sourcedirectory/"
	dune runtest --release --verbose
}

package() {
    cd "$srcdir/$_sourcedirectory/"

    DESTDIR="$pkgdir" \
	   dune install \
	   --prefix '/usr' \
	   --libdir '/usr/lib/ocaml' \
	   --docdir '/usr/share/doc' \
	   --mandir '/usr/share/man' \
	   --release \
	   --verbose

	for _folder in "$pkgdir/usr/share/doc/"*; do
		mv "$_folder" "$pkgdir/usr/share/doc/ocaml-$(basename "$_folder")"
	done

	install -dm755 "$pkgdir/usr/share/licenses/$pkgname"
	ln -sf "/usr/share/doc/$pkgname/LICENSE.md" "$pkgdir/usr/share/licenses/$pkgname/ISC"
}