This makes it quicker and easier to build multilib + multiarch variants
of the library without having to compile the larget host-arch specific
daemon. This is required for using the automatic LD_PRELOAD module with
older 32-bit games on a 64-bit host, to ensure they all have access to
the library.
Signed-off-by: Ikey Doherty <ikey@solus-project.com>
This ensures we use the architecture independent path in the environment
variable, allowing multiarch + multilib system paths to be respected.
Signed-off-by: Ikey Doherty <ikey@solus-project.com>
This also explicitly constructs reusable library components to make it
easier to extend the project over time. Notably we make less assumptions
about the host system and use pkgconfig where appropriate to give us
system details, such as the systemd system unit directory for packaging.
This can be overriden with the meson option.
Signed-off-by: Ikey Doherty <ikey@solus-project.com>
This is a slightly modified version of Ikey's format for usysconf found here: https://github.com/solus-project/usysconf/blob/master/.clang-format
Modifications are to change to tab indentation, and tab/indent widths of 4
You'll never please everyone, but I find tabs for indentation is the most pragmatic approach to keeping most people happy about indent length arguments.
This is a small daemon/libary to enable games to request a
performance "game mode" from the system.
Currently only implemented to upgrade the CPU governor and
automatically downgrade it once done.
A game only needs to load libgamemodeauto to activate the request.
Which means an LD_PRELOAD can be applied to any game to activate
the mode as needed.
However gamemode_client.h can be used to manually activate/deactivate
the mode as needed, and also perform error checking.
The libs are miminal loaders to call into an installed libgamemode
which, if the daemon is installed and running, will send through
the equivelant game mode request, and magic will happen.
See the README.md for more details.
Currently licensed under the BSD 3 clause license.