* Use generator expressions
* Update cmake minimum
* Move options and remove project name
* Use further generator expressions
* Try upgrading to CMake 3.25 on Ubuntu 22.04 CI
Install software-properties-common
* Standardise with DISABLE_TTF for disable defines
* Set X64 var differently due to unknown reasons
---------
Co-authored-by: Michael Steenbeek <1478678+Gymnasiast@users.noreply.github.com>
The issue here is that fontconfig may report the name of a given
font face in a language specified by the current locale, while the
OpenRCT2 font code checks the result against an English name.
This fix addresses the issue by temporarily changing the environment
LANG variable to use the default C locale, which should guarantee
English/ASCII names are returned by fontconfig. It uses an RAII
mechanism to ensure that the modified environment variable is restored
to its original value on exiting GetFontPath.
With the changes in #22819, it seems reasonable to add a couple of
default searchable paths for Linux that are created by the
`game-data-packager` utility, available in Debian and its various
derivatives.
Signed-off-by: Mathias Gibbens <gibmat@debian.org>
* Put all of TitleSequenceManager into the same namespace
* Move RideConstructionState into the OpenRCT2 namespace
* Adopt existing namespaces into OpenRCT2 namespace
This adds `using namespace OpenRCT2` to compilation units where appropriate,
as a means to get the codebase to compile until these units have been placed
in a namespace of their own.
* Update Steam path detection for Linux
As Steam now uses Proton to install Windows version natively, update
paths so they get found automatically
* Use new Steam path detection on Linux only
This restores Steam path detection on macOS as it doesn't have Proton
simplify the Platform::GetInstallPath (linux) by removing unnecessary
vector, removing unused #ifdef path and using string_views where
appropriate. no vector was actually needed as the prefixes are fixed
(same as the SearchLocations) - using a plain array avoids an
unnecessary allocation (actually a couple as the old code was using
push_back without reserve).
how it was tested?
run the game, check it finds path OK - PASS
run in the debugger, actually loop through OK - PASS
* Remove old interop macro
* Remove legacy string macro things
* Unbreak the posix/linux/unix builds
* Add String::IEquals and use it for case insensitive compare
* Add missing include for posix
* Replace _strnicmp with String::StartsWith
* Add LoByte and HiByte into Util.h, swap macros
* Fix android build
* Hopefully last of the string things
* Replace STUB directly with the warning
* Refactor and clean up date handling
* Remove gDate, remove direct access to days_in_month
* Adjust the MultiLaunch test
* Bump network version
---------
Co-authored-by: ζeh Matt <5415177+ZehMatt@users.noreply.github.com>
For most of these cases, adding a trailing comma to the array block makes clang-format put each item on a new line, and clang-format exception blocks could be reduced where clang-format does not handle them properly.
For files intended to support unixy freedesktopy systems,
reduce the ifdef down to __unix__ && !__APPLE__ && !__ANDROID__,
rather than naming linux and all the BSDs and so on by hand.
Should simplify adding support for systems like illumos in the
future.
Co-authored-by: Michael Steenbeek <m.o.steenbeek@gmail.com>
It should now cover all use cases supported previously, with added
benefit of automatically checking and prioritising installed directories
(including DESTDIR=.) as well as path relative to $PWD.