diff --git a/Library/Homebrew/extend/ENV/shared.rb b/Library/Homebrew/extend/ENV/shared.rb index 13241403cc..79bd280817 100644 --- a/Library/Homebrew/extend/ENV/shared.rb +++ b/Library/Homebrew/extend/ENV/shared.rb @@ -306,4 +306,10 @@ module SharedEnvExtension end end end + + def check_for_compiler_universal_support + if homebrew_cc =~ GNU_GCC_REGEXP + raise "Non-Apple GCC can't build universal binaries" + end + end end diff --git a/Library/Homebrew/extend/ENV/std.rb b/Library/Homebrew/extend/ENV/std.rb index 9b150eae01..8bfc5ce570 100644 --- a/Library/Homebrew/extend/ENV/std.rb +++ b/Library/Homebrew/extend/ENV/std.rb @@ -269,6 +269,8 @@ module Stdenv end def universal_binary + check_for_compiler_universal_support + append_to_cflags Hardware::CPU.universal_archs.as_arch_flags append "LDFLAGS", Hardware::CPU.universal_archs.as_arch_flags diff --git a/Library/Homebrew/extend/ENV/super.rb b/Library/Homebrew/extend/ENV/super.rb index 31000c592f..8c88cf79bf 100644 --- a/Library/Homebrew/extend/ENV/super.rb +++ b/Library/Homebrew/extend/ENV/super.rb @@ -268,6 +268,8 @@ module Superenv end def universal_binary + check_for_compiler_universal_support + self["HOMEBREW_ARCHFLAGS"] = Hardware::CPU.universal_archs.as_arch_flags # GCC doesn't accept "-march" for a 32-bit CPU with "-arch x86_64"