mirror of
https://github.com/wesnoth/wesnoth
synced 2025-05-06 20:18:17 +00:00

Instead of creating lots of image::locators and calling a family of similarly-named preferences functions, this refactor encapsulates that logic and uses an enum. The new orb_status files still need adding to the MacOS build. An assert has been added to `unit_drawer`'s constructor. There are two callers - the `display` class guards it with an explicit check before constructing unit_drawer. The `game_display` class doesn't have an explicit check, but it's clear that other code in that class assumes the teams are already valid (and would crash if they weren't).
Building with VS2019
- Install vcpkg.
- Make vcpkg available to Visual Studio with
vcpkg integrate install
(may require admin rights). - Use vcpkg to install all dependencies:
vcpkg install sdl2:x64-windows sdl2-image:x64-windows sdl2-image[libjpeg-turbo]:x64-windows sdl2-mixer:x64-windows sdl2-ttf:x64-windows bzip2:x64-windows zlib:x64-windows pango:x64-windows cairo:x64-windows fontconfig:x64-windows libvorbis:x64-windows libogg:x64-windows boost-filesystem:x64-windows boost-iostreams:x64-windows boost-locale:x64-windows boost-random:x64-windows boost-regex:x64-windows boost-asio:x64-windows boost-program-options:x64-windows boost-system:x64-windows boost-thread:x64-windows boost-bimap:x64-windows boost-multi-array:x64-windows boost-ptr-container:x64-windows boost-logic:x64-windows boost-format:x64-windows
- The above dependencies were taken from the travis-ci script.
- Given the above will be compiling both the release and, as available, the debug versions of all those libraries and their dependencies, this may take an hour or more. The travis-ci script works around this somewhat by aliasing
make
tomake -j4
in order to force four threads to be used rather than just one thread.