Details
Diff Detail
- Repository
- rB Blender
- Branch
- master
- Build Status
Buildable 8799 Build 8799: arc lint + arc unit
Event Timeline
Seems that this patch is missing something to silence the _ff_cfhd_init_vlcs.
Not sure what's the proper way around it though. Some people are using -Wl,-no_compact_unwind, some report crashes in this case and suggest -Wl,-keep_dwarf_unwind -Wl,-no_compact_unwind. Googinling for FFmpeg specific issue shows some results which adds -funwind-tables -fasynchronous-unwind-tables to CFLAGS.
The latter one seems related, and I've tested it. Without any luck, the warning is still there.
I used -Wl,-no_compact_unwind, but maybe that caused the Boost crash I was seeing and -Wl,-keep_dwarf_unwind -Wl,-no_compact_unwind is needed? I don't have my Mac here to test right now.
With -Wl,-no_compact_unwind added PLATFORM_LINKFLAGS I do have abort() in Boost. When I use -Wl,-keep_dwarf_unwind -Wl,-no_compact_unwind there is no linker warning and no abort(). However, it feels slower to link. Could be subjective though. Do you mind testing it on your side?
There is a difference. Before:
$ time ninja real 0m14.185s user 0m11.878s sys 0m1.081s $ du -hs bin/Blender.app/Contents/MacOS/Blender 247M bin/Blender.app/Contents/MacOS/Blender
With -Wl,-keep_dwarf_unwind -Wl,-no_compact_unwind:
$ time ninja real 0m15.882s user 0m12.935s sys 0m1.321s $ du -hs bin/Blender.app/Contents/MacOS/Blender 260M bin/Blender.app/Contents/MacOS/Blender
Maybe we just live with the warning for now.
Or maybe we can fix this in ffmpeg, there has to be something special about that one function that we can avoid.
We decide to just live with the warning for now, we can always updated libavcodec.a later solve it.
Actually, fix for the warning is in D8248: Make deps: Fix stack warning in FFmpeg on macOS.