diff options
-rw-r--r-- | gnu/packages/commencement.scm | 4 | ||||
-rw-r--r-- | gnu/packages/gcc.scm | 5 | ||||
-rw-r--r-- | guix/utils.scm | 19 |
3 files changed, 26 insertions, 2 deletions
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index a14de3002f..3f11bb3384 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -3642,7 +3642,9 @@ is the GNU Compiler Collection.") ;; The default GCC (define-public gcc-toolchain - gcc-toolchain-11) + (if (host-hurd64?) + gcc-toolchain-14 + gcc-toolchain-11)) (define-public gcc-toolchain-aka-gcc ;; It's natural for users to try "guix install gcc". This package diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index e437bf5826..6247919fec 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -858,7 +858,10 @@ It also includes runtime support libraries for these languages.") ;; Note: When changing the default gcc version, update ;; the gcc-toolchain-* definitions. -(define-public gcc gcc-11) +(define-public gcc + (if (host-hurd64?) + gcc-14 + gcc-11)) ;;; diff --git a/guix/utils.scm b/guix/utils.scm index e100c03365..537d0490e0 100644 --- a/guix/utils.scm +++ b/guix/utils.scm @@ -96,6 +96,9 @@ system-hurd? target-hurd64? system-hurd64? + host-hurd? + host-hurd64? + host-x86-64? target-mingw? target-x86-32? target-x86-64? @@ -729,6 +732,22 @@ a character other than '@'." (and (system-hurd?) (target-64bit? (%current-system)))) +(define (host-hurd?) + "Are we running on a Hurd system? This is almost never the right function, +use target-hurd? or system-hurd? instead." + (equal? (utsname:sysname (uname)) "GNU")) + +(define (host-x86-64?) + "Are we running on a x86_64 system? This is almost never the right +function, use target-x86-64? or system-x86-64? instead." + (equal? (utsname:machine (uname)) "x86_64")) + +(define (host-hurd64?) + "Are we running on a 64bit Hurd? This is almost never the right +function, use target-hurd64? or system-hurd64? instead." + (and (host-hurd?) + (host-x86-64?))) + (define* (target-mingw? #:optional (target (%current-target-system))) "Is the operating system of TARGET Windows?" (and target |