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.
Move --prefix, --cellar to the top of brew.sh. Timings on master:
brew --prefix > /dev/null 0.05s user 0.03s system 46% cpu 0.165 total
brew --prefix > /dev/null 0.05s user 0.04s system 63% cpu 0.131 total
brew --prefix > /dev/null 0.04s user 0.03s system 72% cpu 0.104 total
brew --prefix > /dev/null 0.04s user 0.03s system 87% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.03s system 81% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.03s system 84% cpu 0.075 total
brew --prefix > /dev/null 0.04s user 0.03s system 83% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.02s system 84% cpu 0.072 total
brew --prefix > /dev/null 0.04s user 0.03s system 86% cpu 0.072 total
brew --prefix > /dev/null 0.04s user 0.03s system 82% cpu 0.075 total
brew --prefix > /dev/null 0.04s user 0.03s system 85% cpu 0.072 total
brew --prefix > /dev/null 0.04s user 0.03s system 84% cpu 0.076 total
brew --prefix > /dev/null 0.04s user 0.03s system 85% cpu 0.074 total
brew --prefix > /dev/null 0.03s user 0.03s system 83% cpu 0.073 total
brew --prefix > /dev/null 0.04s user 0.02s system 83% cpu 0.072 total
brew --prefix > /dev/null 0.03s user 0.03s system 86% cpu 0.068 total
brew --prefix > /dev/null 0.04s user 0.03s system 82% cpu 0.080 total
brew --prefix > /dev/null 0.04s user 0.03s system 84% cpu 0.079 total
brew --prefix > /dev/null 0.04s user 0.02s system 83% cpu 0.070 total
brew --prefix > /dev/null 0.03s user 0.03s system 84% cpu 0.072 total
With the patch applied:
brew --prefix > /dev/null 0.02s user 0.02s system 24% cpu 0.157 total
brew --prefix > /dev/null 0.02s user 0.03s system 53% cpu 0.078 total
brew --prefix > /dev/null 0.02s user 0.02s system 64% cpu 0.056 total
brew --prefix > /dev/null 0.02s user 0.03s system 74% cpu 0.065 total
brew --prefix > /dev/null 0.01s user 0.02s system 73% cpu 0.049 total
brew --prefix > /dev/null 0.01s user 0.02s system 77% cpu 0.050 total
brew --prefix > /dev/null 0.01s user 0.02s system 64% cpu 0.054 total
brew --prefix > /dev/null 0.01s user 0.02s system 77% cpu 0.049 total
brew --prefix > /dev/null 0.01s user 0.02s system 56% cpu 0.061 total
brew --prefix > /dev/null 0.02s user 0.02s system 66% cpu 0.060 total
brew --prefix > /dev/null 0.01s user 0.02s system 62% cpu 0.057 total
brew --prefix > /dev/null 0.01s user 0.02s system 71% cpu 0.052 total
brew --prefix > /dev/null 0.02s user 0.03s system 67% cpu 0.063 total
brew --prefix > /dev/null 0.01s user 0.02s system 70% cpu 0.042 total
brew --prefix > /dev/null 0.02s user 0.02s system 68% cpu 0.056 total
brew --prefix > /dev/null 0.01s user 0.02s system 73% cpu 0.049 total
brew --prefix > /dev/null 0.01s user 0.02s system 62% cpu 0.058 total
brew --prefix > /dev/null 0.02s user 0.02s system 67% cpu 0.058 total
brew --prefix > /dev/null 0.01s user 0.02s system 73% cpu 0.043 total
brew --prefix > /dev/null 0.01s user 0.02s system 65% cpu 0.055 total
Prefer $XDG_CACHE_HOME if defined, falling back to $HOME/.cache.
The Mac cache location is not affected by this change.
Signed-off-by: Bob W. Hogg <rwhogg@linux.com>