Merge pull request #13633 from carlocab/migrate-gcc-dependents

update-report: migrate GCC recursive dependents
This commit is contained in:
Carlo Cabrera 2022-08-04 02:02:48 +08:00 committed by GitHub
commit a93906a159
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -148,6 +148,8 @@ module Homebrew
Homebrew.failed = true if ENV["HOMEBREW_UPDATE_FAILED"]
return if Homebrew::EnvConfig.disable_load_formula?
migrate_gcc_dependents_if_needed
hub = ReporterHub.new
updated_taps = []
@ -289,6 +291,26 @@ module Homebrew
#{e}
EOS
end
def migrate_gcc_dependents_if_needed
return if OS.mac?
return if Settings.read("gcc-rpaths.fixed") == "true"
Formula.installed.each do |formula|
next unless formula.tap&.core_tap?
next unless formula.recursive_dependencies.map(&:name).include? "gcc"
keg = formula.installed_kegs.last
tab = Tab.for_keg(keg)
# Force reinstallation upon `brew upgrade` to fix the bottle RPATH.
tab.source["versions"]["version_scheme"] = -1
tab.write
rescue TapFormulaUnavailableError
nil
end
Settings.write "gcc-rpaths.fixed", true
end
end
class Reporter