bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#36117: [PATCH 2/4] gnu: Add glib-static.


From: Maxim Cournoyer
Subject: bug#36117: [PATCH 2/4] gnu: Add glib-static.
Date: Mon, 22 Feb 2021 14:50:04 -0500

* gnu/packages/glib.scm (glib-static): New variable.
---
 gnu/packages/glib.scm | 30 +++++++++++++++++++++++++++++-
 1 file changed, 29 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 9cc2b1b69e..18c905b70d 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -9,7 +9,7 @@
 ;;; Copyright ?? 2017 Petter <petter@mykolab.ch>
 ;;; Copyright ?? 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
 ;;; Copyright ?? 2018 Alex Vong <alexvong1995@gmail.com>
-;;; Copyright ?? 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright ?? 2019, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 ;;; Copyright ?? 2019 Giacomo Leidi <goodoldpaul@autistici.org>
 ;;; Copyright ?? 2019, 2020 Marius Bakke <mbakke@fastmail.com>
 ;;; Copyright ?? 2020 Nicol?? Balzarotti <nicolo@nixo.xyz>
@@ -417,6 +417,34 @@ dynamic loading, and an object system.")
                  (delete-file-recursively (string-append out html))
                  #t)))))))))
 
+;;; TODO: Merge into glib as a 'static' output in core-updates.
+(define-public glib-static
+  (hidden-package
+   (package
+     (inherit glib)
+     (name "glib-static")
+     (outputs '("out"))
+     (arguments
+      (substitute-keyword-arguments (package-arguments glib)
+        ((#:configure-flags flags ''())
+         `(cons* "--default-library=static"
+                 "-Dselinux=disabled"
+                 "-Dman=false"
+                 "-Dgtk_doc=false"
+                 "-Dinternal_pcre=false"
+                 ,flags))
+        ((#:phases phases)
+         `(modify-phases ,phases
+            (delete 'move-executables)
+            (replace 'install
+              ;; Only install the static libraries.
+              (lambda* (#:key outputs #:allow-other-keys)
+                (let* ((out (assoc-ref outputs "out"))
+                       (lib (string-append out "/lib")))
+                  (for-each (lambda (f)
+                              (install-file f lib))
+                            (find-files "." "\\.a$"))))))))))))
+
 (define gobject-introspection
   (package
     (name "gobject-introspection")
-- 
2.30.1






reply via email to

[Prev in Thread] Current Thread [Next in Thread]