1*4882a593Smuzhiyun#!/bin/sh 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun# prevent shift error 4*4882a593Smuzhiyun[ $# -lt 2 ] && exit 1 5*4882a593Smuzhiyun 6*4882a593Smuzhiyunmajor_min="${1%.*}" 7*4882a593Smuzhiyunminor_min="${1#*.}" 8*4882a593Smuzhiyun 9*4882a593Smuzhiyunshift 10*4882a593Smuzhiyun 11*4882a593Smuzhiyun# The host make program is already checked by dependencies.sh but we 12*4882a593Smuzhiyun# want to check the version number even if Buildroot is able to use 13*4882a593Smuzhiyun# GNU make >= 3.81 but some packages may require a more recent version. 14*4882a593Smuzhiyunmake="$1" 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun# Output of 'make --version' examples: 17*4882a593Smuzhiyun# GNU Make 4.2.1 18*4882a593Smuzhiyun# GNU Make 4.0 19*4882a593Smuzhiyun# GNU Make 3.81 20*4882a593Smuzhiyunversion=`$make --version 2>&1 | sed -e 's/^.* \([0-9\.]\)/\1/g' -e 's/[-\ 21*4882a593Smuzhiyun].*//g' -e '1q'` 22*4882a593Smuzhiyun 23*4882a593Smuzhiyunmajor=`echo "$version" | cut -d. -f1` 24*4882a593Smuzhiyunminor=`echo "$version" | cut -d. -f2` 25*4882a593Smuzhiyun 26*4882a593Smuzhiyunif [ $major -lt $major_min ]; then 27*4882a593Smuzhiyun # echo nothing: no suitable make found 28*4882a593Smuzhiyun exit 1 29*4882a593Smuzhiyunfi 30*4882a593Smuzhiyun 31*4882a593Smuzhiyunif [ $major -eq $major_min -a $minor -lt $minor_min ]; then 32*4882a593Smuzhiyun # echo nothing: no suitable make found 33*4882a593Smuzhiyun exit 1 34*4882a593Smuzhiyunfi 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun# valid 37*4882a593Smuzhiyunecho $make 38