Commit graph

576 commits

Author SHA1 Message Date
liamwhite 57a391e71d
Merge pull request #12074 from GPUCode/yuwu-on-the-metal
Implement Native Code Execution (NCE)
2023-11-30 09:20:55 -05:00
Liam 5eec980a2d general: conditionally compile gamemode on linux only 2023-11-29 14:26:11 -05:00
liamwhite 337e37f91d
Merge pull request #11946 from flodavid/gamemode
Enable (Feral Interactive) Gamemode on Linux
2023-11-29 12:33:09 -05:00
Alexandre Bouvier fe3702223f cmake: prefer system simpleini library 2023-11-26 03:45:10 +01:00
flodavid ac11f6e4c5 cmake: move gamemode target include into its file 2023-11-25 19:30:45 +01:00
flodavid 40644d43f7 yuzu: create linux group in general settings
- Create files dedicated to starting and stopping gamemode functions
  - Use them in yuzu and yuzu_cmd modules
2023-11-25 19:30:37 +01:00
xcfrg dfa56765d6 yuzu: integrate gamemode support on linux 2023-11-25 19:30:29 +01:00
Liam 9f91ba1f73 arm: Implement native code execution backend 2023-11-25 00:46:47 -05:00
GPUCode 2e02efbdd0 externals: Add oaknut submodule 2023-11-25 00:46:47 -05:00
t895 aa20311969 general: Remove inih 2023-11-21 01:58:13 -05:00
t895 da14c7b8e4 config: Unify config handling under frontend_common
Replaces every way of handling config for each frontend with SimpleIni. frontend_common's Config class is at the center where it saves and loads all of the cross-platform settings and provides a set of pure virtual functions for platform specific settings.

As a result of making config handling platform specific, several parts had to be moved to each platform's own config class or to other parts. Default keys were put in platform specific config classes and translatable strings for Qt were moved to shared_translation. Default hotkeys, default_theme, window geometry, and qt metatypes were moved to uisettings. Additionally, to reduce dependence on Qt, QStrings were converted to std::strings where applicable.
2023-11-21 01:58:13 -05:00
liamwhite 22cac3a5e3
Merge pull request #11728 from liushuyu/update-deps
Update external dependencies
2023-10-30 15:32:31 -04:00
liamwhite eec3d356b6
Merge pull request #11689 from liamwhite/breakpad
qt: implement automatic crash dump support
2023-10-29 23:41:13 -04:00
Alexandre Bouvier 79ba5d9c26 cmake: prefer system stb headers 2023-10-25 21:47:32 +02:00
german77 94836ba3b1 externals: stb: Add image write 2023-10-23 10:18:14 -06:00
liushuyu a065dcdcd9
externals/opus: use CMakeLists shipped with Opus itself 2023-10-22 14:21:33 -06:00
liushuyu d6bd16b2c0
externals/libusb: remove the GUID override workaround ...
... on Windows MSVC, it seems to have been fixed
2023-10-21 22:29:32 -06:00
liushuyu a49b146ccc externals: update libusb to c060e9ce30ac2e3ffb49d94209c4dae77b6642f7 ...
... this fixes an issue when compiling with newer MSVC
2023-10-21 22:29:19 -06:00
liushuyu fd9e157184 externals: update VulkanMemoryAllocator to 2f382df218d7e8516dee3b3caccb819a62b571a2 2023-10-21 22:29:19 -06:00
liushuyu 6cbd4020e8 externals: update Vulkan-Headers to 1.3.265 2023-10-21 22:29:19 -06:00
liushuyu 3558b236cd externals: update ffmpeg to 9c1294eaddb88cb0e044c675ccae059a85fc9c6c
... to fix build with binutils 2.41+
2023-10-21 22:29:19 -06:00
liushuyu 48e82c4138 externals: update vcpkg to ef2eef17340f3fbd679327d286fad06dd6e838ed 2023-10-21 22:29:19 -06:00
liushuyu 9eb70aea1d externals: update SDL to 2.28.4 2023-10-21 22:29:19 -06:00
liushuyu 0460fbacc9 externals: update cpp-jwt to 10ef5735d842b31025f1257ae78899f50a40fb14 2023-10-21 22:29:19 -06:00
liushuyu c73297e840 externals: update cpp-httplib to 0.14.1 2023-10-21 22:29:19 -06:00
liushuyu 633d869ff4 externals: update libusb to 1.0.26 2023-10-21 22:29:19 -06:00
liushuyu e03f86cc54 externals: update inih to r57 2023-10-21 22:29:19 -06:00
liushuyu a0a3566977 externals: update opus to 1.4 2023-10-21 22:29:19 -06:00
lat9nq bf7c45e560 externals/nx_tzdb: Update download version to 2022g
Mainly for MSVC, changes the time zone database version to latest.
2023-10-11 20:20:31 -04:00
lat9nq 21ebe3e462 externals/tzdb_to_nx: Update to 221202
This updates us to an eggert/tz commit downstream of 2022g that compiles. This
seems to be the revision Nintendo is using for 17.0.0, if the data checksums
are anything to go off of.
2023-10-11 16:42:31 -04:00
Liam d3997bad9b qt: implement automatic crash dump support 2023-10-08 11:35:53 -04:00
Narr the Reg dac53b4ba0 externals: stb: Split library into cpp file 2023-10-07 20:57:19 -06:00
Narr the Reg e37ad99f22 externals: Add stb_image and stb_image_resize 2023-10-02 11:29:12 -06:00
Alexandre Bouvier f93f31f4ae cmake: prefer system renderdoc header 2023-09-18 18:35:20 +02:00
GPUCode c656105a6c debug: Add renderdoc capture hotkey 2023-09-14 16:37:41 +03:00
liamwhite 3d5ecc1f08
Merge pull request #11406 from german77/sdl2-28-2
externals: Update SDL to 2.28.2
2023-08-29 09:27:54 -04:00
german77 4077ff6851 externals: Update SDL to 2.28.2 2023-08-27 21:08:28 -06:00
Danila Malyutin 164f880f23 Use initial_frame to check interlaced flag
If final frame was transferred from GPU, it won't carry the props.

Fixes #11089
2023-08-28 00:48:53 +04:00
Liam 6bb02dcb8a Skip additional mbedcrypto warnings options on MSVC 2023-08-25 19:23:34 -04:00
comex 32c453a5f1 Avoid $<CXX_COMPILER_ID:Clang> because it doesn't include AppleClang. 2023-08-25 19:22:31 -04:00
comex 91eb5afd0b Warnings cleanup for GCC 13 and Clang 16
Note: For GCC there are still a huge number of `-Warray-bounds` warnings
coming from `externals/dynarmic`.  I could have added a workaround in
`externals/CMakeLists.txt` similar to what this PR does for other
externals, but given Dynarmic's close affiliation with Yuzu, it would be
better to fix it upstream.

Besides that, on my machine, this makes the build warning-free except
for some warnings from glslangValidator and AutoMoc.

Details:

- Disable some warnings in externals.

- Disable `-Wnullability-completeness`, which is a Clang warning triggered
  by the Vulkan SDK where if any pointers in the header are marked
  _Nullable, it wants all pointers to be marked _Nullable or _Nonnull.
  Most of them are, but some aren't.  Who knows why.

- `src/web_service/verify_user_jwt.cpp`: Disable another warning when
  including `jwt.hpp`.

- `src/input_common/input_poller.cpp`: Add missing `override` specifiers.

- src/common/swap.h: Remove redundant `operator&`.  In general, this
  file declares three overloads of each operator.  Using `+` as an
  example, the overloads are:

  - a member function for `swapped_t + integer`
  - a member function for `swapped_t + swapped_t`
  - a free function for `integer + swapped_t`

  But for `operator&`, there was an additional free function for
  `swapped_t + integer`, which was redundant with the member function.
  This caused a GCC warning saying "ISO C++ says that these are
  ambiguous".
2023-08-25 19:22:31 -04:00
lat9nq 1ab3bd5a5e demangle: Update to llvm/llvm-project@ecbc812e0c 2023-07-18 22:39:26 -04:00
Alexandre Bouvier c3050c1b48 cmake: allow using system VMA library 2023-07-12 04:51:45 +02:00
Morph e3937fe8ad general: Update VulkanSDK and Vulkan-Headers
Latest as of this commit
2023-07-07 02:04:13 -04:00
ChaseKnowlden 0792139a5f externals: Update sdl2 to 2.28.1 2023-07-04 16:10:49 -04:00
GPUCode eac46ad7ce video_core: Add BCn decoding support 2023-06-27 18:00:09 -07:00
liamwhite c6959449d1
Merge pull request #10473 from GPUCode/vma
Use vulkan memory allocator
2023-06-27 11:21:36 -04:00
liamwhite ce990adae5
Merge pull request #10901 from german77/sdl_fix
input_common: Make use of new SDL features
2023-06-26 14:31:14 -04:00
GPUCode b6c6dcc576 externals: Use cmake subdirectory 2023-06-26 18:59:24 +03:00
lat9nq f5569bfed9 nx_tzdb: Update tzdb_to_nx to 212afa2
Moves build data to a separate directory so the build happens out of the source
tree.
2023-06-25 17:20:18 -04:00