4907 Commits

Author SHA1 Message Date
Max Howell
9772e08033 Specify current Xcode to aid issue-diagnosis
I saw a ticket with just doctor output and no `brew --config`. This helps.
2012-03-02 01:06:16 +00:00
Max Howell
7cedf67680 Scupper sourceable output if brew install is piped
`brew install > file` should not give "export CC=/foo" output on Build Failures.

Also moved the "Using clang" output to brew when BuildError is thrown as that is where it is interesting, and not if you just do `brew --env`.
2012-03-02 00:59:39 +00:00
Giovanni Bajo
e0eb98c84c Fix xcode check variable name.
Closes Homebrew/homebrew#10624.

Signed-off-by: Max Howell <max@methylblue.com>
2012-03-01 21:59:21 +00:00
Rob Olson
d23b8dc5d3 Fix typo: '/Application' -> '/Applications'
Closes Homebrew/homebrew#10626.

Signed-off-by: Max Howell <max@methylblue.com>
2012-03-01 21:57:58 +00:00
Max Howell
2a559110c2 Don't warn about missing Xcode twice 2012-03-01 17:01:17 +00:00
Max Howell
c21ffc4139 Fix /usr/bin:/usr/local/bin PATH order check 2012-03-01 16:59:18 +00:00
Max Howell
ba9b1f918d The doctor suggests upgrading Xcode
Closes Homebrew/homebrew#9199.
2012-03-01 16:57:14 +00:00
Max Howell
918f2a1f3a Faster and more legible brew doctor
Please check for regressions. I was careful, but there was a lot of stuff.

Closes Homebrew/homebrew#9409.
2012-03-01 16:33:21 +00:00
Max Howell
a77c11ceea Piped brew --env outputs in a sourceable format
So you can source `brew --env` to make it easier to build your own software, etc.
2012-03-01 14:07:40 +00:00
Max Howell
b6a5b3f3a3 Assist more in the template from brew create 2012-03-01 13:25:10 +00:00
Max Howell
abe0be8a2e Show doctor error if xcode-select path is invalid
Fixes Homebrew/homebrew#10598.

Ideally we would show a message for builds that use xcodebuild etc. But there is no easy mechanism for this in place.
2012-03-01 10:19:55 +00:00
Max Howell
85e05b27dd Some additional aid for brew create 2012-02-29 02:03:26 +00:00
Max Howell
fb9b263bc3 Play nice with case-sensitive filesystems 2012-02-29 01:28:23 +00:00
Max Howell
571aff35e7 Revert "Writability for /usr/local is no longer required"
This reverts commit 21acfc1c7e66babf112196812fdfcf442edf3a97.

This was reverted because we tried to leave /usr/local with root permissions, but
this caused problems for us. Sorry Rogue Amoeba. I'd suggest not installing your
App's tools into /usr/local. It's outside your App's domain, so you can't be sure
what will happen there.
2012-02-28 18:49:40 +00:00
Jack Nagel
2f842994f0 audit: automake, autoconf, and libtool are build-time deps
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-28 11:36:12 -06:00
Jack Nagel
f74e616724 Show real path to x11 in --config output
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-27 23:43:56 -06:00
Max Howell
2049ce9f5c Autoconf, Automake and Libtool
We need these now for Xcode-4.3/CLT4X installations.

Also prevent m4 error in installer. And prevent brew doctor complaining if we're Xcode 4.3 or above.

Closes Homebrew/homebrew#10349. Fixes Homebrew/homebrew#10423. Refs Homebrew/homebrew#9179.
2012-02-27 03:35:11 +00:00
Jack Nagel
4ee255134d Replace UI uses of 'folder' with 'directory'
There are still methods and variables with the word "folder" in the
name, but at least user-facing messages and warnings should use the
correct terminology.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-24 19:43:40 -06:00
Adam Vandenberg
a8e4cf4f80 audit: flag imake as a build dep 2012-02-21 18:57:27 -08:00
Max Howell
8cbaca5b76 Fixes Homebrew/homebrew#10369; Doctor output is unreadable. 2012-02-21 15:50:35 +00:00
Max Howell
3a58b8141b Warn, don't advertise with a status header 2012-02-21 12:45:20 +00:00
Max Howell
2431c00c92 Move this code into FormulaInstaller
The correct location for it IMO. Also added warning for the user.
2012-02-21 11:40:06 +00:00
Max Howell
61a8bd9ca0 Don't hang if xcode-select -print-path is "/"
Introducing MacOS.xctools_fucked?.

Refs Homebrew/homebrew#10293.
2012-02-21 10:33:03 +00:00
Jack Nagel
86e7c8a772 upgrade: unlink relative to the correct keg
Calling Keg#unlink on "#{f.rack}/#{f.version}" will perform the unlink
relative to the _new_ keg, rather than the keg we are upgrading from.
Fix this by resolving the linked_keg entry and unlinking relative to it.

Fixes Homebrew/homebrew#10296.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-20 15:14:31 -06:00
Max Howell
83e9dbf266 Be more verbose for the /usr/bin /usr/local/bin PATH doctor 2012-02-20 18:25:13 +00:00
Jack Nagel
6af4cc9f27 brew --env: fix path to xcrun
Fixes Homebrew/homebrew#10327.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-19 20:32:06 -06:00
Adam Vandenberg
be250b4d05 don't quit if already installed 2012-02-19 14:07:42 -08:00
Jack Nagel
6feb56ce37 test: returning false indicates failure
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-18 21:33:36 -06:00
Jack Nagel
ccec313b03 audit: use a heredoc for this long line
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-18 20:49:51 -06:00
Jack Nagel
ecbee2b73c audit: tighten xcodebuild SYMROOT check
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-18 20:49:50 -06:00
Adam Vandenberg
40811ae64c fix download url 2012-02-17 19:45:22 -08:00
Max Howell
1e9a4dbfe4 brew doctor whines at people to install CLI Tools for Xcode
Refs Homebrew/homebrew#10290.
2012-02-18 01:53:54 +00:00
Max Howell
607c13c32b Find xcrun if user doesn't ever install Xcode 4.3 helper tools 2012-02-17 13:34:06 +00:00
Jack Nagel
856fe669e2 audit: warn about ARGV.include? '--devel'
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-16 23:47:40 -06:00
Jack Nagel
f1dc59ca11 audit: make checksum warnings more clear
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-16 23:47:39 -06:00
Adam Vandenberg
0ae1772b89 audit: add problem counts 2012-02-16 20:27:08 -08:00
Max Howell
b5268a877e Remove OSX-GCC from brew-doctor
Also fix undesired output if git isn't installed.

Refs Homebrew/homebrew#10244.
2012-02-17 00:07:09 +00:00
Max Howell
4504662033 Use xcrun; Ensure clang is the default compiler with Xcode 4.3
Using xcrun as a proxy to execute the compiler tools is per its design. This means you can't treat ENV['CC'] as a path anymore, but I think I found the cases this was being expected and corrected them. It was not proper anyway to assume the variable was a path, it can be anything. Like a proxy. Like xcrun.

Also more thoroughly clear ENV.
2012-02-16 23:43:43 +00:00
Jack Nagel
59bd97bb89 Unset CLICOLOR_FORCE in the build environment
If we're going to unset GREP_OPTIONS we may as well unset this one too,
as it causes similar issues. Recent autoconf unset both of these.

Fixes Homebrew/homebrew#8165.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-16 16:55:28 -06:00
Max Howell
ec66d1f956 Delete ENV[GREP_OPTIONS] and the related doctor check
Can break CMAKE builds.
2012-02-16 18:19:00 +00:00
Jack Nagel
b63584a386 audit: warn about correct empty checksum type
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-15 23:03:43 -06:00
Jack Nagel
5ab0488918 fetch: compare checksums case-insensitively
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-15 22:34:48 -06:00
Jack Nagel
98dcfcfe2e audit: only look for empty checksums once
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-15 22:12:06 -06:00
Trevor Wennblom
555b16962f more stringent auditing of checksums
Closes Homebrew/homebrew#10213.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-15 22:12:06 -06:00
Jack Nagel
1d9ada295a Boost-jam is now part of boost-build
So remove it, and add/update the appropriate aliases.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-13 20:51:40 -06:00
Jack Nagel
cdd52e28f1 Remove LinkedKegs entry if we're writing the same one
If a keg has been uninstalled via `rm -rf <keg>`, and a user tries to
reinstall it without `brew unlink`ing it first, it will fail to link as
the LinkedKegs entry still exists. This isn't desirable, and the user
should be able to reinstall the same formula on top of the old, dead
symlinks without problems, so let's just remove the LinkedKegs entry if
it matches the one we are installing anyway.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-10 23:53:12 -06:00
Jack Nagel
c1fecab365 Don't return nil from Formula#linked_keg
Doing so was the result of a quick hack to fix the "deps installed as
upgrades don't get linked" bug, but it was a mistake. Instead, always
return the LinkedKegs entry as a Pathname object, and let callers be
responsible for checking that it exists.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-10 23:52:01 -06:00
Jack Nagel
46b80bd552 Revert "install: unlink old kegs"
This reverts commit 2eabe2cbc84649696aeb6fa842a70f3794955597.

When Keg#unlink looks for symlinks relative to the keg, it can hit false
positives that actually belong to a different keg and unlink them
anyway. This breaks our "force identical directory symlinks to be shared
real directory" case.

This may be a problem in general with the unlinking code and should be
investigated.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-10 12:58:24 -06:00
Jack Nagel
511598fa37 install: unlink old kegs
If a formula makes it all the way to the actual install step, it is safe
to unlink the keg before linking; this will prune dead symlinks in the
case where a keg was removed with `rm -rf <keg>` but not unlinked with
`brew unlink`.

Fixes Homebrew/homebrew#10077.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-10 08:57:11 +00:00
samueljohn
0eb1cadee0 brew --config: properly handle empty which strings
Symptom: If no python/ruby/perl is in your path, then `which x`.chomp
returns an empty string and `unless ""` is still true.  So, N/A is never
displayed.  Instead, ruby's Pathname.new("").realpath returns the cwd.
(I consider this realpath behavior a ruby bug) Fix: use empty?

Closes Homebrew/homebrew#10027.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-08 14:41:55 -06:00