From cc3bf7bcb58f2d794dfa8981ea488c55ea415164 Mon Sep 17 00:00:00 2001 From: Mike McQuaid Date: Mon, 14 Nov 2016 09:28:28 +0000 Subject: [PATCH] Don't warn about unused `brew install` arguments. This is a step closer to better argument handling but for now just fixes the issue in #1217 where it starts complaining about options like `--build-from-source` being used. --- Library/Homebrew/build_options.rb | 8 +++++++- Library/Homebrew/extend/ARGV.rb | 25 +++++++++++++++++++++++++ 2 files changed, 32 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/build_options.rb b/Library/Homebrew/build_options.rb index edcae01f53..44b6440dc6 100644 --- a/Library/Homebrew/build_options.rb +++ b/Library/Homebrew/build_options.rb @@ -103,7 +103,7 @@ class BuildOptions # @private def invalid_options - @args - @options + @args - @options - BuildOptions.formula_install_options end # @private @@ -111,6 +111,12 @@ class BuildOptions invalid_options.map(&:flag).sort end + def self.formula_install_options + @formula_install_options ||= ARGV.formula_install_option_names.map do |option_name| + Option.new option_name[2..-1] + end + end + private def option_defined?(name) diff --git a/Library/Homebrew/extend/ARGV.rb b/Library/Homebrew/extend/ARGV.rb index bd60cbeccb..3e4e7f5c7a 100644 --- a/Library/Homebrew/extend/ARGV.rb +++ b/Library/Homebrew/extend/ARGV.rb @@ -1,4 +1,29 @@ module HomebrewArgvExtension + def formula_install_option_names + %w[ + --debug + --env= + --ignore-dependencies + --cc= + --build-from-source + --devel + --HEAD + --keep-tmp + --interactive + --git + --sandbox + --no-sandbox + --build-bottle + --force-bottle + --verbose + -i + -v + -d + -g + -s + ].freeze + end + def named @named ||= self - options_only end