Move option comparison into BuildOptions
This commit is contained in:
parent
d8a83073ff
commit
f3d3bc4368
@ -15,7 +15,7 @@ def install_bottle? f
|
||||
and f.downloader.local_bottle_path
|
||||
not ARGV.build_from_source? \
|
||||
and MacOS.bottles_supported? \
|
||||
and ARGV.used_options(f).empty? \
|
||||
and f.build.used_options.empty? \
|
||||
and bottle_current?(f)
|
||||
end
|
||||
|
||||
|
||||
@ -7,14 +7,6 @@ module HomebrewArgvExtension
|
||||
select {|arg| arg[0..0] == '-'}
|
||||
end
|
||||
|
||||
def used_options f
|
||||
f.build.as_flags & options_only
|
||||
end
|
||||
|
||||
def unused_options f
|
||||
f.build.as_flags - options_only
|
||||
end
|
||||
|
||||
def formulae
|
||||
require 'formula'
|
||||
@formulae ||= downcased_unique_named.map{ |name| Formula.factory name }
|
||||
|
||||
@ -185,6 +185,7 @@ end
|
||||
# This class holds the build-time options defined for a Formula,
|
||||
# and provides named access to those options during install.
|
||||
class BuildOptions
|
||||
attr_writer :args
|
||||
include Enumerable
|
||||
|
||||
def initialize args
|
||||
@ -253,4 +254,12 @@ class BuildOptions
|
||||
def build_32_bit?
|
||||
@args.include? '--32-bit'
|
||||
end
|
||||
|
||||
def used_options
|
||||
as_flags & @args.options_only
|
||||
end
|
||||
|
||||
def unused_options
|
||||
as_flags - @args.options_only
|
||||
end
|
||||
end
|
||||
|
||||
@ -10,14 +10,16 @@ class Tab < OpenStruct
|
||||
FILENAME = 'INSTALL_RECEIPT.json'
|
||||
|
||||
def self.create f, args
|
||||
f.build.args = args
|
||||
|
||||
sha = HOMEBREW_REPOSITORY.cd do
|
||||
`git rev-parse --verify -q HEAD 2>/dev/null`.chuzzle
|
||||
end
|
||||
|
||||
Tab.new :used_options => args.used_options(f),
|
||||
:unused_options => args.unused_options(f),
|
||||
Tab.new :used_options => f.build.used_options,
|
||||
:unused_options => f.build.unused_options,
|
||||
:tabfile => f.prefix.join(FILENAME),
|
||||
:built_as_bottle => !!args.build_bottle?,
|
||||
:built_as_bottle => !!ARGV.build_bottle?,
|
||||
:tapped_from => f.tap,
|
||||
:time => Time.now.to_i, # to_s would be better but Ruby has no from_s function :P
|
||||
:HEAD => sha
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user