On 23.01.2021 08:02, Sergey Shinderuk wrote:
I checked the script [1], and it really requires the CLT. Here is the
explanation [2] for this:
There is actually no such requirement. However, there are
formulae that will be forced to build from source if you do not
have the CLT. They can still be built from source with Xcode
only, but because the pre-built bottles are compiled in an
environment that has both Xcode and the CLT installed, there are
some cases where the bottles end up having a hard dependency on
the CLT. A major example is gcc. So installing the CLT may help
you avoid some lengthy source builds.
We ensure that all Homebrew formulae can be built with Xcode.app
alone. Most formulae can be built with just the CLT, and those
that require the full Xcode.app have an explicit depends_on
:xcode => :build. Some users would prefer to use only the CLT
because it's a much smaller download and takes less time to
install and upgrade than Xcode.
In the gcc formula [1]:
# The bottles are built on systems with the CLT installed, and do not
work
# out of the box on Xcode-only systems due to an incorrect sysroot.
pour_bottle? do
reason "The bottle needs the Xcode CLT to be installed."
satisfy { MacOS::CLT.installed? }
end
I guess this is the "xcrun --show-sdk-path" thing we've alredy disccussed :)
[1] https://github.com/Homebrew/homebrew-core/blob/master/Formula/gcc.rb#L36
--
Sergey Shinderuk
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company