diff --git a/Library/Homebrew/extend/ARGV.rb b/Library/Homebrew/extend/ARGV.rb index e72c01093b..ab87a048bc 100644 --- a/Library/Homebrew/extend/ARGV.rb +++ b/Library/Homebrew/extend/ARGV.rb @@ -11,10 +11,6 @@ module HomebrewArgvExtension flag?("--debug") || !ENV["HOMEBREW_DEBUG"].nil? end - def cc - value "cc" - end - def env value "env" end diff --git a/Library/Homebrew/extend/ENV/shared.rb b/Library/Homebrew/extend/ENV/shared.rb index 36b84cf50b..6c995e8f16 100644 --- a/Library/Homebrew/extend/ENV/shared.rb +++ b/Library/Homebrew/extend/ENV/shared.rb @@ -162,7 +162,7 @@ module SharedEnvExtension # ENV.append_to_cflags "-I ./missing/includes" # end def compiler - @compiler ||= if (cc = ARGV.cc) + @compiler ||= if (cc = Homebrew.args.cc) warn_about_non_apple_gcc($&) if cc =~ GNU_GCC_REGEXP fetch_compiler(cc, "--cc") elsif (cc = homebrew_cc) diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index 4365c0fbe9..43d26be9ae 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -100,7 +100,7 @@ class FormulaInstaller return false if !formula.bottled? && !formula.local_bottle_path return true if force_bottle? return false if build_from_source? || build_bottle? || interactive? - return false if ARGV.cc + return false if Homebrew.args.cc return false unless options.empty? return false if formula.bottle_disabled? @@ -729,7 +729,7 @@ class FormulaInstaller args << "--interactive" if interactive? args << "--verbose" if verbose? args << "--debug" if debug? - args << "--cc=#{ARGV.cc}" if ARGV.cc + args << "--cc=#{Homebrew.args.cc}" if Homebrew.args.cc args << "--keep-tmp" if Homebrew.args.keep_tmp? if ARGV.env diff --git a/Library/Homebrew/install.rb b/Library/Homebrew/install.rb index 4a3f031327..18bc534d85 100644 --- a/Library/Homebrew/install.rb +++ b/Library/Homebrew/install.rb @@ -37,11 +37,11 @@ module Homebrew end def check_cc_argv - return unless ARGV.cc + return unless Homebrew.args.cc @checks ||= Diagnostic::Checks.new opoo <<~EOS - You passed `--cc=#{ARGV.cc}`. + You passed `--cc=#{Homebrew.args.cc}`. #{@checks.please_create_pull_requests} EOS end diff --git a/Library/Homebrew/test/formula_installer_bottle_spec.rb b/Library/Homebrew/test/formula_installer_bottle_spec.rb index b5e715260f..87842ff27b 100644 --- a/Library/Homebrew/test/formula_installer_bottle_spec.rb +++ b/Library/Homebrew/test/formula_installer_bottle_spec.rb @@ -4,6 +4,7 @@ require "formula" require "formula_installer" require "keg" require "tab" +require "cmd/install" require "test/support/fixtures/testball" require "test/support/fixtures/testball_bottle" @@ -49,7 +50,7 @@ describe FormulaInstaller do specify "basic bottle install" do allow(DevelopmentTools).to receive(:installed?).and_return(false) - + Homebrew.install_args.parse("testball_bottle") temporarily_install_bottle(TestballBottle.new) do |f| # Copied directly from formula_installer_spec.rb # as we expect the same behavior. diff --git a/Library/Homebrew/test/formula_installer_spec.rb b/Library/Homebrew/test/formula_installer_spec.rb index cd5856a0bf..53fd117e03 100644 --- a/Library/Homebrew/test/formula_installer_spec.rb +++ b/Library/Homebrew/test/formula_installer_spec.rb @@ -4,6 +4,7 @@ require "formula" require "formula_installer" require "keg" require "tab" +require "cmd/install" require "test/support/fixtures/testball" require "test/support/fixtures/testball_bottle" require "test/support/fixtures/failball" @@ -90,11 +91,8 @@ describe FormulaInstaller do end specify "Formula is not poured from bottle when compiler specified" do - expect(ARGV.cc).to be nil - - cc_arg = "--cc=clang" - ARGV << cc_arg - + expect(Homebrew.args.cc).to be nil + Homebrew.install_args.parse(["--cc=clang", "testball_bottle"]) temporary_install(TestballBottle.new) do |f| tab = Tab.for_formula(f) expect(tab.compiler).to eq("clang")