* Fix a GCC 15 build issue on Windows due to a missing `#include`
- `<vector>` was included implicitly by some other header
- The build broke in GCC 15 on MinGW, most likely due to some internal refactoring
* Indent these `#include`s the same as the others
- Indexing past the end of a `std::vector`'s length is undefined, even if there's extra capacity
- GCC 15 introduced an assert in `vector::operator[]`, so this line caused an abort if melonDS was built with GCC 15
- It was always undefined, but now the STL checks for it
Fixes compilation of JIT builds on non-glibc OSes. After some testing in a Fedora 41 VM,
__sysconf and sysconf return the same value, and sysconf in glibc appears to just
be an alias to __sysconf to begin with
CMake 4.0 dropped support for projects with a minimum required version
below 3.5. libarchive, as well as possibly other dependencies, had older
versions set so they now fail to build.
GitHub Actions and MSYS2 were very quick to update their CMake version
and there isn't a tagged vcpkg release with a fix for libarchive yet, so
we will use a specific commit for now.
* Add a `GBAHeader` struct
* Add extra `GBAAddon` entries for the Boktai carts
- Each game in the trilogy has a different effect on Lunar Knights (the only commercial DS game to support the solar sensor)
* Copy the logo data from the NDS ROM's header to the Boktai stub's header
Fix almost every warning as of Clang 19
* <codecvt> is deprecated, we can use QString's UTF-16 conversion
instead
* remove sem_timedwait implementation as we don't need it anymore
* remove a useless shift that has its result discarded
* change usages of deprecated sprintf to snprintf
The check for initialising the gdbstub depending on whether the JIT was
enabled or not was the wrong way around: previously, it would only
enable the gdbstub if the JIT was enabled.
The stub started working again if you reset the console, as
NDS::SetGdbArgs didn't have any such check and it was called by
EmuInstance::updateConsole.
project() appears to set it to an empty string (the value of nonexistent
$ENV{MACOSX_DEPLOYMENT_TARGET}?), causing our attempt to set its default
to fail. CMake bug?
Truncate the title at the first occurrence of \0, as title strings
should be null-terminated.
Fixes#2219 (Weird characters on DSi Title Manager on melonDS 1.0RC)