Merge pull request #7333 from GauthamGoli/argv-cleanup-21
cli/args: Make build_from_source public instance method
This commit is contained in:
commit
2bbcab5615
@ -9,9 +9,12 @@ module Homebrew
|
||||
# undefine tap to allow --tap argument
|
||||
undef tap
|
||||
|
||||
def initialize(argv:)
|
||||
def initialize
|
||||
super
|
||||
@argv = argv
|
||||
|
||||
self[:remaining] = []
|
||||
self[:cmdline_args] = ARGV_WITHOUT_MONKEY_PATCHING.dup
|
||||
|
||||
@args_parsed = false
|
||||
@processed_options = []
|
||||
end
|
||||
@ -59,8 +62,6 @@ module Homebrew
|
||||
end
|
||||
|
||||
def named
|
||||
return [] if remaining.nil?
|
||||
|
||||
remaining
|
||||
end
|
||||
|
||||
@ -164,6 +165,20 @@ module Homebrew
|
||||
!(HEAD? || devel?)
|
||||
end
|
||||
|
||||
# Whether a given formula should be built from source during the current
|
||||
# installation run.
|
||||
def build_formula_from_source?(f)
|
||||
return false if !build_from_source && !build_bottle
|
||||
|
||||
formulae.any? { |args_f| args_f.full_name == f.full_name }
|
||||
end
|
||||
|
||||
def build_from_source
|
||||
return true if args_parsed && (build_from_source? || s?)
|
||||
|
||||
cmdline_args.include?("--build-from-source") || cmdline_args.include?("-s")
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def downcased_unique_named
|
||||
@ -206,12 +221,6 @@ module Homebrew
|
||||
cmdline_args.include?("--build-bottle")
|
||||
end
|
||||
|
||||
def build_from_source
|
||||
return true if args_parsed && (build_from_source? || s?)
|
||||
|
||||
cmdline_args.include?("--build-from-source") || cmdline_args.include?("-s")
|
||||
end
|
||||
|
||||
def spec(default = :stable)
|
||||
if head
|
||||
:head
|
||||
|
||||
@ -37,11 +37,10 @@ module Homebrew
|
||||
}
|
||||
end
|
||||
|
||||
def initialize(args = ARGV, &block)
|
||||
def initialize(&block)
|
||||
@parser = OptionParser.new
|
||||
@args = Homebrew::CLI::Args.new(argv: ARGV_WITHOUT_MONKEY_PATCHING)
|
||||
@args[:remaining] = []
|
||||
@args[:cmdline_args] = args.dup
|
||||
@args = Homebrew::CLI::Args.new
|
||||
|
||||
@constraints = []
|
||||
@conflicts = []
|
||||
@switch_sources = {}
|
||||
@ -259,7 +258,7 @@ module Homebrew
|
||||
end
|
||||
|
||||
def option_passed?(name)
|
||||
@args.respond_to?(name) || @args.respond_to?("#{name}?")
|
||||
@args[name.to_sym] || @args["#{name}?".to_sym]
|
||||
end
|
||||
|
||||
def wrap_option_desc(desc)
|
||||
|
||||
@ -40,18 +40,6 @@ module HomebrewArgvExtension
|
||||
arch&.to_sym
|
||||
end
|
||||
|
||||
def build_from_source?
|
||||
switch?("s") || include?("--build-from-source")
|
||||
end
|
||||
|
||||
# Whether a given formula should be built from source during the current
|
||||
# installation run.
|
||||
def build_formula_from_source?(f)
|
||||
return false if !build_from_source? && !build_bottle?
|
||||
|
||||
formulae.any? { |argv_f| argv_f.full_name == f.full_name }
|
||||
end
|
||||
|
||||
def force_bottle?
|
||||
include?("--force-bottle")
|
||||
end
|
||||
|
||||
@ -7,7 +7,7 @@ module Homebrew
|
||||
def fetch_bottle?(f)
|
||||
return true if ARGV.force_bottle? && f.bottle
|
||||
return false unless f.bottle && f.pour_bottle?
|
||||
return false if ARGV.build_formula_from_source?(f)
|
||||
return false if Homebrew.args.build_formula_from_source?(f)
|
||||
return false unless f.bottle.compatible_cellar?
|
||||
|
||||
true
|
||||
|
||||
@ -49,7 +49,7 @@ class FormulaInstaller
|
||||
@show_header = false
|
||||
@ignore_deps = false
|
||||
@only_deps = false
|
||||
@build_from_source = ARGV.build_from_source?
|
||||
@build_from_source = Homebrew.args.build_from_source
|
||||
@build_bottle = false
|
||||
@force_bottle = ARGV.force_bottle?
|
||||
@include_test = ARGV.include?("--include-test")
|
||||
@ -97,7 +97,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 Homebrew.args.build_from_source || build_bottle? || interactive?
|
||||
return false if ARGV.cc
|
||||
return false unless options.empty?
|
||||
return false if formula.bottle_disabled?
|
||||
@ -128,7 +128,7 @@ class FormulaInstaller
|
||||
|
||||
def install_bottle_for?(dep, build)
|
||||
return pour_bottle? if dep == formula
|
||||
return false if ARGV.build_formula_from_source?(dep)
|
||||
return false if Homebrew.args.build_formula_from_source?(dep)
|
||||
return false unless dep.bottle && dep.pour_bottle?
|
||||
return false unless build.used_options.empty?
|
||||
return false unless dep.bottle.compatible_cellar?
|
||||
@ -591,7 +591,7 @@ class FormulaInstaller
|
||||
fi.options |= Tab.remap_deprecated_options(df.deprecated_options, dep.options)
|
||||
fi.options |= inherited_options
|
||||
fi.options &= df.options
|
||||
fi.build_from_source = ARGV.build_formula_from_source?(df)
|
||||
fi.build_from_source = Homebrew.args.build_formula_from_source?(df)
|
||||
fi.force_bottle = false
|
||||
fi.verbose = verbose?
|
||||
fi.quiet = quiet?
|
||||
|
||||
@ -86,7 +86,7 @@ module Homebrew
|
||||
end
|
||||
|
||||
def args
|
||||
@args ||= CLI::Args.new(argv: ARGV)
|
||||
@args ||= CLI::Args.new
|
||||
end
|
||||
|
||||
def messages
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user