Removes dependence on undermaintained luasocket and luasec libraries.
As an additional benefit, update checks can now be disabled at build
time for distros that would prefer not to show it.
Adds support for independently versioning different vcpkg
dependendencies, better binary cache support, and external registries
for specific ports which are now used instead of forking for ffmpeg and
sdl2_mixer.
If you previously built using USE_VCPKG_DEPS you need to migrate
to the new build method.
1. Delete your CorsixTH/vcpkg directory.
2. Delete your build directory
3. Download and install vcpkg following the instructions at:
https://learn.microsoft.com/en-us/vcpkg/get_started/get-started
4. Run `cmake --prefix dev`
5. Open the visual studio project for your new build directory at
`./build/dev`
The biggest change is the bump from SDL2_mixer 2.0.4 to 2.6.1
flac, ogg vorbis, and mp3 support are now all built in without
extra libraries.
There is now a fluidsynth option for sdl2_mixer in vcpkg, but
this commit does not enable it.
* Make app:fixConfig and app:fixHotkeys use defaults
Currently, the `app:fixConfig` and `app:fixHotkeys` functions were using the config.txt values as default.
This patch now points them to actually use the default values in our lua files.
SDL_mixer now requires dynamic_load unless building statically, and no
longer brings over the dynamic libraries it depends on automatically.
Visual Studio 2019 defaults to x64 instead of x86.
Vcpkg is available on more versions of Visual Studio, as well as Linux
and MacOS these days, though our CMake is still not compatible with
using it on non-windows platforms yet.
Adds catch 2 to CMakeLists in a basic form which duplicates all files
across, with an example test to validate it runs correctly
Moves the implementation of CorsixTH into a main executable and a
seperate static lib we can link against for unit testing. This means we
don't have to mess around with deps for unit testing.
Appveyor and travis changes
This commit adds a new script which can be executed on
a Windows machine to build and package the libraries
for CorsixTH. A new folder called vcpkg will be created
in the same folder as the script. The script is
integrated into CMake and run by default when
targetting MSVC.
This regex Lua script test checks that:
1) A class can be outlined by Eclipse's LDT plugin.
2) Mistakes haven't been made in the first statements of a class's
declaration which would prevent its methods from being declared.