[arch-commits] Commit in lablgtk3/trunk (PKGBUILD)

Konstantin Gizdov kgizdov at gemini.archlinux.org
Tue Mar 8 15:11:38 UTC 2022


    Date: Tuesday, March 8, 2022 @ 15:11:37
  Author: kgizdov
Revision: 1145485

optimise pkgbuild

Modified:
  lablgtk3/trunk/PKGBUILD

----------+
 PKGBUILD |   23 ++++++++++++++++++-----
 1 file changed, 18 insertions(+), 5 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2022-03-08 14:59:50 UTC (rev 1145484)
+++ PKGBUILD	2022-03-08 15:11:37 UTC (rev 1145485)
@@ -4,7 +4,7 @@
 _pkgname=lablgtk
 pkgname="${_pkgname}3"
 pkgver=3.1.2
-pkgrel=1
+pkgrel=2
 pkgdesc="An Objective Caml interface to gtk3"
 arch=('x86_64')
 license=('LGPL')
@@ -15,17 +15,30 @@
 source=("${pkgname}-${pkgver}.tar.gz::https://github.com/garrigue/lablgtk/archive/refs/tags/${pkgver}.tar.gz")
 sha256sums=('ad7417875f79716597cc06ccd8cae1efccb326263db1010d9f83555c185f1669')
 
+_dune_release_pkgs=('lablgtk3' 'lablgtk3-gtkspell3' 'lablgtk3-sourceview3')
+dune_release_pkgs_comma() {
+  # dune build needs a comma separated list of packages
+  local dune_release_pkgs='dummy'
+  for _pkg in "${_dune_release_pkgs[@]}"; do
+    dune_release_pkgs+=",${_pkg}"
+  done
+  dune_release_pkgs="${dune_release_pkgs#dummy,}"
+  echo "${dune_release_pkgs}"
+}
+
 build() {
   cd "${srcdir}/${_pkgname}-${pkgver}"
   # gcc-10 workaround
-  OCAMLPATH=/usr/lib/ocaml LABLGTK_EXTRA_FLAGS=-fcommon dune build -p lablgtk3,lablgtk3-gtkspell3,lablgtk3-sourceview3
+  export OCAMLPATH="$(ocamlfind printconf destdir)"
+  LABLGTK_EXTRA_FLAGS=-fcommon dune build -p $(dune_release_pkgs_comma)
 }
 
 package() {
   cd "${srcdir}/${_pkgname}-${pkgver}"
-  DESTDIR="${pkgdir}" dune install lablgtk3 --prefix "/usr" --libdir "lib/ocaml"
-  DESTDIR="${pkgdir}" dune install lablgtk3-gtkspell3 --prefix "/usr" --libdir "lib/ocaml"
-  DESTDIR="${pkgdir}" dune install lablgtk3-sourceview3 --prefix "/usr" --libdir "lib/ocaml"
+  # we need to install packages one by one
+    for _pkg in "${_dune_release_pkgs[@]}"; do
+      dune install "${_pkg}" --destdir="${pkgdir}" --prefix="/usr" --libdir="$(ocamlfind printconf destdir)"
+    done
 
   install -dm755 "${pkgdir}/usr/share/"
   mv "${pkgdir}/usr/doc" "${pkgdir}/usr/share/"



More information about the arch-commits mailing list