shims: enforce usage of Swift-bundled Clang on Linux
Co-authored-by: Mike McQuaid <mike@mikemcquaid.com>
This commit is contained in:
parent
f14fcc810e
commit
414935fb39
1
Library/Homebrew/shims/linux/super/swift
Symbolic link
1
Library/Homebrew/shims/linux/super/swift
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
../../super/swift
|
||||||
@ -79,6 +79,8 @@ class Cmd
|
|||||||
"#{ENV["HOMEBREW_PREFIX"]}/opt/llvm/bin/#{Regexp.last_match(1)}"
|
"#{ENV["HOMEBREW_PREFIX"]}/opt/llvm/bin/#{Regexp.last_match(1)}"
|
||||||
when /\w\+\+(-\d+(\.\d)?)?$/
|
when /\w\+\+(-\d+(\.\d)?)?$/
|
||||||
case ENV["HOMEBREW_CC"]
|
case ENV["HOMEBREW_CC"]
|
||||||
|
when "swift_clang"
|
||||||
|
"#{ENV["HOMEBREW_PREFIX"]}/opt/swift/libexec/bin/clang++"
|
||||||
when /clang/
|
when /clang/
|
||||||
"clang++"
|
"clang++"
|
||||||
when /llvm-gcc/
|
when /llvm-gcc/
|
||||||
@ -91,6 +93,8 @@ class Cmd
|
|||||||
# HOMEBREW_CC regardless of what name under which the tool was invoked.
|
# HOMEBREW_CC regardless of what name under which the tool was invoked.
|
||||||
if ENV["HOMEBREW_CC"] == "llvm_clang"
|
if ENV["HOMEBREW_CC"] == "llvm_clang"
|
||||||
"#{ENV["HOMEBREW_PREFIX"]}/opt/llvm/bin/clang"
|
"#{ENV["HOMEBREW_PREFIX"]}/opt/llvm/bin/clang"
|
||||||
|
elsif ENV["HOMEBREW_CC"] == "swift_clang"
|
||||||
|
"#{ENV["HOMEBREW_PREFIX"]}/opt/swift/libexec/bin/clang"
|
||||||
else
|
else
|
||||||
ENV["HOMEBREW_CC"]
|
ENV["HOMEBREW_CC"]
|
||||||
end
|
end
|
||||||
|
|||||||
15
Library/Homebrew/shims/super/swift
Executable file
15
Library/Homebrew/shims/super/swift
Executable file
@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Ensure we use Swift's clang when performing Swift builds.
|
||||||
|
|
||||||
|
export CC="clang"
|
||||||
|
export CXX="clang++"
|
||||||
|
|
||||||
|
# swift_clang isn't a shim but is used to ensure the cc shim
|
||||||
|
# points to the compiler inside the swift keg
|
||||||
|
export HOMEBREW_CC="swift_clang"
|
||||||
|
export HOMEBREW_CXX="swift_clang++"
|
||||||
|
|
||||||
|
# HOMEBREW_OPT is set by extend/ENV/super.rb
|
||||||
|
# shellcheck disable=SC2154
|
||||||
|
exec "${HOMEBREW_OPT}/swift/bin/swift" "$@"
|
||||||
Loading…
x
Reference in New Issue
Block a user