142 Commits

Author SHA1 Message Date
Misty De Meo
d4534ec528 StandardCompilers: 3.1.4 doesn't have llvm 2012-04-15 17:49:49 -05:00
Mike McQuaid
d4f7577185 Add ofail command to print error and exit. 2012-04-14 17:48:34 +10:00
Misty De Meo
bf0955dc8a Fix StandardCompilers check
* Return true if Xcode version is not in hash, not nil
* Use two-digit version numbers for 4.0, 4.2, 4.3
2012-04-11 21:45:43 -05:00
Misty De Meo
4dc1a7bdce brew doctor: add check for outdated compilers
A common source of build problems on Xcode 4.3+ is outdated compilers,
usually when a user has installed over top of an old version and hasn't
installed the CLT. Since the compilers from the previous Xcode are still
around, brew doctor wouldn't complain.

This adds a hash containing a list of the canonical compiler versions
for supported versions of Xcode, and adds a check against that to determine
whether a given installation has any compilers which are out of date.

Closes Homebrew/homebrew#11518.

Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2012-04-11 10:08:46 -05:00
Diego Plentz
4ddbb335d0 typo
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2012-03-28 20:02:07 -07:00
Mike McQuaid
23b84ef732 Set MACOS_VERSION as 0 on non-OSX platforms. 2012-03-18 15:43:39 +13:00
Max Howell
c1545fe56a xcode_version works for Xcode 4.3 without CLITools
Also correct heinous error when I put `case nil` in the code.

Also outputs "dunno" if we really can't figure it out. I think this is safe.
2012-03-16 00:59:39 +00:00
Mike McQuaid
552dcdc703 Move most bottle stuff to a bottles.rb file. 2012-03-10 18:10:40 +13:00
Mike McQuaid
4a306f32f4 Support bottles for non-Lion OSX versions. 2012-03-10 18:09:35 +13:00
Adam Vandenberg
cc78050dc5 add which method 2012-03-06 06:53:06 -08:00
Max Howell
5c7c82baf8 Make xcode_version work with CLI4.3X
Closes Homebrew/homebrew#10460.
2012-02-26 12:59:12 +00:00
Jack Nagel
a3edec8b88 inreplace: warn if no substitutions were made
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-25 22:37:29 -06:00
Adam Vandenberg
c34cdbbeb9 Yield to the inevitable 2012-02-21 20:14:56 -08: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
Max Howell
2759dcf06b Don't hang if xcode-select is set to "/" 2012-02-20 18:24:36 +00:00
Max Howell
e1461b9d20 OTT handling for various Xcode-4.3/CLI-Tools edge cases
Also xcrun can only exist at /usr/bin/xcrun.

Most of these edges are non-buildable environments, but I didn't know that when writing it, so it may as well stay, since it still does make brew --env more correct.
2012-02-18 01:53:55 +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
Max Howell
30cbb25147 Fix some default_cc behavior
Fixes Homebrew/homebrew#10245.
Fixes Homebrew/homebrew#10248.
2012-02-17 13:08:56 +00:00
Max Howell
ba61d3013a Work with Xcode 4.3 if user didn't install helper tools
We ask Spotlight to find Xcode and use that path, neat right?
2012-02-17 13:08:55 +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
Max Howell
e7466c5b33 Fix default_cc
Dumb logic error. Also same one in MacOS.compiler. Am I getting old?

Also it returns a string and not a float.
2012-02-16 19:29:56 +00:00
Max Howell
66f942aa66 Find the dev tools, even with Xcode 4.3
Fixes Homebrew/homebrew#9179.
2012-02-16 18:19:01 +00:00
Max Howell
4fa82d9e1f Support Xcode 4.3 xcode-select being wrong
I installed Xcode 4.3 and xcode-select is wrong, so this will fix it for most users.
2012-02-16 15:29:36 +00:00
Jack Nagel
ddde478f63 Be gentle when stdout is not a tty
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-10 17:54:35 -06:00
Mike McQuaid
c07ca9e56d Bottles should care about cellar and prefix 2012-01-29 20:08:08 +00:00
Mike McQuaid
5508acc139 Bottles should care about cellar path not prefix.
Closes Homebrew/homebrew#9844.
2012-01-29 13:03:35 +00:00
Konstantin Shabanov
b695dfb18c Strip escaping from query
Regexp#source retains escape sequences as is, so searching for formulae
like 'pure-ftpd' doesn't work.

Closes Homebrew/homebrew#9597.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-01-26 18:21:26 -06:00
Mike McQuaid
a3db9a42e8 Add option for building bottles.
Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2012-01-16 21:05:00 +00:00
Misty De Meo
8d100a0508 search: return results while parsing
Instead of returning a full list of results after parsing, yield and
print each result as it's found for a snappier user experience.

Closes Homebrew/homebrew#9576.

Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2012-01-13 22:31:55 -06:00
Misty De Meo
7962b15a98 search: use v2 API
The v3 API currently lacks a search feature. Use the v2 API instead for
much faster pull request filtering.

Closes Homebrew/homebrew#9592.

Signed-off-by: Misty De Meo <mistydemeo@gmail.com>
2012-01-13 20:55:18 -06:00
Jack Nagel
79439626b5 search: return matches from open pull requests
When search can't find any local results, hit the GitHub API and search
the titles of pending pull requests. This will help people find the many
proposed formulae and prevent them from wasting time duplicating them.

Closes Homebrew/homebrew#9018.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-01-11 21:11:53 -06:00
Jack Nagel
d106cfed06 Make MacOS.clang_build_version more useful
Let's choose the first \d{2,} as the build number, as it is the most
likely to indicate significant changes, and we need something to use for
comparison when selecting compilers.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-01-11 02:19:09 -06:00
Jack Nagel
82dd32e370 Only show gcc build if it's really gcc
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-12-30 15:24:07 -06:00
Adam Vandenberg
62e1dd8bd5 Enable 'brew edit' for non-Textmate editors. 2011-12-16 14:27:58 -08:00
Jack Nagel
df8edc94d6 utils: fix clang build regex
This has to be able to match things like "211.10.1" so let's stop using
fixed lengths.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-12-16 03:03:10 -06:00
Jack Nagel
901406e3a0 Introduce HOMEBREW_CURL_VERBOSE
When investigating issues, one might want to see exactly what curl is
doing behind the scenes. Setting HOMEBREW_CURL_VERBOSE will cause the
'--verbose' flag to be passed to all invocations of curl.

Prompted by Homebrew/homebrew#8992.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-12-08 21:04:28 -06:00
Misty De Meo
f017f2d2f5 Utils: update gcc version detection logic
Homebrew was attempting to check the version of gcc-4.0 and gcc-4.2 even
if they don't exist, causing `doctor` and `--config` to throw nasty
errors.

Also fixes the broken missing gcc-4.2 detection, which was confusing
Xcode 4.2 users.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-11-25 17:50:14 -08:00
Misty De Meo
6612e49a3c Detect 2-digit clang build versions
Xcode 3.2.6's build of clang is 77, which wasn't being matched by the
clang_build_version regexp.

Closes Homebrew/homebrew#8796.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-11-25 17:54:21 -06:00
Jack Nagel
6fce434857 Add utility methods to determine clang version
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-11-25 13:14:46 -06:00
Jack Nagel
a99b745935 Parse compiler --version instead of -v
For GCC and LLVM-GCC, '-v' is not a synonym for --version. When run
without any other options or arguments, it gives similar output, but it
is better to just parse the (terser) --version output.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-11-25 13:00:59 -06:00
Max Howell
6bd47cf0f9 Only try mirrors for CurlDownloadStrategies
Also adjust output text slightly for prettiness.

A possibly useful side effect here is safe_system has a defined Exception (subclassing RuntimeError) now.
2011-09-19 23:30:10 +01:00
Charlie Sharpsteen
ff7c886556 exceptions.rb: Add DownloadError
`DownloadError` is an exception that download stratigies can throw to indicate
that a fetch was incomplete due to a failure in communication.

The `curl` method in `utils.rb` has been upgraded to throw a `DownloadError` if
something bad happens to `curl` execution.
2011-09-19 09:21:36 -07:00
Max Howell
d37918b20f If LLVM isn't installed then fails_with_llvm? is true
This makes sense, I assure you. Fixes Homebrew/homebrew#7458.
2011-09-06 17:51:23 +01:00
Max Howell
5dc302604f MacOS.default_compiler should return something always
Even though we are just guessing if it doesn't correspond to any of the others…
2011-09-06 17:12:26 +01:00
Max Howell
6d075a3b17 Check even more carefully for xcode_version
Refs Homebrew/homebrew#7236, though honestly I just think @dsarch hasn't updated.
2011-09-05 18:54:07 +01:00
Max Howell
6283ca46b7 Use proper issue URL 2011-09-05 09:44:53 +01:00
Max Howell
0f3f0626d3 Don't look for llvm-gcc in xcode_prefix
Look in /usr/bin because all versions of Xcode install it to /usr/bin now and this allows us to support Xcode-less installs of Apple's developer tools.
2011-09-04 12:09:41 +01:00
Max Howell
7aa45e81cb Guess Xcode version if xcodebuild doesn't exist 2011-09-02 12:12:30 +01:00
Max Howell
a32e738f7c Default to LLVM for Xcodes that default to LLVM 2011-08-31 17:36:41 +01:00
Max Howell
5b00ab493b Don't point user at issues that are probably unrelated 2011-08-31 15:39:16 +01:00