* Convert the only existing test (strutils) to googletest.
* Create a test target for vbam-wx-config.
* Add necessary fakes for the test binary.
* Add tests to CI.
A change in GitHub Actions broke our MSVC build flow due to different
toolchains being used at different steps of the build process. While the
upstream issue will eventually be fixed, we need to explicitly specify
the toolchain version for now.
Bug: #1297
Add the NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM env var to the macOS CI as
faudio has not been marked compatible with macOS yet.
Remove FindGettext.cmake as it is a core cmake module that is available
in the versions of cmake we support now.
Add support for nix to MacPackageManagers.cmake and add brew gettext to
CMAKE_IGNORE_PATH when not using brew. Also update the cmake style.
Add faudio, libintl and the System framework to buildInputs in
default.nix.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
* Move CMake dependencies checkout to `cmake/Dependencies.cmake`.
* Disable most dependencies checkout from the `TRANSLATIONS_ONLY` build.
* Remove the debug/translations_only GitHub Action.
Add llvmPackages_latest.clang and bintools to the macOS part of
default.nix for nix, because for some reason the `ar` utility is not
found in GitHub actions right now.
Disable LTO for the macOS action for now, this is a consequence of
recent cmake refactoring and needs to be fixed.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Add a Visual Studio build workflow to the CI, test building using ninja
(msbuild support needs to be fixed) for both 64 and 32 bit.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
Change CI actions to a matrix with cmake options, for both release and
debug builds, with ENABLE_LINK=OFF and ENABLE_SDL=ON configurations, for
all 3 runners.
Also add both g++ and clang++ to the matrix for the Ubuntu runner to
test on clang.
Disable the macOS workflow for now because brew is failing to install
dependencies.
Signed-off-by: Rafael Kitover <rkitover@gmail.com>
* Remove the custom handling for pre-3.1.4 builds on Windows since
both the mingw and msvc builds now use 3.2.
* Remove wxDPIChangedEvent handling, since this triggers a resize,
which has the same effect.
* Implement main/WinMain ourselves, rather than relying on wxWidgets
macros. This allows us to initialize the console earlier in the
process.
* Add an explicit dependency on the manifest file to trigger a link
when it is modified.