aboutsummaryrefslogtreecommitdiffstats
path: root/community/unison/APKBUILD
blob: 0150413df3234fb1b76cea6da68d4a8c5dd21d06 (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
# Contributor: Jean-Louis Fuchs <ganwell@fangorn.ch>
# Maintainer: Jean-Louis Fuchs <ganwell@fangorn.ch>
pkgname=unison
pkgver=2.48.4
pkgrel=3
pkgdesc="Unison - efficient file-synchronization tool"
url="https://www.cis.upenn.edu/~bcpierce/unison/"
# ocaml is not built for x86, armhf
# lablgtk is not built for aarch64
arch="all !x86 !armhf !aarch64"
license="GPL"
makedepends="ocaml lablgtk-dev linux-headers emacs-nox"
subpackages="$pkgname-doc"
source="http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/unison-$pkgver.tar.gz
	http://www.seas.upenn.edu/~bcpierce/unison/download/releases/stable/unison-$pkgver-manual.html
	fix_inotify_check.patch
	marshalling.patch"
# TODO: Enable check once this issue is fixed:
# https://github.com/bcpierce00/unison/issues/73
options="!check"
builddir="$srcdir/src"

build() {
	cd "$builddir"
	# ocamlopt is a front-end for gcc which will create optimized ocaml
	# binaries. It will call gcc, but it hasn't implemented all gcc options.
	# -ccopt is the way to pass arbitrary options.
	local _cflags=""
	for i in $CFLAGS; do _cflags="$_cflags -ccopt $i"; done
	export CFLAGS="$_cflags"
	for ui in text gtk2; do
		make -j1 clean
		make -j1 mkProjectInfo 
		make -j1 UISTYLE=$ui DEBUGGING=false THREADS=true
		mv unison unison-$ui
	done
}

doc() {
	pkgdesc="Unison - efficient file-synchronization tool (documentation)"
	local _docdir="$subpkgdir"/usr/share/doc/$pkgname/
	mkdir -p "$_docdir"
	cd "$srcdir"
	cp unison-$pkgver-manual.html "$_docdir"
}

package() {
	cd "$builddir"
	install -d "${pkgdir}"/usr/bin
	install -m755 unison-* "${pkgdir}"/usr/bin
	cd "${pkgdir}"/usr/bin
	ln -s unison-text unison
	ln -s unison unison-${pkgver%.*}
}

md5sums="5334b78c7e68169df7de95f4c6c4b60f  unison-2.48.4.tar.gz
3dc5de6c0609ae2e3019d22f76345b91  unison-2.48.4-manual.html
c40a53099c98f7a82eaad52b7e5d0df2  fix_inotify_check.patch
e4da5777b26376de728f22b2c296950d  marshalling.patch"
sha256sums="30aa53cd671d673580104f04be3cf81ac1e20a2e8baaf7274498739d59e99de8  unison-2.48.4.tar.gz
2b5674e2fd7751148784a716ce5a03f8cd0a321c8a3bd4343832ed9b83d2d404  unison-2.48.4-manual.html
ef0371e70c94250ca04e80a5fddf61f3edab1c6ec0854e9bf5b2edd6dd18e986  fix_inotify_check.patch
6e652b120f1b526557ab0a88c162aec3957444bfdeaf7f9c52ca0f3c48c58d9a  marshalling.patch"
sha512sums="c8e7bd2b14edae31e7d08154cdc2dce8173546b6163b9e5f4f2b1c8255792a7645d8449da88d7acfcbf498746481d24d0a3936978969920530a15a16bcbc6024  unison-2.48.4.tar.gz
b995712cda51d612bd81c89589d872099b3b9c90f7413268b24ab399a1eff7690200980514a834ee3d12bd3c89ef61bb8a29b3970c01433e0c4671d363a96b68  unison-2.48.4-manual.html
27eaf4f347dc827dc14b338ef2be40d25507c6c9d65ecdc8f811ebe994f6e23577ad85fcc86b63d148b57844b24e6034061c869b641fbd3173532a26e0828803  fix_inotify_check.patch
3ca783527ee4b5eacd060086a72987e479b2f04d795d6689c8357eb33635e91021b6cd8b926cb583a4ca3dd18373c8ce5b50ba44dd5fa18b2e2e78922cea3c9f  marshalling.patch"