38364 Commits

Author SHA1 Message Date
Max Howell
158efd8c9a brew cleanup cleans up the download-cache
Manpage updated.

The -s switch is "scrub" and removes downloads for uninstall formula which are downloads for the latest version of that formula still.

Please NOTE cache is NOT cleaned if a formula argument is provided. I couldn't be bothered. Patches welcome :)

Closes Homebrew/homebrew#2923.
2012-03-06 20:28:06 +00:00
Max Howell
1b4b8a722e Pathname.stem knows about bottles 2012-03-06 20:28:06 +00:00
Max Howell
b63ec18564 Proper single character switch handling
Includes a test. So now you can do `brew cleanup -ns` and it will work.
2012-03-06 20:28:06 +00:00
Max Howell
9c5ddb5721 The doctor checks if you need to brew update
Well at least it checks to see if it's been a while since the last one.
2012-03-06 20:28:05 +00:00
Jonathan Hitchcock
de30a7844f 'brew doctor' provides bad example command
If there are multiple dependencies missing, 'brew doctor' can suggest
that you run something like:

  brew install autoconf libyaml autoconf, libyaml

This commit improves that output.

Closes Homebrew/homebrew#10720.

Signed-off-by: Max Howell <max@methylblue.com>
2012-03-06 15:38:33 +00:00
Adam Vandenberg
cc78050dc5 add which method 2012-03-06 06:53:06 -08:00
Max Howell
6868bf0d6e Don't require formula files for brew rm --force
In fixing this I also made it so that ARGV.kegs will return the LinkedKeg if the symlink is set. Which is almost always is. This neatly avoids most multiple-kegs issues.

Fixes Homebrew/homebrew#10685.
2012-03-06 13:47:31 +00:00
Max Howell
7ddaaf9bb0 Doctor check for python is Python-3
Refs Homebrew/homebrew#9541.
2012-03-06 12:20:02 +00:00
Jack Nagel
ed5f7dfbaa Require specialties at the end of formula.rb
classes in formula_specialties.rb need Formula, so it has to be last.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-06 00:28:50 -06:00
Adam Vandenberg
962f4fa9ef Move llvm method to FailsWithLLVM 2012-03-05 21:14:48 -08:00
Adam Vandenberg
fca0a66649 shrink 2012-03-05 21:14:39 -08:00
Adam Vandenberg
ee5193e3e8 invert condition 2012-03-05 21:14:39 -08:00
Adam Vandenberg
09d23d91ef Move AmazonWebServicesFormula to formula_specialties
Enough formulae in core depend on this, pull it in here.
When multi-repo support lands, perhaps we could set up Homebrew-AWS.
2012-03-05 21:14:39 -08:00
Adam Vandenberg
6af1aae50b Move specialized formulae base classes into a new file 2012-03-05 21:14:39 -08:00
Adam Vandenberg
1b372d7840 Move path utils out of formula.rb
Make a new module for our FileUtils extensions and use that instead.
2012-03-05 21:14:39 -08:00
Jack Nagel
19a0aa51a1 Adjust updater tests for git config calls
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-05 12:35:55 -06:00
Jack Nagel
01994c7be1 keg: allow selective linking at the file level
Some parts of a keg's tree are not subject to the cleaner, and sometimes
we still want to remove things in directories marked skip_clean; this
allows us that freedom.

If 'lib' is marked skip_clean, we still want to avoid linking the
charset.alias file into the top of the tree. The same needs to be done
for the locale.alias file in share/locale.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-04 23:56:22 -06:00
Max Howell
f7d7fb1e81 Don't allow brew link to be run as sudo 2012-03-04 02:47:53 +00:00
Nicolas Despres
6898eadcc5 brew-man: only exit 1 when an error occurs
Because of "set -e" in non verbose mode brew man had an exit status
equals to 1 whereas there was no error.  The reason was that the "test"
command failed.  This patch fix this.

Closes Homebrew/homebrew#10664.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-03 14:25:45 -06:00
Jack Nagel
28d6a0f4de update: disable git line ending conversion
If a user has set core.autocrlf = true (which shouldn't ever be used on
OS X, but alas...), a subsequent `brew update` will check out files with
CRLF line endings. Setting core.autocrlf = false in Homebrew's repo
config will override this global setting, and let us check out files
with their in-repository line endings.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-02 18:37:48 -06:00
Jack Nagel
caa3c4f864 doctor: make git status check saner
The order of things made the check for git in the path pointless (and
was my fault); this is a better way to do it.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-01 23:29:14 -06:00
Jack Nagel
2d5de8c7ed doctor: s/folder/directory/
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-01 22:55:33 -06:00
Jack Nagel
79d1c2396a audit: check for gfotran in Formula#deps instead
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-01 19:56:09 -06:00
Jack Nagel
7f39c999a6 Don't duplicate missing deps in brew doctor
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-01 19:48:37 -06:00
Max Howell
bfa537d5fa Clearer brew doctor output for brew missing
It was confusing that it told you to brew install missing deps and then listed formula that were already installed IMO.
2012-03-02 01:21:55 +00:00
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
Jack Nagel
d9fdd401da missing: adjust to new ARGV.formulae behavior
Since 25aefdd ("don't complain if args are empty"), ARGV.formulae does
not raise an exception; `brew missing` was relying on that to determine
what set of formulae to act on. Fix this, and also a typo.

Fixes Homebrew/homebrew#10617.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-01 18:04:41 -06: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
Adam Vandenberg
e6f8f16183 Formula.rb: update a comment 2012-02-29 21:45:47 -08:00
Adam Vandenberg
d22eed3f16 Add support for Luarocks dependencies. 2012-02-29 20:52:20 -08: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
11953cbcb9 Remove empty directories during uninstall
About time we did this right?
2012-02-29 01:23:49 +00:00
Jack Nagel
6fe29922c8 Set GIT_DIR when staging git clones
Some build scripts want to inspect the git history, e.g. to determine
version strings. Rather than copy the repository into the build tree,
just setting GIT_DIR is enough for things to "just work".

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-02-28 18:35:09 -06: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
Adam Vandenberg
6f762ea2a8 Remove some whitespace here 2012-02-27 21:19:25 -08:00
Max Howell
f3d177a99b Set ACLOCAL_PATH so that things work
This should mean all those formula that pass options to aclocal don't need to anymore, but I'm not risking changing them.
2012-02-27 04:06:39 +00: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
Adam Vandenberg
87686d8610 audit: check sbin too
Apply the 'bin' audit to 'sbin' too, and also complain if subfolders are
installed to either.
2012-02-26 16:33:44 -08:00