* Adds GCC 4.0 version info to --config output.
* Splits gcc_build into gcc_40_build and gcc_42_build.
* Adds alias gcc_build to gcc_42_build for compatibility.
* Updates Xcode checking to also check GCC 4.0 version.
These changes are a combination of work by AdamV and my work
on my Tiger branch. This information would be useful for all
installs since some formulae compile with GCC 4.0.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
* Removed use of String altogether since all use cases
are Arrays currently. YAGNI.
* #max_by would have been more elegant, but this way we
can support 1.8.6.
Signed-off-by: Max Howell <max@methylblue.com>
I made the diff less gratuitous. Don't bloat diffs to meet personal coding style preferences :P
ClosesHomebrew/homebrew#896
Lets stop removing docs and doc (though moving share/docs to share/doc would make sense) as I was being lame when I decided nobody ever needs local documentation.
I still wouldn't use it (the INTRAWEBS is pretty good nowadays), but I admit, for some people, it's essential.
Change 45ce0c963a52293063432674d5c360ebe65254e2 was done in error.
This submit reverts that change (which will go in a future commit.)
I apologize for the inconvenience.
Now makes use of `svn up` to make cache act like
a cache. Externals without a revision specified
are now checked out at HEAD, whereas before they
were ignored. Escaping arguments to backticks.
Making sure main repo is checked out before the
externals.
Kernel#system special-cases the first argument, so you have to
make the first argument the entire command to be invoked, and
subsequent arguments the actual arguments to that command. In
order to use the user's interpreter, the first argument must be
"/usr/bin/env <name>".
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Running `brew cleanup` (with no arguments or multiple arguments) raises
an error and stops as soon as it finds any formula whose most recent
version is not installed.
With this change it will instead print a warning, then continue with the
next formula.
Signed-off-by: Adam Vandenberg <flangy@gmail.com>
Justification:
* LLVM is too immature, it often fails to compile, sometimes irreproducibly
* The performance of the resulting bytecode is often slower than the GCC
equivalent (eg MySQL)
If you want to continue using LLVM you can. Set HOMEBREW_USE_LLVM or brew with
--use-llvm.
We also now use the default compiler for each platform. So GCC 4.2 on Snow and
GCC 4.0 on Leopard. This also means that new formula are more likely to just
work as many over complicated build systems get upset when you mix things up.
I also did a bunch more new research regarding compiler flags. We now set the
right -march for nehalem procs and don't add redundant flags like msse3 (which
is automatically applied for all the -march settings we use).
Reducing the number of cflags will improve the overall reliability of our
platform.
If you have a bunch of symlinks and they all point at one file and you use Pathname.install on them all the error checking would fail if the file was moved before the symlinks because the symlinks would then point at a non existent file.
Running `brew cleanup` (with no arguments or multiple arguments) will
run `brew prune` after _every_ cleaned formula, i.e. possibly after
every installed formula.
With this change it will instead only run `prune` after all formulae are
cleaned, and only when no arguments were given to `cleanup`.
Signed-off-by: Max Howell <max@methylblue.com>
ClosesHomebrew/homebrew#743
* Break single test case class into several test cases.
* Fix broken arch test.
* Make update tests optional (seem to only work for mxcl).
* Add more tests.
* Move fixtures to separate folder.
To existing flag value can be specified with "\\1".
To append values to a flag, call with:
s.change_make_var! "THE_FLAG", "\\1 more-flag-values"
The same trick can be used to prepend or surround values as well.