This prevents the TOC (table of contents) on PowerPC targets from being
overflowed by the sizes of the files generated by wasm2c. It should also
help improve compilation times. I'll be submitting this patch as a pull
request to WABT later.
POSIX semaphores are available in the standard library, but creation of
unnamed POSIX semaphores always fails, so they're basically useless for
our purposes.
meson.build was previously written in such a way that Ninja did not
actually have to generate git-hash.h before building the source files
that needed it, although Ninja often did do it.
Any relative paths that the game tries to access in libretro builds will
now be relative to whatever is the current working directory in the Ruby
sandbox, which will also now be initialized to the game directory during
initialization. Before, all of the bindings that took paths were
hardcoded to prepend the path with the game directory.
This adds a new driver for audio in libretro builds for devices with
multithreading support that defers audio rendering to a worker thread
provided by the libretro frontend.
The threaded driver has the advantage that video lag will not also cause
the audio to lag, which is very noticeable since it manifests in the
form of audio crackling when it happens.
OpenAL Soft 1.24 introduces a lot of code that doesn't work well with
the PlayStation 3 homebrew toolchain, and also the old version of the
Wii U homebrew toolchain currently used by the libretro buildbot.
Instead of maintaining a bunch of patches to get 1.24 to work on these
toolchains, I think it'd be easier to just use 1.23.
The Vita builds of RetroArch and some libretro cores use these two
flags, supposedly to fix relocation-related bugs.
(cherry picked from commit 3c43cd5747b19bd4d9c0202fec1a68677ddbd5af)
I'd already removed the SDL static libraries from libretro builds for
portability, but kept the headers to make it easier to port the codebase
to libretro. Eventually it was time to stop using the SDL headers as a
crutch.