diff options
| author | Zheng Junjie <z572@z572.online> | 2026-04-25 02:30:52 +0800 |
|---|---|---|
| committer | Zheng Junjie <z572@z572.online> | 2026-05-22 10:09:06 +0800 |
| commit | 07d4667b9975336af28a675f9669a472e066bf85 (patch) | |
| tree | 4c00cf110c3e1b3bad09bb78600e362881ef3f24 | |
| parent | ceead911685fd190ae11fc55a94ea67467ab3cad (diff) | |
gnu: libgc: Add static output.core-packages-team-2026-06-20
* gnu/packages/bdw-gc.scm (libgc)[arguments]<#:configure-flags>: Add
--enable-static.
<#:phases>: Add move-static-library phase.
[outputs]: Add static.
* gnu/packages/bdw-gc.scm (libgc/static-libs): Use define-deprecated/public-alias.
* gnu/packages/make-bootstrap.scm (make-guile-static): Use libgc:static.
Change-Id: If793d090dd34272a489f6175ac34fbc2c033072a
| -rw-r--r-- | gnu/packages/bdw-gc.scm | 30 | ||||
| -rw-r--r-- | gnu/packages/make-bootstrap.scm | 3 |
2 files changed, 20 insertions, 13 deletions
diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm index 4f0845f300d..14fffc0dbac 100644 --- a/gnu/packages/bdw-gc.scm +++ b/gnu/packages/bdw-gc.scm | |||
| @@ -6,6 +6,7 @@ | |||
| 6 | ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> | 6 | ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> |
| 7 | ;;; Copyright © 2022, 2023 Efraim Flashner <efraim@flashner.co.il> | 7 | ;;; Copyright © 2022, 2023 Efraim Flashner <efraim@flashner.co.il> |
| 8 | ;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org> | 8 | ;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org> |
| 9 | ;;; Copyright © 2026 Zheng Junjie <z572@z572.online> | ||
| 9 | ;;; | 10 | ;;; |
| 10 | ;;; This file is part of GNU Guix. | 11 | ;;; This file is part of GNU Guix. |
| 11 | ;;; | 12 | ;;; |
| @@ -23,6 +24,7 @@ | |||
| 23 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | 24 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
| 24 | 25 | ||
| 25 | (define-module (gnu packages bdw-gc) | 26 | (define-module (gnu packages bdw-gc) |
| 27 | #:use-module (guix deprecation) | ||
| 26 | #:use-module (guix licenses) | 28 | #:use-module (guix licenses) |
| 27 | #:use-module (guix packages) | 29 | #:use-module (guix packages) |
| 28 | #:use-module (guix download) | 30 | #:use-module (guix download) |
| @@ -55,6 +57,8 @@ | |||
| 55 | #~(list | 57 | #~(list |
| 56 | ;; Install gc_cpp.h et al. | 58 | ;; Install gc_cpp.h et al. |
| 57 | "--enable-cplusplus" | 59 | "--enable-cplusplus" |
| 60 | ;; Used by 'guile-static'. | ||
| 61 | "--enable-static" | ||
| 58 | 62 | ||
| 59 | ;; In GNU/Hurd systems during the 'check' phase, | 63 | ;; In GNU/Hurd systems during the 'check' phase, |
| 60 | ;; there is a deadlock caused by the 'gctest' test. | 64 | ;; there is a deadlock caused by the 'gctest' test. |
| @@ -68,7 +72,17 @@ | |||
| 68 | #~()) | 72 | #~()) |
| 69 | #$@(if (target-mingw?) | 73 | #$@(if (target-mingw?) |
| 70 | #~("--enable-threads=pthreads") | 74 | #~("--enable-threads=pthreads") |
| 71 | #~()))) | 75 | #~())) |
| 76 | #:phases | ||
| 77 | #~(modify-phases %standard-phases | ||
| 78 | (add-after 'install 'move-static-library | ||
| 79 | (lambda _ | ||
| 80 | (for-each | ||
| 81 | (lambda (a) | ||
| 82 | (install-file a (string-append #$output:static | ||
| 83 | "/lib")) | ||
| 84 | (delete-file a)) | ||
| 85 | (find-files (string-append #$output "/lib") "\\.a")))))) | ||
| 72 | (cond | 86 | (cond |
| 73 | ((target-ppc64le?) | 87 | ((target-ppc64le?) |
| 74 | (list #:make-flags | 88 | (list #:make-flags |
| @@ -87,7 +101,7 @@ | |||
| 87 | ;; cross-compiling, and demands using libatomic-ops instead. | 101 | ;; cross-compiling, and demands using libatomic-ops instead. |
| 88 | (list libatomic-ops) | 102 | (list libatomic-ops) |
| 89 | '())) | 103 | '())) |
| 90 | (outputs '("out" "debug")) | 104 | (outputs '("out" "debug" "static")) |
| 91 | (properties | 105 | (properties |
| 92 | '((release-monitoring-url . "https://www.hboehm.info/gc/gc_source/") | 106 | '((release-monitoring-url . "https://www.hboehm.info/gc/gc_source/") |
| 93 | (upstream-name . "gc"))) | 107 | (upstream-name . "gc"))) |
| @@ -112,16 +126,8 @@ C or C++ programs, though that is not its primary goal.") | |||
| 112 | 126 | ||
| 113 | (license (x11-style (string-append home-page "license.txt"))))) | 127 | (license (x11-style (string-append home-page "license.txt"))))) |
| 114 | 128 | ||
| 115 | ;; TODO: Add a static output in libgc in the next rebuild cycle. | 129 | ;; XXX: Deprecated on <2026-04-25>. |
| 116 | (define-public libgc/static-libs | 130 | (define-deprecated/public-alias libgc/static-libs libgc) |
| 117 | (package/inherit | ||
| 118 | libgc | ||
| 119 | (arguments | ||
| 120 | (substitute-keyword-arguments arguments | ||
| 121 | ((#:configure-flags flags #~'()) | ||
| 122 | #~(cons "--enable-static" #$flags)))) | ||
| 123 | |||
| 124 | (properties '((hidden? . #t))))) | ||
| 125 | 131 | ||
| 126 | (define-public libgc-7 | 132 | (define-public libgc-7 |
| 127 | (package | 133 | (package |
diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index de1dd6ebd22..075111187fc 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm | |||
| @@ -7,6 +7,7 @@ | |||
| 7 | ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> | 7 | ;;; Copyright © 2019, 2020, 2022 Marius Bakke <marius@gnu.org> |
| 8 | ;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com> | 8 | ;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com> |
| 9 | ;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com> | 9 | ;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com> |
| 10 | ;;; Copyright © 2026 Zheng Junjie <z572@z572.online> | ||
| 10 | ;;; | 11 | ;;; |
| 11 | ;;; This file is part of GNU Guix. | 12 | ;;; This file is part of GNU Guix. |
| 12 | ;;; | 13 | ;;; |
| @@ -622,7 +623,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." | |||
| 622 | 623 | ||
| 623 | (propagated-inputs | 624 | (propagated-inputs |
| 624 | (modify-inputs propagated-inputs | 625 | (modify-inputs propagated-inputs |
| 625 | (replace "libgc" libgc/static-libs))) | 626 | (replace "libgc" `(,libgc "static")))) |
| 626 | 627 | ||
| 627 | (arguments | 628 | (arguments |
| 628 | (substitute-keyword-arguments arguments | 629 | (substitute-keyword-arguments arguments |
