diff mbox series

[bug#67493,gnome-team,v2,2/4] gnu: Add cppgir

Message ID c58fdb9bfab36a0add9ac31cbe3d2a8648ed1249.1701236254.git.saku@laesvuori.fi
State New
Headers show
Series [bug#67493,gnome-team,v2,1/4] gnu: Add expected-lite | expand

Commit Message

Saku Laesvuori Nov. 29, 2023, 5:40 a.m. UTC
* gnu/packages/glib.scm: Import (gnu packages pretty-print).
(cppgir): New variable.

Change-Id: I7e2cdf2d77382bfe876173901127d358b64c0dfe
---
 gnu/packages/glib.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)
diff mbox series

Patch

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index b01b948fc6..8999e5bd45 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -70,6 +70,7 @@  (define-module (gnu packages glib)
   #:use-module (gnu packages perl-check)
   #:use-module (gnu packages popt)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages pretty-print)
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages sqlite)
@@ -1555,3 +1556,28 @@  (define-public libdex
 Dex also provides Fibers which allow writing synchronous looking code in C
 that uses asynchronous and future-based APIs.")
     (license license:lgpl2.1+)))
+
+(define-public cppgir
+  (package
+    (name "cppgir")
+    (version "0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://gitlab.com/mnauw/cppgir/-/archive/v" version
+                    "/cppgir-v" version ".tar.gz"))
+              (sha256
+               (base32 "13plz1xn25lyhfxwyhmlzjn8jliakvqa06a28g5czlav1zg1565g"))))
+    (build-system cmake-build-system)
+    (arguments
+     (list
+      #:configure-flags #~(list "-DINTERNAL_EXPECTED=OFF")))
+    (inputs (list boost fmt expected-lite))
+    (home-page "https://gitlab.com/mnauw/cppgir")
+    (synopsis "A GObject-Introspection C++ binding wrapper generator")
+    (description "it processes .gir files derived from GObject-Introspection
+annotations into a set of C++ files defining suitable namespaces, classes and
+other types that together from a C++ binding. In this way, the plain C
+libraries and objects become available as native objects along with (RAII)
+managed resource handling.")
+    (license license:expat)))