diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index 7f7a808542..d621a634a3 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -418,7 +418,21 @@ (define %gcc-static ((#:make-flags flags) (if (%current-target-system) `(cons "LDFLAGS=-static" ,flags) - `(cons "BOOT_LDFLAGS=-static" ,flags))))))))) + `(cons "BOOT_LDFLAGS=-static" ,flags)))))) + (native-inputs + (if (%current-target-system) + `(;; When doing a Canadian cross, we need GMP/MPFR/MPC both + ;; as target inputs and as native inputs; the latter is + ;; needed when building build-time tools ('genconstants', + ;; etc.) Failing to do that leads to misdetections of + ;; declarations by 'gcc/configure', and eventually to + ;; duplicate declarations as reported in + ;; . + ("gmp-native" ,gmp) + ("mpfr-native" ,mpfr) + ("mpc-native" ,mpc) + ,@(package-native-inputs gcc-4.8)) + (package-native-inputs gcc-4.8)))))) (define %gcc-stripped ;; The subset of GCC files needed for bootstrap.