This option links the tcmalloc and gperf memory profiler.
It can then be used to memory-profile individual sections of the app.
On Ubuntu, the package that provides the profiler is
`libgoogle-perftools-dev`.
Adds an option to build libsodium from source instead of using the
system-provided one.
This is useful on systems that do not provide libsodium, or for testing
changes to libsodium along with devilutionx (by specifying
`-DFETCHCONTENT_SOURCE_DIR_LIBSODIUM`).
This also allows us to configure sodium to our liking when building it from source,
such as `SODIUM_MINIMAL`, which reduces the x64 release binary size from 4.3 MiB to 4.1 MiB.
FreeBSD specific # Enable POSIX extensions such as `readlink` and `ftruncate`.
Without it doesn't build:
https://termbin.com/duv8
Right now, this is the only patch needed to build devilutionX successfully on FBSD (rest of patches are just cmake tweaks, install paths, etc)
Thanks,
Nuno Teixeira
Do not limit filesystem paths to 259 chars for MPQs, save files, and diablo.ini.
The MAX_PATH constant remains but now only limits path lengths within the MPQs.
The game will now autodetect if it should run in shareware mode or full
retail based on the found mpq file. Additionally it can beforced in the
shareware mode with --spawn even if the retail data is found.
This simplifies a lot of the spagetty code and lets us better refactor,
also worth noteing is that we won't have to setup a secound set of build
tests.
Text mode is on by default. Calling SDL_StartTextInput() will start the
virual keyboard, but does not allow for a default value. Calling it as
well as switch_start_text_input() will start the keyboard a secound
time.
We still turn TextInput off on other platforms when it's not needed as
it can require additional resources.
Text mode is on by default. Calling SDL_StartTextInput() will start the
virual keyboard, but does not allow for a default value. Calling it as
well as switch_start_text_input() will start the keyboard a secound
time.
We still turn TextInput off on other platforms when it's not needed as
it can require additional resources.