Commit Graph
347 Commits
Author SHA1 Message Date
Castor215andGitHub 4ac10c4a9d externals: allow users to use system Zstandard (#7083) 2023-10-21 16:10:02 -07:00
Castor215andGitHub 2416258117 externals: add overarching USE_SYSTEM_LIBS variable (#7078) 2023-10-20 17:02:20 -07:00
Steveice10andGitHub 1caf569f16 externals: Update cryptopp-cmake and cryptopp. (#7041) 2023-10-17 11:03:03 -07:00
Castor215andGitHub 2d83fff581 externals: allow user to use system glslang (#7075) 2023-10-17 11:02:50 -07:00
Steveice10andGitHub e49b3c75bd externals: Make system dynamic library headers flags instead of auto-detect. (#7065) 2023-10-16 19:32:58 -07:00
Castor215andGitHub 956b0868fd externals: allow user to use system inih (#7073) 2023-10-16 19:31:56 -07:00
Castor215andGitHub 3d55270de6 externals: allow users to use system xbyak (#7068) 2023-10-13 15:03:50 -07:00
775a25b492 externals: allow system cpp-cttplib to be used with both meson and cpp-httplib builds (#7062)
Co-authored-by: Violet Purcell <vimproved@inventati.org>
2023-10-11 14:43:36 -07:00
PabloMK7andGitHub 897d1fa957 Implement more HTTP:C functionality (#7035)
* Implement missing http:c functionality.

* More implementation details and cleanup.

* Organize code

* Disable treat errors as warnings for httplib

* Fix defines

* Remove pragmas that do nothing and mark as SYSTEM

* Make httplib system

* Try to fix issue from httplib

* Apply suggestions

* Fix header ordering

* Fix compilation issue

* Create and use ctx.CommandID()

* Add and use Common::TruncateString

* Apply more suggestions

* Apply suggestions

* Fix compilation

* Apply suggestions

* Fix format

* Revert SplitURL to previous version

* Apply suggestions
2023-10-11 10:09:16 -07:00
Steveice10andGitHub 6244f9e3fd ci: Support Android x86_64 and optimize build caching. (#7045)
* android: Support x86_64 devices.

* ci: Improve ccache hits and stats.

* ci: Compress Android artifacts.

* ci: Re-enable PCH and set ccache sloppiness appropriately.
2023-10-08 23:56:01 -07:00
Castor215andGitHub f5b8888686 externals: allow user to use system fmt (#7052) 2023-10-07 16:00:02 -07:00
Castor215andGitHub 492aa3cb10 externals: allow user to use system dynarmic (#7044) 2023-10-06 21:49:56 -07:00
Castor215andGitHub 7931aac3b7 externals: require cpp-httplib >= 0.14.1 (#7043) 2023-10-05 16:41:07 -07:00
Castor215andGitHub 483e877001 externals: allow users to use system JSON headers (nlohmann-json3) (#7042) 2023-10-04 14:32:43 -07:00
Castor215andGitHub 0ce956ba00 externals: allow users to use system cpp-httplib (#7034) 2023-10-04 15:41:13 +02:00
Castor215andGitHub b28ade1ee8 externals: mark cpp-jwt headers as SYSTEM (#7033) 2023-10-03 01:19:18 -07:00
Castor215andGitHub 38f310f716 externals: allow users to use system cpp-jwt libraries (#6976) 2023-09-28 16:31:14 -07:00
Steveice10andGitHub 327a00b4d5 externals: Update fmt. (#7015) 2023-09-27 03:29:13 -07:00
SachinVinandGitHub 8aee625a14 externals: Add option to use system SoundTouch (#6971) 2023-09-16 14:46:32 -07:00
dfa2fd0e0d Add vulkan backend (#6512)
* code: Prepare frontend for vulkan support

* citra_qt: Add vulkan options to the GUI

* vk_instance: Collect tooling info

* renderer_vulkan: Add vulkan backend

* qt: Fix fullscreen and resize issues on macOS. (#47)

* qt: Fix bugged macOS full screen transition.

* renderer/vulkan: Fix swapchain recreation destroying in-use semaphore.

* renderer/vulkan: Make gl_Position invariant. (#48)

This fixes an issue with black artifacts in Pokemon games on Apple GPUs.
If the vertex calculations differ slightly between render passes, it can
cause parts of model faces to fail depth test.

* vk_renderpass_cache: Bump pixel format count

* android: Custom driver code

* vk_instance: Set moltenvk configuration

* rasterizer_cache: Proper surface unregister

* citra_qt: Fix invalid characters

* vk_rasterizer: Correct special unbind

* android: Allow async presentation toggle

* vk_graphics_pipeline: Fix async shader compilation

* We were actually waiting for the pipelines regardless of the setting, oops

* vk_rasterizer: More robust attribute loading

* android: Move PollEvents to OpenGL window

* Vulkan does not need this and it causes problems

* vk_instance: Enable robust buffer access

* Improves stability on mali devices

* vk_renderpass_cache: Bring back renderpass flushing

* externals: Update vulkan-headers

* gl_rasterizer: Separable shaders for everyone

* vk_blit_helper: Corect depth to color convertion

* renderer_vulkan: Implement reinterpretation with copy

* Allows reinterpreteration with simply copy on AMD

* vk_graphics_pipeline: Only fast compile if no shaders are pending

* With this shaders weren't being compiled in parallel

* vk_swapchain: Ensure vsync doesn't lock framerate

* vk_present_window: Match guest swapchain size to vulkan image count

* Less latency and fixes crashes that were caused by images being deleted before free

* vk_instance: Blacklist VK_EXT_pipeline_creation_cache_control with nvidia gpus

* Resolves crashes when async shader compilation is enabled

* vk_rasterizer: Bump async threshold to 6

* Many games have fullscreen quads with 6 vertices. Fixes pokemon textures missing with async shaders

* android: More robust surface recreation

* renderer_vulkan: Fix dynamic state being lost

* vk_pipeline_cache: Skip cache save when no pipeline cache exists

* This is the cache when loading a save state

* sdl: Fix surface initialization on macOS. (#49)

* sdl: Fix surface initialization on macOS.

* sdl: Fix render window events not being handled under Vulkan.

* renderer/vulkan: Fix binding/unbinding of shadow rendering buffer.

* vk_stream_buffer: Respect non coherent access alignment

* Required by nvidia GPUs on MacOS

* renderer/vulkan: Support VK_EXT_fragment_shader_interlock for shadow rendering. (#51)

* renderer_vulkan: Port some recent shader fixes

* vk_pipeline_cache: Improve shadow detection

* vk_swapchain: Add missing check

* renderer_vulkan: Fix hybrid screen

* Revert "gl_rasterizer: Separable shaders for everyone"

Causes crashes on mali GPUs, will need separate PR

This reverts commit d22d556d30ff641b62dfece85738c96b7fbf7061.

* renderer_vulkan: Fix flipped screenshot

---------

Co-authored-by: Steveice10 <1269164+Steveice10@users.noreply.github.com>
2023-09-13 01:28:50 +03:00
GPUCodeandGitHub 1159e4d928 video_core: Take factors into account with min/max blending functions (#6925)
* sw_framebuffer: Take factors into account for min/max blending

* renderer_gl: Take factors into account for min/max blending

* Address review comments

* gl_shader_gen: Fix frambuffer fetch on qcom and mali

* renderer_opengl: Add fallback path for mesa

* gl_shader_gen: Avoid emitting blend emulation if minmax_factor is present
2023-08-30 21:26:28 +03:00
GPUCodeandGitHub a94297922b shader_interpreter: Fix control flow edge cases and implement break/breakc (#6844) 2023-08-21 18:12:46 -07:00
Steveice10andGitHub 66404a669f build: Fixes for a few minor issues (#6886) 2023-08-14 09:47:17 -07:00
Steveice10andGitHub 6d0cd5b00e build: Expose ENABLE_SCRIPTING and ENABLE_WEB_SERVICE flags as public. (#6872) 2023-08-07 03:12:49 -07:00
GPUCodeandGitHub 0048e61fc7 Fix compilation without ENABLE_WEB_SERVICE (#6856) 2023-08-06 12:23:53 -07:00
liushuyuandGitHub 7e6a761f07 cmake: fix USE_SYSTEM_BOOST behavior ... (#6837) 2023-08-02 12:20:35 -07:00
GPUCodeandGitHub 4ccd9f24fb Merge pull request #6638 from GPUCode/new-log
common: Backport yuzu log improvements
2023-07-06 23:44:54 +03:00
Steveice10andGitHub df9cc1b84c ci: Fix CI builds being marked as dirty. (#6656) 2023-07-04 21:02:33 -07:00
Steveice10andGitHub 13a8969824 build: Clear out remaining compile warnings. (#6662) 2023-07-04 21:00:24 -07:00
GPUCode 9c3e2d0f50 externals: Update boost
* To include stack traces
2023-06-30 12:15:52 +03:00
Steveice10andGitHub 2d6aca4563 build: Rework CI and move all bundling into new build target. (#6556)
* build: Rework CI and move all bundling into new build target.

* ci: Use "mingw" in msys2 release names for compatibility.

* ci: Use "osx" in macOS release names for compatibility.

* ci: Disable macOS upload.

Will be moved to a separate PR for canary merge.
2023-06-26 17:42:00 -07:00
Steveice10andGitHub 70225e92f7 externals: Move library headers CMake logic to Citra. (#6627) 2023-06-19 17:08:11 -07:00
SachinVinandGitHub 35d1b67fd4 Merge pull request #6602 from SachinVin/wall
Chore: enable `-Werror` on GCC and clang
2023-06-18 22:37:39 +05:30
SachinVinandGitHub 4c8a98a321 common\string_util.cpp: switch to boost::locale::conv for UTF16ToUTF8() and UTF8ToUTF16() (#6623) 2023-06-18 20:00:00 +03:00
SachinVin c66594caf8 Enable warnings as errors
cpp-jwt: supress OpenSSL deprecation warnings
2023-06-17 21:23:58 +05:30
Steveice10andGitHub 38435e9b3e Dynamically load FFmpeg and libfdk-aac if available. (#6570) 2023-06-17 02:06:18 +03:00
Steveice10andGitHub 238a574645 qt: Add support for building for iOS. (#6594) 2023-06-07 20:40:53 -07:00
Steveice10andGitHub d9bf4fd8a2 externals: Update dynarmic to 6.4.8 (#6596) 2023-06-07 20:25:28 -07:00
54c499ed5b Prepare for Vulkan backend (#6595)
* externals: Add libraries required for vulkan

* build: Add support for downloading bundled MoltenVK.

* ci: Install tools needed for Vulkan.

* citra_qt: Add API status indicator

---------

Co-authored-by: GPUCode <geoster3d@gmail.com>
2023-06-05 07:29:05 -07:00
Steveice10andGitHub 52f88f8fb4 chore: Fix GCC 13 compilation and SoundTouch libraries being installed. (#6593) 2023-06-02 23:11:17 -07:00
Steveice10andGitHub 40962c4479 sdl: Enable cpuinfo detection. (#6554) 2023-05-19 15:48:30 +02:00
Danila MalyutinandGitHub 110063aa56 externals: update cubeb (#6548) 2023-05-19 00:24:43 +02:00
Steveice10andGitHub 71a9981430 externals: Link SDL2 statically. (#6461) 2023-05-10 05:08:25 +02:00
Steveice10andGitHub 2035433159 externals: Update dynarmic for hotfix. (#6513) 2023-05-07 10:30:35 -07:00
Steveice10andGitHub ee025174fb externals: Update dynarmic to 6.4.7 (#6507) 2023-05-07 09:19:03 -07:00
Vitor Kiguchi 53da17b925 externals: update catch to v3.3.2 2023-05-04 11:12:59 -03:00
Vitor Kiguchi 7b4e2b3c9d externals: update zstd to v1.5.5 again 2023-05-04 11:08:05 -03:00
SachinVinandGitHub 41f13456c0 Chore: Enable warnings as errors on MSVC (#6456)
* tests: add Sanity test for SplitFilename83

fix test

fix test

* disable `C4715:not all control paths return a value` for nihstro includes

nihstro: no warn

* Chore: Enable warnings as errors on msvc + fix warnings

fixes

some more warnings

clang-format

* more fixes

* Externals: Add target_compile_options `/W0` nihstro-headers and ...

Revert "disable `C4715:not all control paths return a value` for nihstro includes"
This reverts commit 606d79b55d3044b744fb835025b8eb0f4ea5b757.

* src\citra\config.cpp: ReadSetting: simplify type casting

* settings.cpp: Get*Name: remove superflous logs
2023-05-01 22:38:58 +03:00
Steveice10andGitHub 055a58f01e audio_core: Implement OpenAL backend (#6450) 2023-05-01 21:17:45 +02:00
Steveice10andGitHub ea649263b7 build: Improvements to bundled libraries support. (#6435) 2023-04-28 13:02:53 -07:00