From bffa5914ead190489a70feec875eba9427fb819c Mon Sep 17 00:00:00 2001 From: Shaun Jackman Date: Wed, 31 Mar 2021 17:32:58 -0700 Subject: [PATCH 1/4] build_info: Add oldest_cpu_family --- Library/Homebrew/development_tools.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Library/Homebrew/development_tools.rb b/Library/Homebrew/development_tools.rb index 14fd4388ec..461f47f872 100644 --- a/Library/Homebrew/development_tools.rb +++ b/Library/Homebrew/development_tools.rb @@ -100,9 +100,10 @@ class DevelopmentTools def build_system_info { - "os" => ENV["HOMEBREW_SYSTEM"], - "os_version" => OS_VERSION, - "cpu_family" => Hardware::CPU.family, + "os" => ENV["HOMEBREW_SYSTEM"], + "os_version" => OS_VERSION, + "cpu_family" => Hardware::CPU.family, + "oldest_cpu_family" => Hardware.oldest_cpu, } end alias generic_build_system_info build_system_info From 1b25224b5537c1db2b4eaff34e420e6caded0c31 Mon Sep 17 00:00:00 2001 From: Shaun Jackman Date: Fri, 2 Apr 2021 12:00:17 -0700 Subject: [PATCH 2/4] github_packages: Add platform.variant --- Library/Homebrew/github_packages.rb | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/Library/Homebrew/github_packages.rb b/Library/Homebrew/github_packages.rb index 302e2eea95..45968f6d91 100644 --- a/Library/Homebrew/github_packages.rb +++ b/Library/Homebrew/github_packages.rb @@ -246,8 +246,21 @@ class GitHubPackages (tab["built_on"]["glibc_version"] if tab["built_on"].present?) || "2.23" end + variant = if architecture == "arm64" + "v8" + elsif tab["oldest_cpu_family"] + tab["oldest_cpu_family"] + elsif architecture == "amd64" + if os == "darwin" + Hardware.oldest_cpu(OS::Mac::Version.new(os_version[/macOS ([0-9]+\.[0-9]+)/, 1])).to_s + else + "core2" + end + end + platform_hash = { architecture: architecture, + variant: variant, os: os, "os.version" => os_version, } From 31aa0375ca8267e48f055a5337eeb267ad31832a Mon Sep 17 00:00:00 2001 From: Shaun Jackman Date: Fri, 2 Apr 2021 18:31:42 -0700 Subject: [PATCH 3/4] build_info: Add oldest_cpu_family for Linux only --- Library/Homebrew/development_tools.rb | 7 +++---- Library/Homebrew/extend/os/linux/development_tools.rb | 5 ++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/Library/Homebrew/development_tools.rb b/Library/Homebrew/development_tools.rb index 461f47f872..14fd4388ec 100644 --- a/Library/Homebrew/development_tools.rb +++ b/Library/Homebrew/development_tools.rb @@ -100,10 +100,9 @@ class DevelopmentTools def build_system_info { - "os" => ENV["HOMEBREW_SYSTEM"], - "os_version" => OS_VERSION, - "cpu_family" => Hardware::CPU.family, - "oldest_cpu_family" => Hardware.oldest_cpu, + "os" => ENV["HOMEBREW_SYSTEM"], + "os_version" => OS_VERSION, + "cpu_family" => Hardware::CPU.family, } end alias generic_build_system_info build_system_info diff --git a/Library/Homebrew/extend/os/linux/development_tools.rb b/Library/Homebrew/extend/os/linux/development_tools.rb index 6eae62b62d..6ad96f7982 100644 --- a/Library/Homebrew/extend/os/linux/development_tools.rb +++ b/Library/Homebrew/extend/os/linux/development_tools.rb @@ -21,7 +21,10 @@ class DevelopmentTools end def build_system_info - generic_build_system_info.merge "glibc_version" => OS::Linux::Glibc.version + generic_build_system_info.merge({ + "glibc_version" => OS::Linux::Glibc.version, + "oldest_cpu_family" => Hardware.oldest_cpu, + }) end end end From 244cacf1c4593d47a3d27a46b9a91ade161ae557 Mon Sep 17 00:00:00 2001 From: Shaun Jackman Date: Fri, 2 Apr 2021 18:41:53 -0700 Subject: [PATCH 4/4] github_packages: Add platform.variant on Linux only --- Library/Homebrew/github_packages.rb | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/Library/Homebrew/github_packages.rb b/Library/Homebrew/github_packages.rb index 45968f6d91..cb1419d68d 100644 --- a/Library/Homebrew/github_packages.rb +++ b/Library/Homebrew/github_packages.rb @@ -246,24 +246,14 @@ class GitHubPackages (tab["built_on"]["glibc_version"] if tab["built_on"].present?) || "2.23" end - variant = if architecture == "arm64" - "v8" - elsif tab["oldest_cpu_family"] - tab["oldest_cpu_family"] - elsif architecture == "amd64" - if os == "darwin" - Hardware.oldest_cpu(OS::Mac::Version.new(os_version[/macOS ([0-9]+\.[0-9]+)/, 1])).to_s - else - "core2" - end - end + variant = tab["oldest_cpu_family"] || "core2" if os == "linux" platform_hash = { architecture: architecture, variant: variant, os: os, "os.version" => os_version, - } + }.compact tar_sha256 = Digest::SHA256.hexdigest( Utils.safe_popen_read("gunzip", "--stdout", "--decompress", local_file), )