From deac8f14bb5b7837c3528d07cb19394b106ef7e5 Mon Sep 17 00:00:00 2001 From: ilovezfs Date: Thu, 27 Jul 2017 08:34:12 -0700 Subject: [PATCH] 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. --- Library/Homebrew/formula_installer.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Library/Homebrew/formula_installer.rb b/Library/Homebrew/formula_installer.rb index 27786e77edc2b..a0c091e7fb821 100644 --- a/Library/Homebrew/formula_installer.rb +++ b/Library/Homebrew/formula_installer.rb @@ -151,6 +151,8 @@ def check_install_sanity 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 @@ def check_install_sanity 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