9 Commits

Author SHA1 Message Date
Jack Nagel
be08993a79 Avoid globals when ivars will do 2013-11-21 17:17:56 -06:00
Jack Nagel
a40a0e1862 Remove some monkeypatches 2013-11-21 17:17:55 -06:00
Jack Nagel
290b58bcc0 ENV strings are already frozen 2013-11-17 22:57:37 -06:00
Jack Nagel
c020950a42 Export HOMEBREW_PREFIX to build environment
Constructing the path relative to a file in the repository is incorrect
on some supported configurations (i.e., the repository is located in a
different place than the prefix).

Closes Homebrew/homebrew#24418.
2013-11-17 22:57:16 -06:00
Max Howell
64927a45ef Restore HOMEBREW_LOG functionality 2012-09-29 09:57:37 -04:00
Max Howell
d0f707f893 Determine SUPERBIN correctly 2012-09-25 11:31:56 -04:00
Max Howell
c076a272ee Work even when RUBYLIB='-'
Apparently setting RUBYLIB to '-' causes the library path to be unset. So we need to set our own library path in our scripts.

Fixes Homebrew/homebrew-versions/#47.
2012-09-24 09:49:54 -04:00
Max Howell
1ae0e93d7e Abort if xcrun -find foo returns superbin/foo
Fixes Homebrew/homebrew#14691.

Rewrite in Ruby to facilitate checking PATHs properly.
2012-09-24 09:49:53 -04:00
Max Howell
65d195dcaa superenv: build-environments that just work
1. A minimal build environment, we don't set CFLAGS, CPPFLAGS, LDFLAGS, etc. the rationale being, the less that is set, the less variables we are introducing that can break builds.
2. A set of scripts that replace cc, ld, etc. and inject the -I, -L, etc. flags we need into the args passed to the build-tools.

Because we now have complete control over compiler instantiations we do a variety of clean-up tasks, like removing bad flags, enforcing universal builds and ensuring makefiles don't try to change the order of library and include paths from ones that work to ones that don't.

The previous ENV-system is still available when --env=std is specified.

superenv applies to Xcode >= 4.3 only currently.
2012-08-29 12:41:34 -04:00