diff options
author | ( <paren@disroot.org> | 2022-08-08 20:08:38 +0100 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2022-08-11 10:22:56 +0200 |
commit | dfda2cc5f6a57a0b89b98f389a2f28bf1e94eaa4 (patch) | |
tree | de493b800605377a7b7af67bbcff175a40b85f83 | |
parent | fc5beaf96aab6052a3e2605c5015e9e441f1c8ca (diff) | |
download | guix-dfda2cc5f6a57a0b89b98f389a2f28bf1e94eaa4.tar.gz guix-dfda2cc5f6a57a0b89b98f389a2f28bf1e94eaa4.zip |
gnu: pcc: Fix build.
* gnu/packages/c.scm (pcc)[arguments]: Use gexps.
<#:phases>{fix-multiple-definitions}: New phase.
[native-inputs]: Adjust formatting.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
-rw-r--r-- | gnu/packages/c.scm | 21 |
1 files changed, 15 insertions, 6 deletions
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm index 1630a40d17..113a331070 100644 --- a/gnu/packages/c.scm +++ b/gnu/packages/c.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2022 (unmatched parenthesis <paren@disroot.org> ;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com> ;;; Copyright © 2022 Ekaitz Zarraga <ekaitz@elenq.tech> +;;; Copyright © 2022 ( <paren@disroot.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -185,12 +186,20 @@ standard.") "1p34w496095mi0473f815w6wbi57zxil106mg7pj6sg6gzpjcgww")))) (build-system gnu-build-system) (arguments - `(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ (invoke "make" "-C" "cc/cpp" "test") #t))))) - (native-inputs - (list bison flex)) + (list #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-multiple-definitions + (lambda _ + ;; Certain variables are defined multiple times. This + ;; upsets the linker and causes a build failure. + (substitute* "cc/ccom/pass1.h" + (("FLT flt_zero;") "extern FLT flt_zero;")) + (substitute* (list "cc/ccom/scan.l" "cc/cxxcom/scan.l") + (("lineno, ") "")))) + (replace 'check + (lambda _ + (invoke "make" "-C" "cc/cpp" "test")))))) + (native-inputs (list bison flex)) (synopsis "Portable C compiler") (description "PCC is a portable C compiler. The project goal is to write a C99 |