Mute/unmute option when game windowis in background relies on settings
being updates. This happens when users leaves Options screen. This
commit adds saving audio settings on each change.
This is a fix for #1315
Moved most of the variables to targets in the main src.
Made libraries in repo export targets.
Refactor STATIC flags a little and add more.
This commit definitely breaks a lot of things like tests
but the main game builds at least with MSVC.
Make them export targets instead of variables.
Some platforms need libintl, abstract it to a Find*.cmake module.
Static linking requires linking to dependencies of dependencies (it is
as horrific as it sounds). This commit handles this only for libsndfile.
SDL2_image and SDL2_ttf probably also have some hidden dependencies.
FindGLEW module is now bundled with CMake, hence it is deleted.
Added Copyright.txt since some modules are taken from CMake.
`make update-pot` only works if a generator producing Makefiles was
used with `cmake`. The `cmake` command to build a specific target
will work for any generator.
Fixes the `'\1' is not recognized as an internal or external command`
error when trying to run the target `update-pot` with MSBuild.
The `|` characters probably messed with cmd.exe or PowerShell syntax
rules so they were replaced with slashes `/`.
Also, at least some implementations of sed for Windows would produce
CRLF line endings instead of LF line endings. The issue is fixed by
adding the flag `-b`.
It's free, so why not?
This also partially deprecates the Docker container used for building -
now it's used only for MXE builds (because building MXE takes way too
long to do it inside the action)
This is pretty much a straight port of our Jenkinsfile to GitHub
Actions. It could use some modernization in a few places, but it should
work for now.
Note that I left the Jenkinsfile for now - we'll be using them both
until we are sure that the GitHub Actions version is stable.