brew/Library/Homebrew/compat/dependency_collector.rb
Mike McQuaid cffa5a9864 Disable/delete/add more deprecations
Move various `odeprecated` to `odisabled` and delete uses of
`odisabled`.
2018-04-08 14:57:17 -07:00

63 lines
1.6 KiB
Ruby

require "dependency_collector"
class DependencyCollector
module Compat
# Define the languages that we can handle as external dependencies.
LANGUAGE_MODULES = Set[
:lua, :lua51, :perl, :python, :python3, :ruby
].freeze
def parse_string_spec(spec, tags)
if (tag = tags.first) && LANGUAGE_MODULES.include?(tag)
odisabled "'depends_on ... => #{tag.inspect}'"
end
if tags.include?(:run)
odeprecated "'depends_on ... => :run'"
end
super
end
def parse_symbol_spec(spec, tags)
case spec
when :clt
odisabled "'depends_on :clt'"
when :tex
odisabled "'depends_on :tex'"
when :libltdl
output_disabled(spec, "libtool")
when :apr
output_disabled(spec, "apr-util")
when :fortran
output_disabled(spec, "gcc")
when :gpg
output_disabled(spec, "gnupg")
when :hg
output_disabled(spec, "mercurial")
when :mpi
output_disabled(spec, "open-mpi")
when :python, :python2
output_disabled(spec, "python@2")
when :python3
output_disabled(spec, "python")
when :ant, :autoconf, :automake, :bsdmake, :cairo, :emacs, :expat,
:fontconfig, :freetype, :libtool, :libpng, :mysql, :perl, :pixman,
:postgresql, :rbenv, :ruby
output_disabled(spec)
else
super
end
end
private
def output_disabled(dependency, new_dependency = dependency)
odisabled "'depends_on :#{dependency}'",
"'depends_on \"#{new_dependency}\"'"
end
end
prepend Compat
end