197 Commits

Author SHA1 Message Date
BrewTestBot
13d544e11e Core files style updates.
Closes Homebrew/homebrew#42354.

Signed-off-by: Mike McQuaid <mike@mikemcquaid.com>
2015-08-03 13:22:35 +01:00
Jack Nagel
1bba5fd88a Pass full match to warn_about_non_apple_gcc 2015-06-21 21:18:23 -04:00
Jack Nagel
7edf3c88f6 Pass formula objects, not strings, into the build environment 2015-06-18 23:13:48 -04:00
Jack Nagel
aad4ed7faa Undocument return value of ENV.deparallelize
It's not clear whether it returns MAKEFLAGS with or without -j<n>, and
neither is particularly useful behavior, given you can easily get the
exact value by calling ENV["MAKEFLAGS"]. So let's not commit to this
API.
2015-06-12 20:14:07 -04:00
Ryan Hendrickson
798711cade Use canonical representation of the superenv bin directory
The xcrun script should be skipping the ENV directory when it scans
$PATH looking for tools to run. Unfortunately, the script compares the
paths found to the real path of the ENV directory (following symlinks),
but superenv was adding the nominal path to $PATH, not following
symlinks. As a consequence, platforms with Xcode < 4.3 would get into
infinite loops when trying to call non-system versions of gcc, as xcrun
calls the ENV version of gcc-X.X which calls xcrun and so on forever.

This commit changes superenv to follow symlinks when determining the bin
path to use.

Fixes Homebrew/homebrew#33731.
Closes Homebrew/homebrew#40062.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2015-05-25 22:01:12 -04:00
なつき
3649b31765 ENV: Add gcc-5 to compilers support C++11
Closes Homebrew/homebrew#39758.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2015-05-16 11:16:55 -04:00
Misty De Meo
f5d6d80d5b ENV.deparallelize: add block form for temporary change
Closes Homebrew/homebrew#39026.
2015-04-25 12:45:31 -07:00
Jack Nagel
2fb9890e07 Don't use deprecated API 2015-04-20 20:49:55 -04:00
Tim D. Smith
af57cffeb0 work around missing __debug header in Xcode CLT 6.3
uses the LLVM 3.6 debug header from:
http://reviews.llvm.org/diffusion/L/browse/libcxx/tags/RELEASE_360/final/include/__debug

Workaround for Homebrew/homebrew#38514.

Closes Homebrew/homebrew#38735.
2015-04-19 13:41:26 -07:00
Jack Nagel
f438af9915 Don't prune cellar paths when cellar is in /opt
Fixes Homebrew/homebrew#35382.
2015-02-07 13:54:33 -05:00
Jack Nagel
a955665102 Preserve backtrace from original exception 2014-12-29 15:23:01 -05:00
Jack Nagel
cb09660516 Always set sysroot for Xcode-only systems
Fixes Homebrew/homebrew#33431.
2014-10-29 11:03:54 -05:00
Jack Nagel
662f887e9a Call reset in the superclass implementation of setup_build_environment 2014-09-18 16:44:20 -05:00
Jack Nagel
c5f2f6b539 Make --cc override the compiler selector 2014-09-18 15:50:54 -05:00
Jack Nagel
1c5995776f The build environment should only deal with strings 2014-09-11 16:50:56 -05:00
Jack Nagel
b0c1e5f7d6 Fix redefinition of x11 reader method in superenv 2014-08-24 14:32:10 -05:00
Camillo Lugaresi
4001c6f8f1 stop Xcode tools from overriding deps when CLT is not installed
Closes Homebrew/homebrew#30641.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-07-03 16:25:59 -05:00
Shaun Jackman
42c20b0979 Move the compiler-selecting methods to ENV/shared
Closes Homebrew/homebrew#30210.

Signed-off-by: Jack Nagel <jacknagel@gmail.com>
2014-06-22 18:30:15 -05:00
Jack Nagel
191e588212 Stop caching Superenv.bin
It is not a hotspot and causes an ordering dependency in the tests.
2014-06-10 17:50:33 -05:00
Jack Nagel
c90247aa44 Place X11 ahead of OpenGL when X11 is active
Fixes Homebrew/homebrew#29651.
2014-05-28 09:23:36 -05:00
Jack Nagel
6eb220d78f Share code for sanitizing ENV between both build environments 2014-05-26 14:10:24 -05:00
Jack Nagel
d69be7f619 Add ENV.m64 to superenv 2014-05-22 09:18:34 -05:00
Jack Nagel
d61615890f Fix ENV.m32 under superenv 2014-05-22 09:18:34 -05:00
Jack Nagel
b894d6e246 Set sysroot for non-clang compilers on 10.9
Although the correct sysroot is built into Apple's tools on 10.9, we
need to continue setting it for custom compilers.
2014-05-19 14:41:03 -05:00
Jack Nagel
613292e3ce Reorganize superenv include and library path setup
I found the dual use of CMAKE_*_PATH variables to make it difficult to
reason about this code. Now a separate set of variables are used to
communicate with the cc wrapper, and less work is performed in the
wrapper itself.

We no longer pass the SDK include path as a -isystem directory on
Xcode-only setups. Doing so is redundant with `--sysroot` and has other
side effects, namely changing the include path search order, which can
break compilation of some software (e.g. qemu).

On Xcode-only 10.9, we can additionally omit `--sysroot`, as the correct
paths are built into the tools.

A new variable, HOMEBREW_SYSROOT, is used to this information to the
wrapper. It will be unset on Xcode-only 10.9. HOMEBREW_SDKROOT will
continue to be set, as it is used for other things besides setting the
include search path.
2014-05-19 14:41:02 -05:00
Jack Nagel
930cf4c768 Add accessor for HOMEBREW_CC 2014-05-18 14:34:31 -05:00
Jack Nagel
858da0063d Allow disabling arch flag filtering
Closes Homebrew/homebrew#17352.
2014-05-14 00:00:59 -05:00
Jack Nagel
230161c1de Use a case statement 2014-05-13 16:23:12 -05:00
Jack Nagel
cb873d0833 Check value of compiler rather than HOMEBREW_CC 2014-05-13 16:22:57 -05:00
Jack Nagel
2716ed6d26 Make cc=/cxx= set HOMEBREW_CC in superenv 2014-05-13 16:20:30 -05:00
Jack Nagel
c03483b6a8 Remove legacy ENV accessor hack 2014-05-13 12:50:30 -05:00
Jack Nagel
278d9dfdb4 self, not ENV 2014-05-13 12:48:27 -05:00
Jack Nagel
deb65a959d Use a case statement 2014-05-13 12:14:51 -05:00
Jack Nagel
002cb64774 Make sure the path arrays only contain strings 2014-05-13 12:14:51 -05:00
Jack Nagel
9fc5a543d5 No need to augment path on Xcode-only 10.9 2014-05-13 11:28:44 -05:00
Jack Nagel
43d9640cb6 Move method to prepare for future changes 2014-05-13 11:28:44 -05:00
Jack Nagel
ff25f7ecf7 Future-proof this conditional 2014-05-13 11:26:21 -05:00
Jack Nagel
ff9191eca2 clean up X11 conditionals 2014-05-12 11:45:50 -05:00
Jack Nagel
5f94742afb Ensure HOMEBREW_ARCHFLAGS is always a string 2014-05-10 16:54:30 -05:00
Jack Nagel
089af6627a Always use stub tools in /usr/bin on 10.9 2014-05-08 17:24:48 -05:00
Jack Nagel
71055aa073 Move xctoolchain_path to Xcode module, where it belongs 2014-05-01 18:36:46 -05:00
Misty De Meo
48cd833a15 Superenv: determine_optflags should return a string
This is saved in HOMEBREW_OPTFLAGS and later mutated by
ENV.universal_binary, so if this returns nil the sub will fail.
2014-04-30 08:21:54 -07:00
Jack Nagel
6a2fa253cd Make ENV.O4 a no-op
On older Apple compilers "-O4" is known to cause build errors. On recent
clang, it's the same as "-O3" and you have to pass "-O3 -flto" to get
the old behavior.
2014-04-29 00:09:07 -05:00
Mike McQuaid
55d277c335 Support core GCC formula as a GCC compiler.
It is activated by the same mechanism as the Homebrew/versions compilers
which now check if the GCC formula uses the same, correct version.

References Homebrew/homebrew#28418.
2014-04-23 08:10:48 +01:00
Jack Nagel
6cdc76452b Only directories are candidates for superenv bin 2014-04-22 15:39:59 -05:00
Jack Nagel
dd8dc7a380 Remove obsolete DEVELOPER_DIR hacks
These days Homebrew refuses to do anything if the xcode-select path is
busted, so this workaround is unnecessary.
2014-04-20 16:33:41 -05:00
Misty De Meo
0ec7e39287 Add ENV.refurbish_args helper
Rationale: our arg refurbishment is normally only turned on when
called via the `make` wrapper, for compatibility reasons. However,
there are numberous places we'd like this to be turned on elsewhere,
like software that builds via `python setup.py` where bad flags from
the system python can be pulled in.

This helper appends 'O' to CCCFG, which enables refurbishment for
all calls of the compiler shims.
2014-03-28 17:02:14 -07:00
Mike McQuaid
3b0eef09e9 Remove unnecessary swearing. 2014-03-22 10:14:20 +00:00
Mike McQuaid
f155b0570e Revert "ENV: request no byte code Python when bottling."
This reverts commit b603c96276cf7fe1417d2355eebc47fb15da0b8c.
2014-03-08 00:04:30 +00:00
Mike McQuaid
536430e0ae ENV: request no byte code Python when bottling. 2014-03-02 02:08:59 +00:00