From c7b252aa09773364781a03bbf498782573ee8585 Mon Sep 17 00:00:00 2001 From: Albert Ou Date: Fri, 27 Sep 2019 22:18:56 +0000 Subject: [PATCH] toolchains: Check for GNU make 4.x GNU make 4.x is needed to cross-compile glibc 2.28 and newer. This ensures the problem is caught earlier on CentOS release 7.6, whose default make version remains 3.82. --- scripts/build-toolchains.sh | 7 +++++++ scripts/build-util.sh | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/build-toolchains.sh b/scripts/build-toolchains.sh index 734398c3..738b5ae7 100755 --- a/scripts/build-toolchains.sh +++ b/scripts/build-toolchains.sh @@ -99,6 +99,13 @@ if [ "${EC2FASTINSTALL}" = true ] ; then git submodule deinit "${module}" || : else + "${MAKE}" --version | ( + read -r makever + case ${makever} in + 'GNU Make '[4-9]\.*|'GNU Make '[1-9][0-9]) ;; + *) false ;; + esac; ) || die 'obsolete make version; need GNU make 4.x or later' + module_prepare riscv-gnu-toolchain qemu module_build riscv-gnu-toolchain --prefix="${RISCV}" echo '==> Building GNU/Linux toolchain' diff --git a/scripts/build-util.sh b/scripts/build-util.sh index 5ca38147..be58a6a1 100644 --- a/scripts/build-util.sh +++ b/scripts/build-util.sh @@ -14,7 +14,7 @@ case ${ncpu} in *) export MAKEFLAGS="-j ${ncpu} ${MAKEFLAGS}" ;; esac -MAKE=$(command -v gmake || command -v make) +MAKE=$(command -v gnumake || command -v gmake || command -v make) readonly MAKE