aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
authorMarius Bakke <marius@gnu.org>2021-05-22 22:46:43 +0200
committerMarius Bakke <marius@gnu.org>2021-06-13 01:00:47 +0200
commit557084a0c9f2e1b91f7e7da68d3f9540c044bffb (patch)
treef524ee55e1d836c354319e1df5ddfab0592911ac /gnu/packages
parent425df5b081eed7d2a0eadf1bf968af201714b613 (diff)
downloadguix-557084a0c9f2e1b91f7e7da68d3f9540c044bffb.tar
guix-557084a0c9f2e1b91f7e7da68d3f9540c044bffb.tar.gz
gnu: glib: Add "static" output.
* gnu/packages/glib.scm (glib)[outputs]: Add "static". [arguments]: Add "--default-library=both" to #:configure-flags. Add phase move-static-libraries. (glib-static): Remove variable. * gnu/packages/virtualization.scm (qemu)[native-inputs]: Change from GLIB-STATIC to GLIB:STATIC.
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/glib.scm49
-rw-r--r--gnu/packages/virtualization.scm2
2 files changed, 17 insertions, 34 deletions
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 94276ae0ef..f0be2ddaa4 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -11,7 +11,7 @@
;;; Copyright © 2018 Alex Vong <alexvong1995@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 © 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
@@ -194,13 +194,14 @@ shared NFS home directories.")
(substitute* "tests/spawn-test.c"
(("/bin/sh") "sh"))
#t))))
- ;; (properties '((hidden? . #t)))
(build-system meson-build-system)
- (outputs '("out" ; everything
- "bin")) ; glib-mkenums, gtester, etc.; depends on Python
+ (outputs '("out" ;libraries, locales, etc
+ "static" ;static libraries
+ "bin")) ;executables; depends on Python
(arguments
`(#:disallowed-references (,tzdata-for-tests)
- #:configure-flags '("-Dman=true"
+ #:configure-flags '("--default-library=both"
+ "-Dman=true"
"-Dselinux=disabled")
#:phases
(modify-phases %standard-phases
@@ -244,6 +245,16 @@ shared NFS home directories.")
(setenv "HOME" (getcwd))
(setenv "XDG_CACHE_HOME" (getcwd))
#t))
+ (add-after 'install 'move-static-libraries
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out"))
+ (static (assoc-ref outputs "static")))
+ (mkdir-p (string-append static "/lib"))
+ (for-each (lambda (file)
+ (link file (string-append static "/lib/"
+ (basename file)))
+ (delete-file file))
+ (find-files (string-append out "/lib") "\\.a$")))))
;; Meson does not permit the bindir to be outside of prefix.
(add-after 'install 'move-bin
(lambda* (#:key outputs #:allow-other-keys)
@@ -352,34 +363,6 @@ functions for strings and common data structures.")
(string-append doc 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")
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 59b660de7c..34270ff8d3 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -366,7 +366,7 @@ exec smbd $@")))
("texinfo" ,texinfo)
;; The following static libraries are required to build
;; the static output of QEMU.
- ("glib-static" ,glib-static)
+ ("glib:static" ,glib "static")
("pcre:static" ,pcre "static")
("zlib:static" ,zlib "static")))
(home-page "https://www.qemu.org")