Cache glibc.system_version

This commit is contained in:
Shaun Jackman 2021-04-02 10:58:01 -07:00
parent 393027597b
commit 70292829f3
No known key found for this signature in database
GPG Key ID: D4ED5223F4E57996

View File

@ -12,24 +12,26 @@ module OS
module_function module_function
def system_version def system_version
return @system_version if @system_version @system_version ||= begin
version = Utils.popen_read("/usr/bin/ldd", "--version")[/ (\d+\.\d+)/, 1] version = Utils.popen_read("/usr/bin/ldd", "--version")[/ (\d+\.\d+)/, 1]
return Version::NULL unless version if version
Version.new version
@system_version = Version.new version else
Version::NULL
end
end
end end
def version def version
@version ||= begin @version ||= begin
ldd = HOMEBREW_PREFIX/"opt/glibc/bin/ldd" version = Utils.popen_read(HOMEBREW_PREFIX/"opt/glibc/bin/ldd", "--version")[/ (\d+\.\d+)/, 1]
version = Utils.popen_read(ldd, "--version")[/ (\d+\.\d+)/, 1] if ldd.executable?
if version if version
Version.new version Version.new version
else else
system_version system_version
end end
end end
end
sig { returns(Version) } sig { returns(Version) }
def minimum_version def minimum_version