From c77c9422915773c33c33ebba0d913c4f5ca29c57 Mon Sep 17 00:00:00 2001 From: carlocab <30379873+carlocab@users.noreply.github.com> Date: Wed, 23 Dec 2020 11:14:30 +0000 Subject: [PATCH] os/mac/sdk: parse version from SDKSettings.json This implements feedback from https://github.com/Homebrew/brew/pull/10072. --- Library/Homebrew/os/mac/sdk.rb | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Library/Homebrew/os/mac/sdk.rb b/Library/Homebrew/os/mac/sdk.rb index c7f3ef37ff..62c3cc21a4 100644 --- a/Library/Homebrew/os/mac/sdk.rb +++ b/Library/Homebrew/os/mac/sdk.rb @@ -93,10 +93,11 @@ module OS # Use unversioned SDK path on Big Sur to avoid issues such as: # https://github.com/Homebrew/homebrew-core/issues/67075 - if OS::Mac.version >= :big_sur - sdk_path = File.join(sdk_prefix, "MacOSX.sdk") - version = OS::Mac.full_version - paths[version] = sdk_path if File.directory?(sdk_path) + sdk_path = File.join(sdk_prefix, "MacOSX.sdk") + if OS::Mac.version >= :big_sur && File.directory?(sdk_path) + sdk_settings = File.join(sdk_path, "SDKSettings.json") + version = JSON.parse(File.read(sdk_settings))["Version"] if File.exist?(sdk_settings) + paths[OS::Mac::Version.new(version)] = sdk_path if version.present? end paths