From 31a3c9b441e7d59bf56db7467a9d196178abbfca Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Wed, 22 Sep 2021 19:51:42 +0200 Subject: [PATCH] gnu: libinih: Build & install static libraries. * gnu/packages/linux.scm (libinih)[outputs]: Add "static". [arguments]: Substitute "-Ddefault_library=both" for the "-Ddefault_library=shared" configure flag. Add a new 'separate-static phase. --- gnu/packages/linux.scm | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index e56132057e..fdc5cb7c8d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -7657,8 +7657,24 @@ (define-public libinih (base32 "0dqf5j2sw4hq68rqvxbrsf44ygfzx9ypiyzipk4cvp9aimbvsbc6")))) (build-system meson-build-system) + ;; Install static libraries for use by the initrd's xfsprogs/static. + (outputs (list "out" "static")) (arguments - '(#:configure-flags '("-Ddistro_install=true" "-Ddefault_library=shared"))) + `(#:configure-flags + (list "-Ddistro_install=true" + "-Ddefault_library=both") + #:phases + (modify-phases %standard-phases + (add-after 'install 'separate-static + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (static (assoc-ref outputs "static"))) + (with-directory-excursion out + (for-each (lambda (source) + (let ((target (string-append static "/" source))) + (mkdir-p (dirname target)) + (rename-file source target))) + (find-files "lib" "\\.a$"))))))))) (home-page "https://github.com/benhoyt/inih") (synopsis "Simple .INI parser library for C") (description "The inih (INI Not Invented Here) library is a simple .INI file