diff --git a/Library/Homebrew/extend/os/linux/formula.rb b/Library/Homebrew/extend/os/linux/formula.rb index 12b28db2a0..f633b52416 100644 --- a/Library/Homebrew/extend/os/linux/formula.rb +++ b/Library/Homebrew/extend/os/linux/formula.rb @@ -19,7 +19,7 @@ class Formula when Regexp x.match? lib when String - lib.include? x + lib.to_s.include? x end end end @@ -31,9 +31,15 @@ class Formula yield end + undef ignore_missing_libraries + def ignore_missing_libraries(*libs) - libs.flatten! - allowed_missing_libraries.merge(libs) + libraries = libs.flatten + unless libraries.all? { |x| x.is_a?(String) || x.is_a?(Regexp) } + raise FormulaSpecificationError, "#{__method__} can handle Strings and Regular Expressions only" + end + + allowed_missing_libraries.merge(libraries) end # @private diff --git a/Library/Homebrew/formula.rb b/Library/Homebrew/formula.rb index 06084522f6..834b6ab4ea 100644 --- a/Library/Homebrew/formula.rb +++ b/Library/Homebrew/formula.rb @@ -2763,6 +2763,10 @@ class Formula def link_overwrite_paths @link_overwrite_paths ||= Set.new end + + def ignore_missing_libraries(*) + raise FormulaSpecificationError, "#{__method__} is available on Linux only" + end end end