Merge pull request #10040 from maxim-belkin/glibc-central
brew.sh: define minimum required Glibc version
This commit is contained in:
commit
d89a2c1a16
@ -410,6 +410,7 @@ Your Git executable: $(unset git && type -p $HOMEBREW_GIT)"
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION="2.13"
|
||||||
unset HOMEBREW_MACOS_SYSTEM_RUBY_NEW_ENOUGH
|
unset HOMEBREW_MACOS_SYSTEM_RUBY_NEW_ENOUGH
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -447,6 +448,7 @@ export HOMEBREW_SYSTEM_CURL_TOO_OLD
|
|||||||
export HOMEBREW_GIT
|
export HOMEBREW_GIT
|
||||||
export HOMEBREW_GIT_WARNING
|
export HOMEBREW_GIT_WARNING
|
||||||
export HOMEBREW_MINIMUM_GIT_VERSION
|
export HOMEBREW_MINIMUM_GIT_VERSION
|
||||||
|
export HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION
|
||||||
export HOMEBREW_PROCESSOR
|
export HOMEBREW_PROCESSOR
|
||||||
export HOMEBREW_PRODUCT
|
export HOMEBREW_PRODUCT
|
||||||
export HOMEBREW_OS_VERSION
|
export HOMEBREW_OS_VERSION
|
||||||
|
@ -32,19 +32,27 @@ then
|
|||||||
esac
|
esac
|
||||||
fi
|
fi
|
||||||
|
|
||||||
check_ldd_version() {
|
check_linux_glibc_version() {
|
||||||
local ldd_version
|
if [[ -z $HOMEBREW_LINUX || -z $HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION ]]
|
||||||
local ldd_version_major
|
then
|
||||||
local ldd_version_minor
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
local glibc_version
|
||||||
|
local glibc_version_major
|
||||||
|
local glibc_version_minor
|
||||||
|
|
||||||
|
local minimum_required_major=${HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION%.*}
|
||||||
|
local minimum_required_minor=${HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION#*.}
|
||||||
|
|
||||||
if [[ $(/usr/bin/ldd --version) =~ \ [0-9]\.[0-9]+ ]]
|
if [[ $(/usr/bin/ldd --version) =~ \ [0-9]\.[0-9]+ ]]
|
||||||
then
|
then
|
||||||
ldd_version=${BASH_REMATCH[0]// /}
|
glibc_version=${BASH_REMATCH[0]// /}
|
||||||
ldd_version_major=${ldd_version%.*}
|
glibc_version_major=${glibc_version%.*}
|
||||||
ldd_version_minor=${ldd_version#*.}
|
glibc_version_minor=${glibc_version#*.}
|
||||||
if (( ldd_version_major < 2 || ldd_version_minor < 13 ))
|
if (( glibc_version_major < minimum_required_major || glibc_version_minor < minimum_required_minor ))
|
||||||
then
|
then
|
||||||
odie "Vendored tools require system Glibc 2.13 or later."
|
odie "Vendored tools require system Glibc $HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION or later (yours is $glibc_version)."
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
odie "Failed to detect system Glibc version."
|
odie "Failed to detect system Glibc version."
|
||||||
@ -239,7 +247,7 @@ homebrew-vendor-install() {
|
|||||||
|
|
||||||
[[ -z "$VENDOR_NAME" ]] && odie "This command requires a vendor target!"
|
[[ -z "$VENDOR_NAME" ]] && odie "This command requires a vendor target!"
|
||||||
[[ -n "$HOMEBREW_DEBUG" ]] && set -x
|
[[ -n "$HOMEBREW_DEBUG" ]] && set -x
|
||||||
[[ -n "$HOMEBREW_LINUX" ]] && check_ldd_version
|
check_linux_glibc_version
|
||||||
|
|
||||||
url_var="${VENDOR_NAME}_URL"
|
url_var="${VENDOR_NAME}_URL"
|
||||||
url2_var="${VENDOR_NAME}_URL2"
|
url2_var="${VENDOR_NAME}_URL2"
|
||||||
|
@ -22,7 +22,7 @@ module OS
|
|||||||
|
|
||||||
sig { returns(Version) }
|
sig { returns(Version) }
|
||||||
def minimum_version
|
def minimum_version
|
||||||
Version.new "2.13"
|
Version.new ENV["HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION"]
|
||||||
end
|
end
|
||||||
|
|
||||||
def below_minimum_version?
|
def below_minimum_version?
|
||||||
|
Loading…
x
Reference in New Issue
Block a user