diff options
author | Jean-Louis Fuchs <ganwell@fangorn.ch> | 2017-04-15 19:06:03 +0200 |
---|---|---|
committer | Leonardo Arena <rnalrd@alpinelinux.org> | 2017-04-25 08:40:32 +0000 |
commit | e526a03906bcc61aefa7729e23fdfc5f1579f3d8 (patch) | |
tree | 84a966a5a5fa716e5e66c3827ccbb1f5fa52f3b7 /community | |
parent | f86ad44d64f4847cf06d67e0a1ef0eec28ba0924 (diff) | |
download | aports-e526a03906bcc61aefa7729e23fdfc5f1579f3d8.tar.bz2 aports-e526a03906bcc61aefa7729e23fdfc5f1579f3d8.tar.xz |
community/unison: move from testing, update marshalling patch
Diffstat (limited to 'community')
-rw-r--r-- | community/unison/APKBUILD | 67 | ||||
-rw-r--r-- | community/unison/fix_inotify_check.patch | 13 | ||||
-rw-r--r-- | community/unison/marshalling.patch | 16 |
3 files changed, 96 insertions, 0 deletions
diff --git a/community/unison/APKBUILD b/community/unison/APKBUILD new file mode 100644 index 0000000000..0150413df3 --- /dev/null +++ b/community/unison/APKBUILD @@ -0,0 +1,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" diff --git a/community/unison/fix_inotify_check.patch b/community/unison/fix_inotify_check.patch new file mode 100644 index 0000000000..009ce789cc --- /dev/null +++ b/community/unison/fix_inotify_check.patch @@ -0,0 +1,13 @@ +diff -ru a/fsmonitor/linux/inotify_stubs.c b/fsmonitor/linux/inotify_stubs.c +--- a/fsmonitor/linux/inotify_stubs.c 2016-05-23 18:40:05.000000000 +0200 ++++ b/fsmonitor/linux/inotify_stubs.c 2017-01-23 23:14:47.613834613 +0100 +@@ -35,6 +35,9 @@ + #define GLIBC_SUPPORT_INOTIFY 0 + #endif + ++/* Alpine linux supports inotify */ ++#define GLIBC_SUPPORT_INOTIFY 1 ++ + #if GLIBC_SUPPORT_INOTIFY + #include <sys/inotify.h> + #else diff --git a/community/unison/marshalling.patch b/community/unison/marshalling.patch new file mode 100644 index 0000000000..997b90b513 --- /dev/null +++ b/community/unison/marshalling.patch @@ -0,0 +1,16 @@ +--- a/remote.ml 2016-05-23 18:40:05.000000000 +0200 ++++ b/remote.ml 2017-03-23 11:33:24.784228112 +0100 +@@ -450,12 +450,7 @@ + let s = Bytearray.marshal data [Marshal.No_sharing] in + let l = Bytearray.length s in + ((s, 0, l) :: rem, l)), +- (fun buf pos -> +- try Bytearray.unmarshal buf pos +- with Failure s -> raise (Util.Fatal (Printf.sprintf +-"Fatal error during unmarshaling (%s), +-possibly because client and server have been compiled with different\ +-versions of the OCaml compiler." s))) ++ (fun buf pos -> Bytearray.unmarshal buf pos) + + let makeMarshalingFunctions payloadMarshalingFunctions string = + let (marshalPayload, unmarshalPayload) = payloadMarshalingFunctions in |