diff options
| author | Mike McQuaid | 2016-08-19 16:19:56 +0100 |
|---|---|---|
| committer | GitHub | 2016-08-19 16:19:56 +0100 |
| commit | 893c80d3ba4aaacba640a7b3a8234e755721ad3f (patch) | |
| tree | 280859916dc9eb575af1cc50335e64de4c958a37 /Library | |
| parent | 721b218fd2eb6b4cced4ee09e8a02c725cb77754 (diff) | |
| parent | 9c7f24b84aea4ae1b465afa41445385ada4f2ffb (diff) | |
| download | brew-893c80d3ba4aaacba640a7b3a8234e755721ad3f.tar.bz2 | |
Merge pull request #741 from tdsmith/weak-imports-opt-in
Add permit_weak_imports directive
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/extend/ENV/shared.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/extend/ENV/super.rb | 1 | ||||
| -rw-r--r-- | Library/Homebrew/extend/os/mac/extend/ENV/std.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/extend/os/mac/extend/ENV/super.rb | 4 |
4 files changed, 11 insertions, 0 deletions
diff --git a/Library/Homebrew/extend/ENV/shared.rb b/Library/Homebrew/extend/ENV/shared.rb index c253942ac..c3bd9830a 100644 --- a/Library/Homebrew/extend/ENV/shared.rb +++ b/Library/Homebrew/extend/ENV/shared.rb @@ -293,6 +293,8 @@ module SharedEnvExtension def permit_arch_flags; end + def permit_weak_imports; end + private def cc=(val) diff --git a/Library/Homebrew/extend/ENV/super.rb b/Library/Homebrew/extend/ENV/super.rb index ff7e5b475..7361dba0b 100644 --- a/Library/Homebrew/extend/ENV/super.rb +++ b/Library/Homebrew/extend/ENV/super.rb @@ -78,6 +78,7 @@ module Superenv # g - Enable "-stdlib=libc++" for clang. # h - Enable "-stdlib=libstdc++" for clang. # K - Don't strip -arch <arch>, -m32, or -m64 + # w - Pass -no_weak_imports to the linker # # On 10.8 and newer, these flags will also be present: # s - apply fix for sed's Unicode support diff --git a/Library/Homebrew/extend/os/mac/extend/ENV/std.rb b/Library/Homebrew/extend/os/mac/extend/ENV/std.rb index d9cabc50e..21c375a76 100644 --- a/Library/Homebrew/extend/os/mac/extend/ENV/std.rb +++ b/Library/Homebrew/extend/os/mac/extend/ENV/std.rb @@ -146,4 +146,8 @@ module Stdenv append "CFLAGS", "-I#{MacOS::X11.include}" unless MacOS::CLT.installed? end + + def permit_weak_imports + remove "LDFLAGS", "-Wl,-no_weak_imports" + end end diff --git a/Library/Homebrew/extend/os/mac/extend/ENV/super.rb b/Library/Homebrew/extend/os/mac/extend/ENV/super.rb index e482020e8..188008b1f 100644 --- a/Library/Homebrew/extend/os/mac/extend/ENV/super.rb +++ b/Library/Homebrew/extend/os/mac/extend/ENV/super.rb @@ -107,6 +107,10 @@ module Superenv ENV.x11 = MacOS::X11.installed? end + def permit_weak_imports + remove "HOMEBREW_CCCFG", "w" + end + # These methods are no longer necessary under superenv, but are needed to # maintain an interface compatible with stdenv. alias_method :macosxsdk, :noop |
