diff options
author | Christopher Baines <mail@cbaines.net> | 2023-05-04 14:43:53 +0100 |
---|---|---|
committer | Christopher Baines <mail@cbaines.net> | 2023-05-04 14:43:53 +0100 |
commit | 08acdd0765b5f4fbfafa699a823ea7985d4d35a7 (patch) | |
tree | 65aa44e317459c06c8f1cc6a1d9014c7a9809161 | |
parent | 916c6e5716bd14cb328f7dcce5405ba9100bb908 (diff) | |
download | guix-08acdd0765b5f4fbfafa699a823ea7985d4d35a7.tar guix-08acdd0765b5f4fbfafa699a823ea7985d4d35a7.tar.gz |
gnu: gcc-11: Adapt patching for hurd to not use gexp's.
As this causes issues with gcc-cross-boot0, since it doesn't use gexp's and
that means the builder script ends up broken.
I'm not testing this properly, I've only confirmed that with this change, you
can generate a derivation for hello for i586-gnu where that derivation and all
inputs don't have broken builder scripts. Plus the output for hello on
x86_64-linux is unchanged.
* gnu/packages/gcc.scm (gcc-11)[arguments]: Rewrite to not use gexps.
[native-inputs]: Add a patch for the hurd if that's the target.
-rw-r--r-- | gnu/packages/gcc.scm | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index e3ce0069f0..9ae6f77b37 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -715,22 +715,26 @@ It also includes runtime support libraries for these languages.") (snippet gcc-canadian-cross-objdump-snippet))) (arguments (substitute-keyword-arguments (package-arguments gcc-8) - ((#:phases phases #~%standard-phases) + ((#:phases phases '%standard-phases) (if (target-hurd?) - #~(modify-phases #$phases - (add-after 'unpack 'patch-hurd-libpthread - (lambda _ - (define patch - #$(local-file - (search-patch "gcc-11-libstdc++-hurd-libpthread.patch"))) - (invoke "patch" "--force" "-p1" "-i" patch)))) + `(modify-phases ,phases + (add-after 'unpack 'patch-hurd-libpthread + (lambda (#:key inputs) + (invoke "patch" "--force" "-p1" "-i" + (assoc-ref inputs "hurd-patch") + patch)))) phases)))) (properties `((compiler-cpu-architectures ("aarch64" ,@%gcc-11-aarch64-micro-architectures) ("armhf" ,@%gcc-11-armhf-micro-architectures) ("x86_64" ,@%gcc-11-x86_64-micro-architectures)) - ,@(package-properties gcc-8))))) + ,@(package-properties gcc-8))) + (native-inputs + `(,@(if (target-hurd?) + `(("hurd-patch" ,(search-patch "gcc-11-libstdc++-hurd-libpthread.patch"))) + '()) + ,@(package-native-inputs gcc-8))))) (define-public gcc-12 (package |