16336 Commits

Author SHA1 Message Date
Stephan Zeissler
b49fa78f96 Change sdk detection to same syntax used elsewhere.
This wasn't working for me on leopard with ruby 1.9.2.

Closes Homebrew/homebrew#14636.

Signed-off-by: Adam Vandenberg <flangy@gmail.com>
2012-09-02 11:05:03 -07:00
Adam Vandenberg
31d70b5c33 Fix the name because adamv doesn't know what he's doing. 2012-09-01 19:01:56 -07:00
Adam Vandenberg
788b556a3e bless alanthing/homebrew-apachemod
Add external tap to default search path, and recommend it for packaging
Apache Modules.
2012-09-01 18:51:39 -07:00
Jack Nagel
8c55acacb4 brew list -v means verbose, not versions
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-09-01 13:28:30 -05:00
Adam Vandenberg
e0cff10be5 Update build failure message.
Have been seeing reports with only the config.log, so change this message.
2012-09-01 09:29:45 -07:00
Max Howell
fd0a5419a9 Blacklist graphviz: don't use superenv
Mysterious link errors due to two missing symbols are too mysterious for me. For now, blacklist.

Fixes Homebrew/homebrew#14566.
2012-09-01 00:27:52 -04:00
Max Howell
429226d562 Hack so that ENV['CFLAGS'] += "foo" always works
So many formula assume CFLAGS etc. are not nil. One fix would be to set them to "" but this would set them in the environment, and that could have consequences for build-scripts. This hack works but with a (hopefully) small caveat.

Fixes Homebrew/homebrew#14580.
2012-08-31 23:45:10 -04:00
Max Howell
3935a34048 brew -c1 one line configuration summary
At your option: `brew --config -1`.
2012-08-31 15:48:48 -04:00
Max Howell
8a9073fa42 Set VERBOSE and HOMEBREW_LOG in brew sh 2012-08-31 14:12:28 -04:00
Max Howell
30b53cf92a Cram GL headers and includes into superenv
Fixes Homebrew/homebrew#14554.

We justify doing this because pre 10.8 X11 came with GL for all Homebrew-capable systems and as such is a default that we'd prefer not to have to address.
2012-08-31 14:12:28 -04:00
Max Howell
9b01e7cd28 Fixes Homebrew/homebrew#14594; superenv recursively finds X11 req 2012-08-31 13:29:46 -04:00
Max Howell
f6ded076df superenv fix for broken 10.8 apr-1-config
serf requires you to explicitly tell it where to find the supertool because otherwise it has a hardcoded /usr/bin/apr-1-config (:P), ctail however is sensible and searches the PATH so now it's as though we do nothing special in that formula. Nice.
2012-08-31 13:29:45 -04:00
Max Howell
ae17944e06 Raise if sdk_path is nil for nclt
This situation should be impossible now (in that, we should detect sdk_path provided we also detected nclt), so if it happens somehow raise in such a way that the user will be encouraged to report the bug.
2012-08-31 10:27:07 -04:00
Max Howell
6c6e82a721 Set VERBOSE if --verbose
You tend to get more useful build output this way, and (more importantly?), superenv itself only outputs certain things if VERBOSE is set.
2012-08-31 10:22:11 -04:00
Max Howell
b98c4792d0 Doctor check for unlicensed Xcode
Checking the license text is probably the most future proofed method. Though for future reference other possible methods are listed in the below ticket.

Closes Homebrew/homebrew#14558.
2012-08-31 10:22:11 -04:00
Max Howell
1555436f70 MacOS.sdk_path is unlicensed Xcode aware
Now we should get an sdk_path, but tools like xcodebuild, xcode-select and xcrun will still error out. But at least more of Homebrew will work.

Also putting the Xcode 3 path finder last. We get bug reports because newer Xcodes are installed in parallel to older Xcodes. We want to find and use the newer Xcode's first. Xcode.prefix is pretty smart about that.

Refs Homebrew/homebrew#14558.
2012-08-31 10:22:11 -04:00
Max Howell
d39b7b6b99 brew --env puts HOMEBREW_SDKROOT 2012-08-31 10:22:10 -04:00
Max Howell
05c708b9fc Revert the user-PATH fix
User paths might have anything in them, anything can break builds.

Instead special case these two formula with the view to having an eventual DSL to allow injection of user paths into superenv. Certainly defaulting to off.
2012-08-31 10:22:10 -04:00
Max Howell
113ed85e8d More brew irb examples 2012-08-31 10:22:10 -04:00
Max Howell
04173d55c2 Hide --disable-debug from non verbose output also 2012-08-31 10:22:09 -04:00
Max Howell
e7c05f558b String.f convenience function for brew irb
eg. "ack".f
2012-08-30 22:54:45 -04:00
Jack Nagel
20fdc5cd2f Simplify brew outdated even further
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-30 20:39:46 -05:00
Max Howell
d4503b1202 Fixes Homebrew/homebrew#14542; ocaml superenv issues
This patch removes most of the settings for CC, CXX etc. because we are trying to be minimal. Then we force the compiler to Homebrew's choice underneath in superenv. We however leave LD because we prefer that build-systems use the c-compiler for linking, it generally works better (copiously tested), however when the build-system explicitly calls ld, we respect that. This gets around the ocaml bug in question, since somehow clang was crashing during link, but the ld tool itself (which is kind of clang, kind of llvm-gcc) is okay with this.

Also moved the setting of O (so that cc-args are refurbished) into a make wrapper. Not sure if this matter much, but seems more consistent.
2012-08-30 20:02:29 -04:00
Jack Nagel
a4ccf68602 superenv: look for pc files under prefix, not repository
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-30 16:08:24 -05:00
Max Howell
ea12f340e7 Put user's PATHs at end of superenv PATH
Making sure to remove X11, should be safe if this order is kept.

Refs Homebrew/homebrew#14519.
Fixes Homebrew/homebrew#14544.
2012-08-30 09:45:33 -04:00
Jack Nagel
be8827d8a4 tests: avoid unnecessary chdir
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-30 00:10:02 -05:00
Max Howell
fc9b18c291 Don't catch build errors 2012-08-29 22:25:29 -04:00
Max Howell
3fbe631b02 Block form of chdir can only be used once
If you nest them, the library complains. So let's not do that.

/cc @jacknagel
2012-08-29 19:49:11 -04:00
Max Howell
e1ff17ed75 Force Wine to use stdenv for now
Fixes Homebrew/homebrew#14535.
2012-08-29 19:49:10 -04:00
Jack Nagel
b7bdd2f578 tests: support "rake rcov" if rcov is installed
If the rcov gem is installed, `rake rcov` will generate a test coverage
report in the coverage directory.

I picked rcov because it is 1.8 compatible. But it could easily be
swapped out for another coverage tool.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-29 15:56:36 -05:00
Jack Nagel
8abfee7d9c tests: adjust expectations for 'opt' directory
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2012-08-29 15:37:58 -05:00
Max Howell
5790f4b523 Display skip-clean warning only before clean
Not anytime the formula loads.
2012-08-29 15:43:28 -04:00
Max Howell
a7946e0088 Warn about removed warnings less shockingly
The problem here now is though that the warnings only appear when compiling verbosely. But they should thus be visible if the build fails. Or if people are hunting for problems.
2012-08-29 15:19:42 -04:00
Max Howell
466a240bbe Fixes Homebrew/homebrew#14528; undefined vars.
Due to copy/pasta.
2012-08-29 14:54:07 -04:00
Max Howell
491be4fa89 Typo
Not sure how I forgot to test that.
2012-08-29 14:52:00 -04:00
Max Howell
096ba6c17c Don't fail pre-Xcode 4.3
Refs Homebrew/homebrew#14392.
2012-08-29 14:49:03 -04:00
Max Howell
95164a5d46 Use fortran from std-env in superenv
Fixes Homebrew/homebrew#14524.
2012-08-29 14:45:04 -04:00
Max Howell
4feb8e1cb4 Deprecate skip_clean :all
This was mostly used to prevent stripping. Now we don't strip. Force formula to remove this setting or be more specific about folders they don't want pruned.
2012-08-29 14:45:04 -04:00
Adam Vandenberg
1eb808c109 Homebrew 0.9.3 for superenv 2012-08-29 10:08:46 -07:00
Max Howell
bdd6193587 brew sh: a shell with superenv loaded
If you need to build software on OS X by hand, a brew shell is the way to do it.

Closes Homebrew/homebrew#14381.
2012-08-29 12:41:38 -04:00
Max Howell
a360a41472 superenv only adds X11 paths if required
Since we are moving towards only depending on X11 for X-headers, superenv now doesn't automatically add X11 compilation. I was reluctant to do this, but it is the right thing to do now that X11 is not automatically installed by OS X or Xcode.

I didn't implement ENV.x11 because the order that the X headers are inserted is important. It must be done at initial setup to ensure that brewed versions of e.g. freetype and Cairo are used and not the ones installed by XQuartz.
2012-08-29 12:41:37 -04:00
Max Howell
b834027b17 Doctor suggest git clean -f if unstaged files
This is safe, I tested various scenarios, including Homebrew installed in ~. The only files that are removed are unexpected files in Homebrew's already managed directories.
2012-08-29 12:41:37 -04:00
Max Howell
7d8954d74c Warn user if they set CFLAGS, etc. with superenv
Since we remove some CFLAGS under their noses, this would otherwise be quite confusing.

Notably, this will now trigger in numerous formula. Sucks.
2012-08-29 12:41:37 -04:00
Max Howell
24bcc694e5 Speed up brew instantiation
Adding MacOS.dev_tools_path to our PATH was slow. We no longer need to do this because of the previous commit making a script wrapper for git and svn. It was slow because the function calls out to lots of slow utilities to determine this path.
2012-08-29 12:41:36 -04:00
Max Howell
672388d4f7 Always find git and svn without trying hard
Two wrapper scripts that find git and svn using the ENV variables we support and then searching through the PATH and looking inside Xcode.app if necessary.

Now just calling git or svn in Homebrew code will find and exec the right tool and we can stop fussing.

Apologies to @adamv who is probably unimpressed that the cmds directory has non-commands in it now. If it's consolation these are temporary pending some more work on superenv whereby some more directories are created under the superenv root.
2012-08-29 12:41:36 -04:00
Max Howell
0efd1b9efe Attempt to fix opt link if absent
This is mainly to prevent errors when users for the transitionary period where most installed kegs do not have an opt link.
2012-08-29 12:41:36 -04:00
Max Howell
d89b3272f4 Ensure mktemp cleans up after itself
Ignore interrupts.
2012-08-29 12:41:36 -04:00
Max Howell
336c4d1b05 If installed but not linked, say so
Rationale: if ack is unlinked but installed, typing ack does nothing, but then user tries to install and it says it is already installed. What gives? The user thinks.

Formula ending up unlinked can happen due to failures during the link phase and we recommend unlinking formula for conflicts. So common enough to justify this amendment.
2012-08-29 12:41:35 -04:00
Max Howell
20ce16a3ff Much better CTRL-C handling
Let's not show weird error messages when user interrupts during various stages of brew initialization.

Tested by doing `for x in $(brew search); do brew install $x; done` and pressing CTRL-C at random short intervals.
2012-08-29 12:41:35 -04:00
Max Howell
fb8c7e0aaf Allow eg. brew --env libxml2
Example useful usage:

    eval $(brew --env gettext) && clang -Wl,-t -lssl 2>/dev/null
2012-08-29 12:41:35 -04:00