ENV/super: replace m4 shim with M4 variable
The problem is the shim can end up getting baked into formula binaries (e.g. `flex`) or cause odd issues when mixed up with brew `m4`, e.g. https://github.com/Homebrew/homebrew-core/issues/180040
This commit is contained in:
parent
9c8068793b
commit
99d81b4717
@ -99,6 +99,16 @@ module Superenv
|
|||||||
MacOS::CLT::PKG_PATH
|
MacOS::CLT::PKG_PATH
|
||||||
end
|
end
|
||||||
|
|
||||||
|
# This is a workaround for the missing `m4` in Xcode CLT 15.3, which was
|
||||||
|
# reported in FB13679972. Apple has fixed this in Xcode CLT 16.0.
|
||||||
|
# See https://github.com/Homebrew/homebrew-core/issues/165388
|
||||||
|
if deps.none? { |d| d.name == "m4" } &&
|
||||||
|
MacOS.active_developer_dir == MacOS::CLT::PKG_PATH &&
|
||||||
|
!File.exist?("#{MacOS::CLT::PKG_PATH}/usr/bin/m4") &&
|
||||||
|
(gm4 = DevelopmentTools.locate("gm4").to_s).present?
|
||||||
|
self["M4"] = gm4
|
||||||
|
end
|
||||||
|
|
||||||
generic_setup_build_environment(formula:, cc:, build_bottle:, bottle_arch:,
|
generic_setup_build_environment(formula:, cc:, build_bottle:, bottle_arch:,
|
||||||
testing_formula:, debug_symbols:)
|
testing_formula:, debug_symbols:)
|
||||||
|
|
||||||
|
|||||||
@ -1,19 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# This shim is a workaround for the missing `m4` in Xcode CLT 15.3.
|
|
||||||
# It can be removed after Apple provides a new CLT with a fix for FB13679972.
|
|
||||||
# See https://github.com/Homebrew/homebrew-core/issues/165388
|
|
||||||
|
|
||||||
# HOMEBREW_LIBRARY is set by bin/brew
|
|
||||||
# HOMEBREW_DEVELOPER_DIR is set by extend/ENV/super.rb
|
|
||||||
# shellcheck disable=SC2154
|
|
||||||
source "${HOMEBREW_LIBRARY}/Homebrew/shims/utils.sh"
|
|
||||||
|
|
||||||
try_exec_non_system "${SHIM_FILE}" "$@"
|
|
||||||
|
|
||||||
if [[ -n "${HOMEBREW_DEVELOPER_DIR}" && ! -x "${HOMEBREW_DEVELOPER_DIR}/usr/bin/m4" ]]
|
|
||||||
then
|
|
||||||
safe_exec "/usr/bin/gm4" "$@"
|
|
||||||
fi
|
|
||||||
|
|
||||||
exec "/usr/bin/m4" "$@"
|
|
||||||
Loading…
x
Reference in New Issue
Block a user