summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authordringsim2025-01-25 17:40:19 +0800
committerdringsim2025-01-25 17:40:19 +0800
commit3408be69cf145ec85e3f589c6a6ece53040740d6 (patch)
tree8c9b95bf8cb88c6782a3820e3641e70980b83e87
downloadaur-ocaml-zmq.tar.gz
create package
-rw-r--r--.SRCINFO31
-rw-r--r--PKGBUILD57
2 files changed, 88 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..3d3c155bae02
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,31 @@
+pkgbase = ocaml-zmq
+ pkgver = 5.3.0
+ pkgrel = 1
+ url = https://github.com/issuu/ocaml-zmq
+ arch = x86_64
+ license = MIT
+ checkdepends = ocaml-ounit
+ makedepends = ocaml>=4.04.1
+ makedepends = dune>=2.7
+ options = !strip
+ source = ocaml-zmq-5.3.0.tar.gz::https://github.com/issuu/ocaml-zmq/archive/5.3.0.tar.gz
+ sha256sums = F06F995D797AB004A1CDD199CE6EA6F63A6701EECC929D9E0C6F667124E2AD4B
+
+pkgname = ocaml-zmq
+ pkgdesc = OCaml bindings for ZeroMQ 4.x
+ depends = ocaml>=4.03.0
+ depends = zeromq
+
+pkgname = ocaml-zmq-async
+ pkgdesc = Async-aware bindings to ZMQ
+ depends = ocaml>=4.04.1
+ depends = ocaml-zmq
+ depends = ocaml-base>=0.11.0
+ depends = ocaml-async_unix>=0.11.0
+ depends = ocaml-async_kernel>=0.11.0
+
+pkgname = ocaml-zmq-lwt
+ pkgdesc = Lwt-aware bindings to ZMQ
+ depends = ocaml>=4.03.0
+ depends = ocaml-zmq
+ depends = ocaml-lwt>=2.6.0
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..ee0d2bebe054
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,57 @@
+# Maintainer: dringsim <dringsim@qq.com>
+pkgname=('ocaml-zmq' 'ocaml-zmq-async' 'ocaml-zmq-lwt')
+pkgver='5.3.0'
+pkgrel='1'
+arch=('x86_64')
+url="https://github.com/issuu/ocaml-zmq"
+license=('MIT')
+makedepends=('ocaml>=4.04.1' 'dune>=2.7')
+checkdepends=('ocaml-ounit')
+options=('!strip')
+source=("$pkgname-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz")
+sha256sums=('F06F995D797AB004A1CDD199CE6EA6F63A6701EECC929D9E0C6F667124E2AD4B')
+
+_sourcedirectory="$pkgname-$pkgver"
+
+build() {
+ cd "$srcdir/$_sourcedirectory/"
+ dune build --profile=release --verbose -p zmq,zmq-async,zmq-lwt
+}
+
+check() {
+ cd "$srcdir/$_sourcedirectory/"
+ dune runtest --profile=release --verbose -p zmq,zmq-async,zmq-lwt
+}
+
+_do_package() {
+ cd "$srcdir/$_sourcedirectory/"
+ DESTDIR="$pkgdir" dune install --prefix '/usr' --libdir '/usr/lib/ocaml' --docdir '/usr/share/doc' --mandir '/usr/share/man' --profile=release --verbose -p $1
+
+ 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/LICENSE.md"
+}
+
+package_ocaml-zmq() {
+ pkgdesc='OCaml bindings for ZeroMQ 4.x'
+ depends=('ocaml>=4.03.0' 'zeromq')
+
+ _do_package zmq
+}
+
+package_ocaml-zmq-async() {
+ pkgdesc='Async-aware bindings to ZMQ'
+ depends=('ocaml>=4.04.1' 'ocaml-zmq' 'ocaml-base>=0.11.0' 'ocaml-async_unix>=0.11.0' 'ocaml-async_kernel>=0.11.0')
+
+ _do_package zmq-async
+}
+
+package_ocaml-zmq-lwt() {
+ pkgdesc='Lwt-aware bindings to ZMQ'
+ depends=('ocaml>=4.03.0' 'ocaml-zmq' 'ocaml-lwt>=2.6.0')
+
+ _do_package zmq-lwt
+}