The hardcoded /usr/share for the sharedData location doesn't respect the given prefix, e.g. ~/.local or /usr/local. This results in the emulator not finding the shaders or databases in case the emulator is not installed under /usr and the files are not found in the application or user data directory.
Now the build script defines a preprocessor constant ARES_PREFIX which is set to the requested prefix. With the help of the C preprocessor stringize operator, this prefix is then used as the root of the sharedData location.
The hardcoded
/usr/share
for the sharedData location doesn't respect the given prefix, e.g.~/.local
or/usr/local
. This results in the emulator not finding the shaders or databases in case the emulator is not installed under/usr
and the files are not found in the application or user data directory.Now the build script defines a preprocessor constant
ARES_PREFIX
which is set to the requested prefix. With the help of the C preprocessor stringize operator, this prefix is then used as the root of the sharedData location.Fixes https://github.com/ares-emulator/ares/issues/1179