38364 Commits

Author SHA1 Message Date
Max Howell
3f25dd60fa canonical_name can resolve taps 2012-03-16 21:06:15 +00:00
Max Howell
903b1167a6 Prevent tapped symlinks showing up in git status
The symlinks taps write to Formula show up in git status, but this trick prevents this. brew-(un)tap maintain a .gitignore in Formula that contains all the symlinks brew-tap creates.

We add the .gitignore to the root .gitignore and TADA! Magic.
2012-03-16 21:06:15 +00:00
Max Howell
0c7e7ae437 brew tap and brew untap 2012-03-16 21:06:15 +00:00
Max Howell
a42714ce82 Improve CLI tools suggestion doctor text 2012-03-16 01:03:24 +00: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
Max Howell
f1c26eb6e7 Let's print the full path 2012-03-16 00:35:56 +00:00
Max Howell
c28943de7b Tell user to `brew update' if no .git 2012-03-16 00:35:49 +00:00
Max Howell
e0a8ddcd1e Warn about broken symlinks in HOMEBREW_PREFIX
Refs Homebrew/homebrew#10874.
2012-03-16 00:20:49 +00:00
Michael Nygard
74c2fc8279 Remove invalid character for UTF-8
Closes Homebrew/homebrew#10962.

Signed-off-by: Max Howell <max@methylblue.com>
2012-03-15 16:05:04 +00:00
Max Howell
bf1baa3948 Explicitly tell people not to xcode-select /
Fed up dealing with this bug in xcode-select.
2012-03-15 13:19:43 +00:00
Max Howell
544b3c38c8 ohai'ing this is ugly IMO
I wanted to make it possible to not do the additional newline (in brew) if this code path is hit. But I didn't see a way to do it without overriding the Interrupt exception and throwing a new one.

“Never add more code than necessary for aesthetics in error handling.” — mxcl
2012-03-15 13:04:17 +00:00
Max Howell
59436b194d Abort installs if reps are installed but not linked
Except for keg-only reps of course.

I suspect quite a few bug reports we receive are due to this sort of thing.

Ideally we'd not do this check for deps, since they have already been checked. I fear some weird consequences. But this check *should* be done before unlinking the previously installed brew in the case of upgrades. And the ignore_deps flag is set after the initialiser. There are ways round this but the code would be less nice.
2012-03-15 13:02:47 +00:00
Adam Vandenberg
33221835dc brew test now gets a compilation environment 2012-03-13 20:44:40 -05:00
Camillo Lugaresi
c59be1a930 Remove libiconv duplicate
Commit ee2c3ab ("Remove spurious libiconv dependencies") pruned all
existing "depends_on 'libiconv'" usages from Homebrew in preparation for
removing the libiconv dupe itself.

Now that is done, and we can remove and blacklist it. It can be obtained
from Homebrew-alt.

Closes Homebrew/homebrew#10464.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-13 19:38:17 -05:00
Max Howell
6ded0d0cbb Use /Library/Caches/Homebrew
We don't penalise existing users; if ~/Library/Caches/Homebrew already exists and is writable, we select that.

This is the correct choice, the cache should be the same directory whichever user is used and whatever instance of brew is invoked.

The Cache directory is set to 0777 this allows any user to write to it and fixes Homebrew/homebrew#10857.
2012-03-14 00:05:46 +00:00
Jack Nagel
b8edc0cd73 Adjust compat's fails_with_llvm call
handle_llvm_failure was moved into FailsWithLLVM and renamed.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-13 10:07:16 -05:00
Adam Vandenberg
379a9353b0 Quote the .xz path in case of spaces 2012-03-13 06:58:01 -07:00
Adam Vandenberg
e133cba770 brew doctor: check for DYLD_INSERT_LIBRARIES 2012-03-12 21:14:33 -07:00
Adam Vandenberg
5aa6aefa96 Allow multiple digits in GitHub version parts 2012-03-11 14:37:44 -07:00
Jack Nagel
6424cbf0de Update external deps tests
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-11 15:41:45 -05:00
Jack Nagel
8973d1dbcf Remove redundant versions and update version tests
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-11 15:18:56 -05:00
Jack Nagel
5b1957f13a keg: don't skip linking based on relative pathname
ed1a674c ("keg: allow selective linking at the file level") had a
regression which caused the link step to skip files with the same name
as a directory in the user's CWD.

Keg#link_dir yields a relative pathname, so assumptions cannot be made
about the nature of that pathname in the block.

Instead, introduce ":skip_dir" and ":skip_file" to replace the existing
":skip" directive. This way, we won't skip things marked ":skip_dir"
when linking a file, and vice-versa.

Fixes Homebrew/homebrew#10860.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-11 10:18:12 -05:00
Adam Vandenberg
27288547aa Add specialty formulase to inheritance check 2012-03-10 10:26:06 -08:00
Adam Vandenberg
c947dbc580 Use HOMEBREW_REPOSITORY for freshness check
Homebrew itself is found under HOMEBREW_REPOSITORY,
which *may* be the same HOMEBREW_PREFIX, but does not have
to be if you link brew into /usr/local/bin from another location.
2012-03-10 10:08:16 -08:00
Adam Vandenberg
715f808421 roll back stricter version check 2012-03-10 10:02:05 -08:00
Adam Vandenberg
cef5429f93 Use new Requirements code in Homebrew 2012-03-10 09:24:10 -08:00
Adam Vandenberg
fee00469f6 New external dependency implementation. 2012-03-10 09:24:07 -08:00
Mike McQuaid
b86ead91ea Revert "Always build bottles universally."
This reverts commit 72a477f2734939d4c5805247588c4cdea69b5383.
2012-03-10 19:28:46 +13:00
Mike McQuaid
6d940a5bcc Always build bottles universally. 2012-03-10 18:11:12 +13: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
Mike McQuaid
22f908d520 Make brew-bottle an internal command. 2012-03-10 17:57:10 +13:00
Adam Vandenberg
aef580261b Tell the user when build logs are copied 2012-03-09 18:48:23 -08:00
Adam Vandenberg
04088ba96d Do a stricter version check
A version should always be set when going through the constructor
so tighten this check. Also do some style clean ups here.
2012-03-09 18:44:48 -08:00
Charlie Sharpsteen
275d22db9e ENV.rb: Set GCC-style CPU flags for GFortran
GFortran chokes when it is passed CPU flags specific to Clang. This change
ensures the environment variables `FCFLAGS` and `FFLAGS` contain the same CPU
flags that would be set for the GCC compiler.

Fixes Homebrew/homebrew#10424.
Fixes Homebrew/homebrew#10744.

Closes Homebrew/homebrew#10774.

Signed-off-by: Charlie Sharpsteen <source@sharpsteen.net>
2012-03-09 12:14:08 -08:00
Charlie Sharpsteen
55d4f48746 ENV.rb: Generalize method for setting CPU flags
All logic has been copied into a new method `set_cpu_flags` that accepts an
additional argument, `flags`, which contains a list of environment variables
for which the CPU flags are to be adjusted.

`set_cpu_cflags` now recalls `set_cpu_flags` and passes `cflags_flags` as the
first argument.

Signed-off-by: Charlie Sharpsteen <source@sharpsteen.net>
2012-03-09 12:14:05 -08:00
Charlie Sharpsteen
1805e87529 ENV.rb: Modifier methods accept lists of flags
`ENV` methods that modify environment variables, `prepend`, `append` and
`remove`, can now accept lists of flags as well as a single flag.

The list of flags affected by `append_to_cflags` and `remove_from_cflags` are
now definied in a shortcut method `cc_flag_vars`.

Signed-off-by: Charlie Sharpsteen <source@sharpsteen.net>
2012-03-09 12:14:04 -08:00
Jack Nagel
880f566867 Remove unnecessary hyphen
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-09 13:29:56 -06:00
Mike McQuaid
cd13553d59 Remove bad exit status; need to fix another way. 2012-03-10 08:18:42 +13:00
Jack Nagel
d60f4ffcd8 Restore cleaning of lib/charset.alias
Even though we now prevent linking of this file into the prefix in
Keg#link, its presence still triggers a "non-lib in lib" warning during
installation. So keep cleaning it, and leave the check in Keg#link so
things that skip_clean 'lib' still won't have it linked.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-09 12:41:22 -06:00
Jack Nagel
fe25e4f7ec Fix typo in test_arch_for_command
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-03-09 11:50:27 -06:00
Max Howell
981605d199 Don't cleanup the wrong things
This still isn't perfect, but it will handle hyphens in formula-names better now. A proper solution is not easy or maybe even possible unless we ban hyphens in versions AND formula names, or use a different character as a separate in downloaded cache files which we then ban from formula-name and version strings.

Refs Homebrew/homebrew#2923.
2012-03-09 15:25:09 +00:00
Max Howell
fc2cc57ce8 Move install_homebrew into Contributions 2012-03-09 12:25:55 +00:00
Max Howell
7757b57ce2 Merge branch 'installer' 2012-03-09 12:24:17 +00:00
Max Howell
6345ceef1f Update Xcode checks and URLs 2012-03-09 12:17:49 +00:00
Max Howell
a7ac3c539d rm bad-dylibs check, brew doctor does this better 2012-03-09 12:17:36 +00:00
Max Howell
af3e5ad979 Improve messaging for this 0.01% edge case 2012-03-09 12:10:50 +00:00
Max Howell
f37e22838c Encourage usage of the new CLT4Xcode 2012-03-09 12:10:50 +00:00
Max Howell
dfa75f9230 Allow "Press Enter" to be a \r
Some wrapper-tools push \r rather than \n and break the installer.
2012-03-09 12:10:50 +00:00
Max Howell
98ec342ecc Use admin group and not staff
Staff is overly permissive, require user to be an  Administrator to use Homebrew.
2012-03-09 12:10:50 +00:00