From 95e7e010eefdf7d16c8d7b470a1048b7b6f58926 Mon Sep 17 00:00:00 2001 From: Shaun Jackman Date: Thu, 1 Apr 2021 22:16:33 -0700 Subject: [PATCH] Add OS::Linux::Glibc.version --- Library/Homebrew/extend/os/linux/development_tools.rb | 2 +- Library/Homebrew/os/linux/glibc.rb | 10 ++++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/extend/os/linux/development_tools.rb b/Library/Homebrew/extend/os/linux/development_tools.rb index 89c74053d2..6eae62b62d 100644 --- a/Library/Homebrew/extend/os/linux/development_tools.rb +++ b/Library/Homebrew/extend/os/linux/development_tools.rb @@ -21,7 +21,7 @@ class DevelopmentTools end def build_system_info - generic_build_system_info.merge "glibc_version" => OS::Linux::Glibc.system_version + generic_build_system_info.merge "glibc_version" => OS::Linux::Glibc.version end end end diff --git a/Library/Homebrew/os/linux/glibc.rb b/Library/Homebrew/os/linux/glibc.rb index 7a654bd2b8..c3f358164b 100644 --- a/Library/Homebrew/os/linux/glibc.rb +++ b/Library/Homebrew/os/linux/glibc.rb @@ -20,6 +20,16 @@ module OS @system_version = Version.new version end + def version + return @version if @version + + ldd = HOMEBREW_PREFIX/"opt/glibc/bin/ldd" + version = Utils.popen_read(ldd, "--version")[/ (\d+\.\d+)/, 1] if ldd.executable? + return system_version unless version + + @version = Version.new version + end + sig { returns(Version) } def minimum_version Version.new(ENV.fetch("HOMEBREW_LINUX_MINIMUM_GLIBC_VERSION"))