Build currently fails with:
build-gkd350h/_deps/libzt-src/src/Controls.cpp:144:60: error: ‘pthread_setname_np’ was not declared in this scope
pthread_setname_np(service_thread, ZTS_SERVICE_THREAD_NAME);
^
Does not build with the current buildroot:
build-retrofw/_deps/asio-src/asio/include/asio/detail/memory.hpp:87:20: error: ‘aligned_alloc’ is not a member of ‘std’
void* ptr = std::aligned_alloc(align, size);
Fixes a formatting inconsistency I inadvertently
introduced in a previous change. Apologies!
Fixes: 012f3aa90c
Signed-off-by: Sam James <sam@gentoo.org>
Our previous processing would throw away all but the last
entry in the found STATIC_LIBRARIES, which in newer versions
of libsodium, might be "pthread" -- hence not trying to link
against libsodium at all.
We now generate a temporary list, mangle it, then return that.
Bug: https://bugs.gentoo.org/791031
Fixes: https://github.com/diasurgical/devilutionX/issues/2615
Signed-off-by: Sam James <sam@gentoo.org>
SDL_mixer can only stream a single music track
SDL_audiolib has unlimited streams.
With this change, we finally have streaming sounds (respecting
sfx_STREAM).
Audio options can now also be set via diablo.ini, which should help us
better diagnose the static noise issues.
Unfortunately, OD Beta has a major regression with SDL joystick support,
as it always reports buttons as keyboard keys instead of actual buttons.
This partially breaks external keyboard support, where e.g. space no
longer acts as expected.
However, on balance, OD Beta is better than the 2014 firmware at this
point.
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`.
This commit serves 2 purposes:
1. Fixes CMake 3.13 compatibility when using
` -DDEVILUTIONX_SYSTEM_LIBSODIUM=OFF` (fixes#1222).
2. Ensures we do not build targets that are not depended on by us,
by passing `EXCLUDE_FROM_ALL` to `add_subdirectory`.