diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 3184a8b6a0..f44030355e 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -830,6 +830,29 @@ (define-public gcc-13 ("x86_64" ,@%gcc-13-x86_64-micro-architectures)) ,@(package-properties gcc-11))))) +(define-public gcc-14 + (package + (inherit gcc-13) + (version "14.1.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gcc/gcc-" + version "/gcc-" version ".tar.xz")) + (sha256 + (base32 + "0h3889kkfp9bzw8km9w1ssh5qjskg6yw02q8v3lkvzksk1acd0z2")) + (patches (search-patches "gcc-12-strmov-store-file-names.patch" + "gcc-5.0-libvtv-runpath.patch")) + (modules '((guix build utils))) + (snippet gcc-canadian-cross-objdump-snippet))) + (arguments (substitute-keyword-arguments (package-arguments gcc-13) + ((#:phases phases #~%standard-phases) + #~(modify-phases #$phases + (add-before 'configure 'pre-x86-configure + (lambda _ + (substitute* "gcc/config/i386/t-linux64" + (("\\.\\./lib64") "../lib")))))))))) + ;; Note: When changing the default gcc version, update ;; the gcc-toolchain-* definitions.