Build files assume host_system is 'darwin' when cross-compiling to iOS
So, the current situation in Meson is that the only
host_machine.system() values specified are for native compilation. When cross-compiling, the cross files can specify anything. This means that some people use
system = 'darwin' and others (like cerbero) use
system = 'ios' in the cross file.
This is, obviously, a very shitty situation.
Why am I filing it here? Well, we check for
host_system == 'ios' in all gstreamer code, and in glib, but not in libffi. The only thing this changes is:
--- _builddir-host_system=darwin/fficonfig.h +++ _builddir-host_system=ios/fficonfig.h @@ -10,7 +10,7 @@ /* #undef FFI_DEBUG */ /* Cannot use PROT_EXEC on this target, so, we revert to alternative means */ -#define FFI_EXEC_TRAMPOLINE_TABLE 1 +#define FFI_EXEC_TRAMPOLINE_TABLE 0 /* Define this if you want to enable pax emulated trampolines */ /* #undef FFI_MMAP_EXEC_EMUTRAMP_PAX */
1 when it's
darwin. Now I'm not sure if we should change this or not, so I'm filing an issue so we can deal with it later. Perhaps after we sync with upstream.