[FFmpeg-devel] commits ecee6af8bd and 4ac869ca2a break build for macOS

Christopher Degawa ccom at randomderp.com
Tue Dec 21 03:31:31 EET 2021


On Mon, Dec 20, 2021 at 7:25 PM Aman Karmani <ffmpeg at tmm1.net> wrote:

> On Mon, Dec 20, 2021 at 5:19 PM Christopher Degawa <ccom at randomderp.com>
> wrote:
>
> > On Mon, Dec 20, 2021 at 6:55 PM Aman Karmani <ffmpeg at tmm1.net> wrote:
> >
> > > On Mon, Dec 20, 2021 at 4:52 PM Helmut K. C. Tessarek <
> > > tessarek at evermeet.cx>
> > > wrote:
> > >
> > > > -----BEGIN PGP SIGNED MESSAGE-----
> > > > Hash: SHA512
> > > >
> > > >
> > > >
> > > > On 2021-12-20 19:38, Aman Karmani wrote:
> > > > > Could you share the output of `xcrun metal -v`
> > > >
> > > > $ xcrun metal -v
> > > > Apple LLVM version 902.9 (metalfe-902.9.61)
> > > > Target: air64-apple-darwin18.7.0
> > > > Thread model: posix
> > > > InstalledDir:
> > > >
> > > >
> > >
> >
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain
> > > > /usr/metal/ios/bin
> > > >
> > >
> > > I am able to get the ios binary too, but only when I request is
> > explicitly
> > > as follows:
> > >
> > > $ xcrun -sdk $(xcodebuild -sdk iphoneos -version Path) metal -v
> > >
> > > Apple metal version 31001.325 (metalfe-31001.325)
> > > Target: air64-apple-darwin20.6.0
> > > Thread model: posix
> > > InstalledDir:
> > >
> > >
> >
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/metal/ios/bin
> > >
> > >
> >
> > Running `xcrun -sdk $(xcodebuild -sdk macosx -version Path) metal
> > libavfilter/metal/vf_yadif_videotoolbox.metal -o
> > libavfilter/metal/vf_yadif_videotoolbox.metal.air` does indeed compile
> > properly and properly shows macos
> >
>
> Great, thanks for the confirmation!
>
>
> >
> > xcrun -sdk $(xcodebuild -sdk macosx -version Path) metal -v
> > Apple LLVM version 31001.143 (metalfe-31001.143)
> > Target: air64-apple-darwin19.6.0
> > Thread model: posix
> > InstalledDir:
> >
> >
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/metal/macos/bin
> >
> > and I can indeed have FFmpeg configure and make with `./configure
> > --metalcc="xcrun -sdk $(xcodebuild -sdk macosx -version Path) metal"`,
> but
> > that would sorta ruin the whole idea of being able to simply clone and
> > ./configure and make.
> >
>
> Cool, that's also good to hear.
>
> Does this work for you?
>
> $ xcrun --sdk macosx metal -v
>
> If so, then perhaps this patch is enough?
>
> diff --git a/configure b/configure
> index d9d41b2273..c4a59e0e3f 100755
> --- a/configure
> +++ b/configure
> @@ -3842,8 +3842,8 @@ host_cc_default="gcc"
>  doxygen_default="doxygen"
>  install="install"
>  ln_s_default="ln -s -f"
> -metalcc_default="xcrun metal"
> -metallib_default="xcrun metallib"
> +metalcc_default="xcrun --sdk macosx metal"
> +metallib_default="xcrun --sdk macosx metallib"
>  nm_default="nm -g"
>  pkg_config_default=pkg-config
>  ranlib_default="ranlib"
>
>
>
xcrun --sdk macosx metal -v
Apple LLVM version 31001.143 (metalfe-31001.143)
Target: air64-apple-darwin19.6.0
Thread model: posix
InstalledDir:
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/metal/macos/bin

That does seem to work indeed

make
xcrun --sdk macosx metal libavfilter/metal/vf_yadif_videotoolbox.metal -o
libavfilter/metal/vf_yadif_videotoolbox.metal.air
xcrun --sdk macosx metallib --split-module-without-linking
libavfilter/metal/vf_yadif_videotoolbox.metal.air -o
libavfilter/metal/vf_yadif_videotoolbox.metallib
BIN2C   libavfilter/metal/vf_yadif_videotoolbox.metallib.c
CC      libavfilter/metal/vf_yadif_videotoolbox.metallib.o
AR      libavfilter/libavfilter.a
LD      ffmpeg_g


More information about the ffmpeg-devel mailing list