Commit Graph

450 Commits

Author SHA1 Message Date
Zephyron
1fdef52107 build: Update NASM and clang-format versions, fix download URLs
- Update NASM version from 2.16.01 to 2.16.03
- Change NASM download URL to use official nasm.us source
- Update clang-format version from 15 to 18
- Update compatibility list and clang-format download URLs to use citron-emu.org

Thanks to Mangax for suggesting these updates.
2025-05-11 16:34:30 +01:00
Zephyron
a9b15107e1 build: update dependencies and relax version requirements
- Update Vulkan validation layers to 1.4.304.1
- Update Qt to 6.8.2
- Remove strict version requirements for various dependencies
- Update Vulkan-Headers, VulkanMemoryAllocator, and vcpkg submodules
- Reorganize discord-rpc compile options

This change makes the build system more flexible by removing unnecessary
version constraints while ensuring compatibility with newer versions of
key dependencies.
2025-05-11 14:54:45 +01:00
Zephyron
9f49882c24 build: update Qt to 6.8.1 and add permissive flag for discord-rpc
Updates the Qt dependency from 6.7.3 to 6.8.1 when downloading Qt.
Adds -fpermissive compile flag for discord-rpc target to fix build issues.
2025-05-11 14:54:45 +01:00
Zephyron
b5371eb41a deps: Update Vulkan dependencies and remove fmt version constraint
- Update Vulkan-Headers to e43027a (1.4.306)
- Update Vulkan-Utility-Libraries to 8ec8482
- Update vcpkg to 2b8927f
- Remove version constraint for fmt package requirement
- Update VulkanHeaders version requirement to 1.4.306

This updates several external dependencies to their latest versions and
removes the specific version requirement for fmt while maintaining the
REQUIRED flag. The Vulkan-Headers version requirement is updated to match
the new submodule version.
2025-05-11 14:29:04 +01:00
vampiric_x
07a40fef9c Add QT Network package 2025-05-11 12:17:03 +01:00
Zephyron
abcc044bab build: update vulkan headers to 1.4.304 and vcpkg baseline
Update VulkanHeaders minimum required version from 1.3.274 to 1.4.304 and
update vcpkg baseline to latest version to ensure compatibility with newer
Vulkan features.

Changes:
- VulkanHeaders: 1.3.274 -> 1.4.304
- vcpkg baseline: c82f74667 -> 7adc2e4d4
2025-05-11 12:17:03 +01:00
Zephyron
b3ff92116e fix: Implement SetGestureOutputRanges to handle unimplemented function error
- Added the SetGestureOutputRanges function to the IHidServer class to address the unimplemented function '92' error.
- This fix was discovered through log analysis, which showed a critical assertion failure in the HID service for an unknown function '92'.
- The log indicated a userspace panic and backtrace, pointing to the need for implementing this function to prevent execution breaks.
- Updated CMakeLists.txt to remove specific version requirements for several packages, enhancing flexibility.
- Updated subproject commit references for VulkanMemoryAllocator and vcpkg.

- REF: https://switchbrew.org/wiki/HID_services#ActivateGesture
2025-05-11 12:17:03 +01:00
Zephyron
9ce7c82b18 feat: Improve thermal display and build system
- Replace emoji thermal indicators with modern progress bar UI
- Switch temperature source to battery sensor for better accuracy
- Adjust temperature thresholds (30°C-45°C range)
- Add automatic Vulkan Validation Layer download for Android

The thermal display now shows a visual progress bar with percentage
instead of emojis, making it easier to gauge system temperature at
a glance. Temperature reading now comes from the battery sensor
which is more reliable across devices.

Build system improvements include automated VVL binary downloads
and installation for Android builds when CITRON_DOWNLOAD_ANDROID_VVL
is enabled.
2025-05-11 12:17:03 +01:00
vampiric_x
58eaee33b5 ui(QT): QT 6.7.3 Implementation 2025-05-11 12:17:03 +01:00
Zephyron
4768701377 feat: make LLVM Demangle optional via CMake flag
Added new CMake option YUZU_USE_LLVM_DEMANGLE (default: ON) to control whether
the project uses LLVM's Demangle component. This allows building without LLVM
dependencies when demangling support is not needed.

Co-authored-by: reg_server
2025-05-11 12:17:03 +01:00
Andrew Udvare
c403a0027e Boost: Fix building against Boost 1.86.0 2024-12-20 15:24:58 +00:00
anon
95966f122b option to skip compiling the -cmd executable (#26)
There's already a `-DYUZU_ROOM` flag that can be set to OFF to skip compiling that executable.

This adds a `-DYUZU_CMD` flag that is ON by default, but can be set to OFF to also skip compiling the yuzu-cmd executable.

Setting both to OFF saves **_a lot_** of compiling time if you don't ever use either the yuzu-room or yuzu-cmd exes.

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/26
Co-authored-by: anon <anon@noreply.localhost>
Co-committed-by: anon <anon@noreply.localhost>
2024-12-20 15:24:58 +00:00
Mike Lothian
c39939fd8e Use fmt 11.0.0 2024-12-20 15:24:57 +00:00
darktux
8028770d4e Optionally optimize generated SPIRV with spirv-opt (#10)
Reviewed-on: http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/darktux/torzu/pulls/10
Co-authored-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
Co-committed-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion>
2024-12-20 15:24:57 +00:00
Nick Majkic
75b68c9170 Macos moltenvk headers 2024-12-20 15:24:57 +00:00
Nick Majkic
b9769e59e9 Clean up CMAKE files for mac and xcode building 2024-12-20 15:24:57 +00:00
niansa
9b4ef19ed9 Port changes from Early Access 2024-12-20 15:24:40 +00:00
cass_058
15ae646d4e Fix build 2024-12-20 15:14:22 +00:00
Mike Lothian
127a9f1527 Move repos
Move to codeberg.org
2024-12-20 15:14:11 +00:00
Alexandre Bouvier
c74b5f9ee6 cmake: use vulkan-headers config file 2024-02-02 04:38:56 +01:00
Alexandre Bouvier
73e7a259fd cmake: prefer system oaknut library 2024-01-30 02:57:50 +01:00
Mike Lothian
f854ffd015 Add Vulkan-Utility-Libraries dependency 2024-01-22 01:30:44 +00:00
Jan Beich
ecfba79d98 externals: update Vulkan-Headers to v1.3.274 2023-12-20 01:13:09 +01:00
Liam
7239547ead android: add oboe audio sink 2023-12-17 01:42:59 -05:00
Alexandre Bouvier
d2bb9e9729 cmake: prefer system gamemode library 2023-11-30 16:54:00 +01:00
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
amazingfate
a76a8fb5fe qt: add cpu_backend configuration 2023-11-26 20:44:07 -05:00
Alexandre Bouvier
fe3702223f cmake: prefer system simpleini library 2023-11-26 03:45:10 +01: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
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
Nguyen Marc
b1a7bbd458
qt: add network components when using discord 2023-10-14 01:01:02 +02:00
Charles Lombardo
3aa6d4d8ce android: Allow ANDROID_STL 2023-10-13 12:55:41 -04:00
Charles Lombardo
2c3281c66b externals: Update LLVM to 17.0.2
Matches android ndk
2023-10-13 12:55:41 -04:00
Charles Lombardo
1591923f91 android: Update ndk to 26.1.10909125
The new ndk uses LLVM 17.0.2 so we can remove the LLVM download and libc++ options for the android builds
2023-10-13 12:55:41 -04:00
Liam
d3997bad9b qt: implement automatic crash dump support 2023-10-08 11:35:53 -04:00
Alexandre Bouvier
f93f31f4ae cmake: prefer system renderdoc header 2023-09-18 18:35:20 +02:00
liamwhite
ce5320c49f
Merge pull request #11447 from xcfrg/portable-compile-out
common: add a compile time option to allow disabling portable mode
2023-09-12 09:17:50 -04:00
GPUCode
254b2bd9df cmake: Add option to fetch validation layer binary on android 2023-09-08 23:13:52 +03:00
xcfrg
a02d641042
add a compile time option to allow disabling portable mode 2023-09-06 18:53:39 -04:00
german77
4077ff6851 externals: Update SDL to 2.28.2 2023-08-27 21:08:28 -06:00
Feng Chen
87022a4833 Add macos moltenvk bundle, Add copy moltevk dylib script 2023-08-22 10:22:28 +08:00
lat9nq
43920aa1a0 cmake: Download nasm from our external repo
This package download has intermittent failures due to host Internet
issues (presumably), so download it ourselves from our own hosting.
2023-07-25 15:47:44 -04:00
lat9nq
c1e57ad358 CMake: Require LLVM 17 or later
API changes necessitate an update here.
2023-07-18 22:39:13 -04:00
liamwhite
5593bed08a
Merge pull request #10934 from abouvier/cmake-vma
cmake: allow using system VMA library
2023-07-17 10:42:41 -04:00
liamwhite
2461c78e3f
Merge pull request #10912 from comex/ssl
Implement SSL service
2023-07-16 16:56:47 -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
comex
0e191c2711 Updates:
- Address PR feedback.
- Add SecureTransport backend for macOS.
2023-07-01 17:27:35 -07:00