2683 Commits

Author SHA1 Message Date
Jack Nagel
1a05e18fe9 FormulaInstaller: actually select unsatisfied requirements
Fixes Homebrew/homebrew#17422.
2013-01-29 23:43:44 -06:00
Adam Vandenberg
0dec35e7b0 Only check keg-only if we map to a formula 2013-01-29 20:45:33 -08:00
Adam Vandenberg
40c339e349 Require --force to link keg-only.
Closes Homebrew/homebrew#13349.
2013-01-29 20:31:33 -08:00
Mike McQuaid
8ccda70344 Improve the explanation of the verbose flags.
Closes Homebrew/homebrew#17181.
2013-01-29 17:14:11 -08:00
Mike McQuaid
599b012702 Add pour_bottle? method to Formula.
Allows a formula to selectively disable bottle pouring.
e.g. the default Boost bottle does not work with a brewed Python.

Fixes Homebrew/homebrew#17142
2013-01-29 17:14:11 -08:00
Mike McQuaid
b58077b3e8 Don't use underscores in (new) bottle filenames.
Closes Homebrew/homebrew#14270
2013-01-29 17:14:09 -08:00
Mike McQuaid
1107171f83 Cleanup old bottle syntax. 2013-01-29 17:14:00 -08:00
Mike McQuaid
92a5c765a9 Improve brew doctor autocrlf check.
Closes Homebrew/homebrew#15711.
2013-01-29 17:14:00 -08:00
Mike McQuaid
89e3efae00 Only print launchctl tmux warning conditionally. 2013-01-29 14:37:03 -08:00
Adam Vandenberg
f23f511dbb Remove gmock.
Gmock and GTest should not be installed system-wide.

Closes Homebrew/homebrew#17358.
2013-01-29 12:13:04 -08:00
Adam Vandenberg
b7121f0abc brew-linkapps creates symlinks again
Revert "Prevent linkapps from creating duplicate aliases"
Revert "linkapp: create Finder aliases"

This reverts commit e1a68f1ffbac9dc8209cc9ac2c8f2e34d11867af.
This reverts commit bf2e6023d1bac08739b4562e19e07db448f0aba3.

Closes Homebrew/homebrew#15308.
2013-01-29 11:59:54 -08:00
Adam Vandenberg
2ad5069bab 0.9.4: optional/recommended support 2013-01-29 11:57:07 -08:00
Adam Vandenberg
6a747a1420 Add 'instal' to completions 2013-01-29 11:13:23 -08:00
Jack Nagel
61f01632c6 Keg#lock: guard against nil in ensure
Fixes Homebrew/homebrew#17403.
2013-01-29 10:26:00 -06:00
Jack Nagel
9b555ee399 Update Xcode.version for 4.6 2013-01-29 09:52:02 -06:00
Misty De Meo
14bb39b898 Don't print git origin check without git repo 2013-01-29 09:48:43 -06:00
Jack Nagel
667abe8185 Update clang version regexp in CLT check 2013-01-29 07:44:19 -06:00
Jack Nagel
0a7d2b82b4 remove vim from the blacklist 2013-01-28 23:17:39 -06:00
Jack Nagel
25be1de992 Update latest CLT version 2013-01-28 23:02:37 -06:00
Jack Nagel
1ca5b7a204 doctor: fix typo 2013-01-28 23:02:25 -06:00
Jack Nagel
35394ad584 Fix clang version detection on Xcode 4.6+ 2013-01-28 14:40:58 -06:00
Jack Nagel
246b60573f Fix compiler map key 2013-01-28 14:33:52 -06:00
Mike McQuaid
5b281ded58 Xcode 4.6 released.
Closes Homebrew/homebrew#17383. Closes Homebrew/homebrew#17384.
2013-01-28 12:13:08 -08:00
Jack Nagel
992b373bf0 LanguageModuleDependency: call super() to generate tags list
Fixes Homebrew/homebrew#17379.
2013-01-28 11:23:25 -06:00
Jack Nagel
48a8af32f3 Filter optional and reccommended requirements 2013-01-28 10:35:15 -06:00
Jack Nagel
e9014c436c Generate options for optional and recommended requirements 2013-01-28 10:35:15 -06:00
Jack Nagel
26c0524f1a DependencyCollector: return created dep from #add 2013-01-28 10:35:14 -06:00
Jack Nagel
210401654b Allow specifying a name attribute for X11Dependency 2013-01-28 10:35:14 -06:00
Jack Nagel
b90af5be13 Consider correct dependent when skipping build-time deps
We skip build-time deps when installing from bottles. However, the
current logic only considers the root, rather than the actual dependent
formula. Given

  A (bottled)
  |__B (not bottled)
     |__C (build-time)

C will be pruned from the effective dependency tree of A. This is wrong,
because C is required in order to build B.

Fix this by examining the current dependent rather than the root.

Fixes Homebrew/homebrew#17356.
2013-01-27 21:20:09 -06:00
Jack Nagel
5e83629119 Extract unsatisfied dependency logic from installer 2013-01-27 21:20:09 -06:00
Jack Nagel
41dec56d29 Invoke super() in requirement subclasses 2013-01-27 21:20:09 -06:00
Adam Vandenberg
68d312c46f audit: hint about depends_on Class 2013-01-27 14:54:48 -08:00
Jack Nagel
871f3a091a Update require 2013-01-27 16:29:19 -06:00
Sema
667b53ffb0 doctor: fix transposed git command
Closes Homebrew/homebrew#17338.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2013-01-27 13:17:19 -06:00
Misty De Meo
2e23e9a22d superenv: --use-gcc should specify gcc-4.2
Since 'gcc' is a symlink to 'llvm-gcc' on Xcode 4.3+, --use-gcc and
--use-llvm were doing exactly the same thing. Combined with the
previous commit, this allows users with either a leftover
/usr/bin/gcc-4.2 or a homebrewed apple-gcc42 to build with gcc.

This doesn't however fix Xcode-only systems with apple-gcc42.

Fixes Homebrew/homebrew#17243.
2013-01-26 22:57:56 -06:00
Misty De Meo
88609dd6ed xcrun: actually try fallbacks
xcrun has a lot of fallbacks if the first case fails but never actually
reaches them on CLT systems since it doesn't check the validity of the
first path before executing it.

(When should it reach these? Mainly for non-Xcode compilers we
support, e.g. apple-gcc42 which can be found by xcrun but which isn't
in /usr/bin)

The xcrun invocation also needed chomping.
2013-01-26 22:53:29 -06:00
Jack Nagel
adf90691f1 Split dependency classes into separate files 2013-01-26 20:30:05 -06:00
Jack Nagel
f62762b3ab Generate options immediately following depends_on
Given

  depends_on 'gnutls' => :recommended
  depends_on 'libgcrypt' unless build.without? 'gnutls'

the dependency on libgcrypt should be enabled by default. However, the
corresponding option has not yet been generated, so the condition is
true and the dependency is disabled.

Instead, add a hook method that fires after each depends_on and adds the
appropriate option.
2013-01-26 18:20:36 -06:00
Jack Nagel
036f3e7bfc Don't force universal for build deps 2013-01-26 17:24:17 -06:00
Jack Nagel
b8a884bcee FormulaInstaller: wrap --build-from-source in an Option object
c.f. Homebrew/homebrew#17327.
2013-01-26 13:53:32 -06:00
Jack Nagel
9a179d8b06 locks: ensure lock directory exists
Fixes Homebrew/homebrew#17326.
2013-01-26 13:18:45 -06:00
Jack Nagel
2534c1d45e audit: warn about nonexistent options passed to deps 2013-01-26 12:14:51 -06:00
Jack Nagel
5ac4e4f071 upgrade: use standard Tab accessor
Yes, the formula object does refer to a version that has not yet been
installed, but we were not looking into Formula#prefix, but #linked_keg,
which is version agnostic (since the original patch was committed, we
Tab#for_formula learned to look into #opt_prefix as well). The rest of
the logic is already embedded in the Tab accessors.
2013-01-26 12:14:51 -06:00
Jack Nagel
8d03c760c2 Fix Dependencies -> Array conversion 2013-01-26 12:14:51 -06:00
Jack Nagel
e05a509fb6 Tag Xcode and CLT requirements as build-time
This way they can be skipped when installing bottles.
2013-01-26 12:14:50 -06:00
samueljohn
620c063f8c Add "depends_on :clt" 2013-01-26 12:14:50 -06:00
Jack Nagel
109145bf21 Replace usages of recursive_deps with recursive_dependencies 2013-01-26 12:14:49 -06:00
Jack Nagel
82051a56ec upgrade: offload dependency expansion to FormulaInstaller
Now that FormulaInstaller does dependency expansion the _right_ way,
avoid duplicating the logic in upgrade. Instead, offload it to the
installer, which will generate an exception in check_install_sanity that
we can safely ignore when formulae in the outdated list are upgraded as
part of the dependency tree of another outdated formula.
2013-01-26 12:14:49 -06:00
Jack Nagel
18836d93d8 uses: utilize modern dependency API 2013-01-26 12:14:49 -06:00
Jack Nagel
fe802f05ef missing: ignore unused optional and recommended deps 2013-01-26 12:14:48 -06:00