formula_installer: allow version mismatched build deps

Only check runtime dependencies for version conflicts to avoid
having to create unnecessary duplicate formulae.

For example, a formula that needs to be built with ghc@8.0 should still
be allowed to have a build-time dependency on a cabal-install that was
itself built with ghc@8.2.
This commit is contained in:
ilovezfs 2017-07-27 08:34:12 -07:00
parent 97b757bc96
commit deac8f14bb

View File

@ -151,6 +151,8 @@ class FormulaInstaller
recursive_deps = formula.recursive_dependencies
recursive_formulae = recursive_deps.map(&:to_formula)
recursive_runtime_deps = formula.recursive_dependencies.reject(&:build?)
recursive_runtime_formulae = recursive_runtime_deps.map(&:to_formula)
recursive_dependencies = []
recursive_formulae.each do |dep|
@ -176,7 +178,7 @@ class FormulaInstaller
version_hash = {}
version_conflicts = Set.new
recursive_formulae.each do |f|
recursive_runtime_formulae.each do |f|
name = f.name
unversioned_name, = name.split("@")
version_hash[unversioned_name] ||= Set.new