aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/utils.rb
AgeCommit message (Collapse)Author
2011-12-16Enable 'brew edit' for non-Textmate editors.Adam Vandenberg
2011-12-16utils: fix clang build regexJack Nagel
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-08Introduce HOMEBREW_CURL_VERBOSEJack Nagel
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-11-25Utils: update gcc version detection logicMisty De Meo
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-25Detect 2-digit clang build versionsMisty De Meo
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-25Add utility methods to determine clang versionJack Nagel
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2011-11-25Parse `compiler --version` instead of -vJack Nagel
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-09-19Only try mirrors for CurlDownloadStrategiesMax Howell
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-19exceptions.rb: Add DownloadErrorCharlie Sharpsteen
`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-06If LLVM isn't installed then fails_with_llvm? is trueMax Howell
This makes sense, I assure you. Fixes Homebrew/homebrew#7458.
2011-09-06MacOS.default_compiler should return something alwaysMax Howell
Even though we are just guessing if it doesn't correspond to any of the others…
2011-09-05Check even more carefully for xcode_versionMax Howell
Refs Homebrew/homebrew#7236, though honestly I just think @dsarch hasn't updated.
2011-09-05Use proper issue URLMax Howell
2011-09-04Don't look for llvm-gcc in xcode_prefixMax Howell
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-02Guess Xcode version if `xcodebuild` doesn't existMax Howell
2011-08-31Default to LLVM for Xcodes that default to LLVMMax Howell
2011-08-31Don't point user at issues that are probably unrelatedMax Howell
2011-08-26Use curl with --insecure when on OS X < 10.6Max Howell
The SSL certificates on this old version of OS X are outdated and who knows if Apple will fix them. Fixes Homebrew/homebrew#6103.
2011-08-24HOMEBREW_CURL_ARGS so that tests can be more silentMax Howell
2011-08-24oh1 stdout display functionMax Howell
2011-07-27Add MacOS.lion? for MACOS_VERSION == 10.7Samuel Cochran
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-05-18Create method for accessing Xcode version.Mike McQuaid
2011-04-26No really, fix llvm_build_version and xcode_prefixAdam Vandenberg
2011-04-26Fix llvm_build_version to handle xcode_prefix output.Adam Vandenberg
2011-04-12Handle complex $EDITOR values.Adam Vandenberg
2011-04-09Normalize use of MACOS_VERSIONAdam Vandenberg
2011-04-07Use https for issue links at the end of stack traces.Jannis Leidel
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-03-21brew up: star installed formulaeJonas Pfenniger
When running `brew up`, if a mentioned formulae is also installed, it will get a wildcard start at the end. It makes it easier to see if any installed formulae is impacted. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-03-21utils.rb: removed unused cols argumentJonas Pfenniger
cols is calculated in the function body Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2011-03-19Add methods to ArchitectureListExtensionAdam Vandenberg
2011-03-19Use backticks instead of popenAdam Vandenberg
Using popen here breaks brew install -v due to the way the error pipe is passed around during install.
2011-03-18Add MacOS.prefer_64_bit?Adam Vandenberg
Moved snow_leopard_64? to compatibility and replaced it with a function MacOS.prefer_64_bit?. This method is in a better place and has a better name once Lion comes out. Fixes Homebrew/homebrew#4710
2011-03-17make fails_with_llvm work when cc is llvm-gccCamillo Lugaresi
Closes Homebrew/homebrew#4693. Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2011-03-14Fix bug in reporting curl errorsAdam Vandenberg
2011-03-12MacOS.xcode_prefixMax Howell
More robust code than before, and replaces all usage of `xcode-select -print-path`.
2011-03-12Don't open editor if no args passedMax Howell
2011-03-12Some CleanupMax Howell
2011-03-12Move string extensionsAdam Vandenberg
2011-03-12Refactor the brew command into one file per commandMax Howell
The code was sucking. To the extent that maintenance was hard. It's a lot easier to work with code that is sensibly split at sensible boundaries. So now it is more like that. But the refactor is minimal. Because we don't want you to have more merge hell than absolutely necessary. If you merge you will need to pay attention to brew.h.rb (as it is deleted) and bin/brew (as command logic is gone). It will be painful, but you will just have to help git out by moving any changes around manually. Note compatibility.rb. It ensures that any function renames or removals don't break anything. We're pretty serious about backwards compatibility. And that's because we encourage you to hack around with the innards. And we couldn't do that if we would then just make stuff disappear behind your back.
2010-11-26Use full path to curl in utils.rbAdam Vandenberg
2010-10-30fix warnings: ambiguous splatJamie Macey
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2010-10-30fix warnings: splat is redundant for putsJamie Macey
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2010-09-19Let the `gzip` utility function accept multiple paths.Martin Kühl
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2010-09-06Use 'realpath'Adam Vandenberg
2010-08-20Let 'interactive_shell' take a formula and set ENV vars.Adam Vandenberg
Pull duplicate code out of install --debug and install -i up into 'interactive_shell'.
2010-08-09brew doctor - X11 checkAdam Vandenberg
Tweak wording in X11 check and use the same X11 detection function as ENV.x11; also move that function into utils.
2010-08-02archs_for_command now follows symlinks.James Harris
Tell file(1) to follow symlinks using the -L option. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2010-07-25Allow HOMEBREW_EDITOR for non-project editing.Adam Vandenberg
If set, use "HOMEBREW_EDITOR" when editing a single file, or multiple files in the same folder. Note that this setting does not affect `brew edit`, since opening all of Homebrew at once requires an editor with proper project support.
2010-07-13Add command "brew --env"Adam Vandenberg
"brew --env" will set up a build environment and then dump certain ENV variables (CC, CXX, LD, CFLAGS, CXXFLAGS, MAKEFLAGS). If any of CC, CXX, LD are symlinks, now also output the target compiler. (Typically these will be symlinks from eg /usr/bin/cc to /usr/bin/gcc-4.2). This is a diagnostic command which may be merged into --config, turned into an external command, or removed if it doesn't turn out to be useful.
2010-07-08Improved Subversion support.Adam Vandenberg
Homebrew will now use the svn binary pointed to by HOMEBREW_SVN if set, use a Homebrew-installed svn if present, finally falling back to the system-provided svn binary. If a formula (mplayer) requires a newer version of Subversion than what Leopard provides, it can use the "StrictSubversionDownloadStrategy" download strategy to warn the user. These changes also fix an issue with forcing exports not working on a stock Leopard subversion, but letting the user either specify a specific binary or install Subversion via Homebrew and pick that up instead.