aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-02-20 14:55:37 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2021-03-15 18:00:35 -0400
commitce29866c01661693645daeba60657bf32bd3322b (patch)
tree9d6bfc0e89f14d8295cdf2789533d69fc4c6e795
parent3fe46eef57b068158b9efd1044fcdb581d2243a6 (diff)
downloadguix-ce29866c01661693645daeba60657bf32bd3322b.tar
guix-ce29866c01661693645daeba60657bf32bd3322b.tar.gz
gnu: Add glib-static.
* gnu/packages/glib.scm (glib-static): New variable.
-rw-r--r--gnu/packages/glib.scm30
1 files changed, 29 insertions, 1 deletions
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index eaa319a2ff..0d265e8687 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>
@@ -446,6 +446,34 @@ dynamic loading, and an object system.")
(delete-file-recursively (string-append out html))
#t)))))))))
+;;; TODO: Merge into glib as a 'static' output on 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")