Subject: [PATCH 02/12] gnu: Add ocaml-lablgtk3.

From: Brett Gilio <[email-masked]>
Date: Mon, 06 Jan 2020 02:26:41 -0600

>From 33425dcb8f66b7d7669c08a3f37f276087459717 Mon Sep 17 00:00:00 2001
From: Brett Gilio <[email-masked]>
Date: Mon, 6 Jan 2020 01:26:49 -0600
Subject: [PATCH 02/12] gnu: Add ocaml-lablgtk3.
To: [email-masked]

* gnu/packages/ocaml.scm (ocaml-lablgtk3): New variable.
---
 gnu/packages/ocaml.scm | 42 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 42 insertions(+)

diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm
index 198ff55078..a01ee475c9 100644
--- a/gnu/packages/ocaml.scm
+++ b/gnu/packages/ocaml.scm
@@ -5273,3 +5273,45 @@ with support for multiple output devices. Currently supported output targets
 include the X Window System, Quartz, Win32, image buffers, PostScript, PDF,
 and SVG file output.")
     (license license:lgpl3+)))
+
+(define-public ocaml-lablgtk3
+  (package
+    (name "ocaml-lablgtk3")
+    (version "3.0.beta8")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                     (url "https://github.com/garrigue/lablgtk")
+                     (commit version)))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "08pgwnia240i2rw1rbgiahg673kwa7b6bvhsg3z4b47xr5sh9pvz"))))
+    (build-system dune-build-system)
+    (arguments
+     `(#:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (add-before 'build 'make-writable
+           (lambda _
+             (for-each (lambda (file) (chmod file #o644)) (find-files "." "."))
+             #t)))))
+    (propagated-inputs
+     `(("ocaml-cairo2" ,ocaml-cairo2)))
+    (inputs
+     `(("camlp5" ,camlp5)
+       ("gtk+" ,gtk+)
+       ("gtksourceview-3" ,gtksourceview-3)
+       ("gtkspell3" ,gtkspell3)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (home-page "https://github.com/garrigue/lablgtk")
+    (synopsis "OCaml interface to GTK+3")
+    (description "LablGtk is an OCaml interface to GTK+ 1.2, 2.x and 3.x.  It
+provides a strongly-typed object-oriented interface that is compatible with the
+dynamic typing of GTK+.  Most widgets and methods are available.  LablGtk
+also provides bindings to gdk-pixbuf, the GLArea widget (in combination with
+LablGL), gnomecanvas, gnomeui, gtksourceview, gtkspell, libglade (and it can
+generate OCaml code from .glade files), libpanel, librsvg and quartz.")
+    ;; Version 2 only, with linking exception
+    (license license:lgpl2.0)))
-- 
2.24.1