278198f5f5
vk_shader_gen_spv: Implement shadow plane sampling
2022-12-25 22:31:27 +02:00
7e3a0f524c
externals: Update sirit
2022-12-25 22:29:05 +02:00
e90add52d2
cmake: Fork sirit
...
* Upstream is missing some required instructions
2022-12-25 22:29:04 +02:00
3c6ca2cc82
renderer_vulkan: Begin new fragment shader SPIR-V emitter
2022-12-25 22:29:04 +02:00
52251e3908
renderer_vulkan: Scheduler and presentation rewrite
...
* This commit ports yuzu's async scheduler replacing our older and crummier version
Commands are recorded by the scheduler and processed by a separate worker thread.
* Queue submission is also moved to the worker thread which should alliviate slowdowns related to vkQueueSubmit stalls
* Fragment shader compilation and queue submission are also moved to that thread to reduce stutters
2022-12-25 22:23:46 +02:00
921444c2c9
externals: Update vulkan-headers
2022-12-25 22:23:46 +02:00
e54a92c252
code: Address build issues
2022-12-25 22:18:04 +02:00
c611592db6
citra_qt: Add physical device selection dialog
2022-12-25 22:18:04 +02:00
9675811bbe
renderer_vulkan: Add experimental Vulkan renderer
2022-12-25 22:07:46 +02:00
945faf8e92
externals: Add vulkan headers and vma
2022-12-25 22:02:59 +02:00
8d35118f63
renderer_opengl: Add driver class to report info/bugs
2022-12-25 22:02:11 +02:00
553c85456e
rasterizer_cache: Add staging buffer cache for uploads/downloads
...
* In addition bump context version to 4.4 to enforce ARB_buffer_storage and use EXT_buffer_storage for GLES which is support on many mobile devices
2022-12-25 22:02:11 +02:00
2238e6c3ef
externals: Update dynarmic to 7a926d689bcc1cc39dd26d5bba379dffcc6815a3
2022-11-22 22:52:37 +00:00
3b6ffd9c27
Add MSVC binaries for Windows on releases ( #6190 )
...
* Improve directory creation in WindowsCopyFiles.cmake
* Release msvc compiled binaries as an alternative to mingw releases
* msvc: do not ship .pdb files
* msvc: Copy necessary files to the release
* windows-msvc: enable compatibility reporting
translation was disabled because the bundled qt doesn't have
the necessary component
Co-authored-by: Michał Janiszewski <janisozaur@users.noreply.github.com >
2022-11-19 22:22:10 +02:00
bb05d8c12a
src/CMakeLists: Enforce multiple warnings on MSVC ( #5692 )
2022-11-09 23:14:28 +01:00
7801907288
externals: Update dynarmic ( #6175 )
2022-11-05 11:19:50 +05:30
1ddea27ac8
code: Cleanup and warning fixes from the Vulkan PR ( #6163 )
...
Co-authored-by: emufan4568 <geoster3d@gmail.com >
Co-authored-by: Kyle Kienapfel <Docteh@users.noreply.github.com >
2022-11-04 23:32:57 +01:00
0fb792d216
bump dynarmic: fix moving imm to fpr
2022-10-27 18:47:52 +05:30
fbe06234b1
Core: Port Exclusive memory impl from yuzu
...
core\arm\dynarmic\arm_dynarmic.cpp: fix build
core\arm\dynarmic\arm_dynarmic.cpp: Fixes
CPP 20
2022-10-23 13:19:33 +05:30
98d3b9c776
externals\CMakeLists.txt: add fmt before dynarmic
2022-10-23 13:19:32 +05:30
4a590d1fcb
xbyak: Correct xbyak include directory
...
xbyak is intended to be installed in /usr/local/include/xbyak.
Since we desire not to install xbyak before using it, we copy the headers
to the appropriate directory structure and use that instead
Co-authored-by: merry <git@mary.rs >
2022-10-23 13:19:32 +05:30
726964ff20
bump xbyak
2022-10-23 13:19:32 +05:30
e5f30fdbf8
bump dynarmic
...
bump dynarmic
bump dynarmic
bump dynarmic
2022-10-23 13:19:32 +05:30
76f8d08d66
externals: track a stable version of sdl, 2.24.1 ( #6150 )
2022-10-06 03:06:12 +02:00
3e692eb383
externals: Upgrade httplib ( #6147 )
2022-10-06 03:01:37 +02:00
cbd5d1c15c
Upgrade codebase to C++ 20 + fix warnings + update submodules ( #6115 )
2022-09-21 18:36:12 +02:00
9268b7d48e
Merge branch 'master' into tex-cache
2022-09-01 19:50:32 +05:30
12f84e18dc
externals: Upgrade glad to latest version
...
* Also change some mentions to OpenGL 3.3 to 4.3
2022-08-22 23:44:03 +03:00
a90b0daebe
Look at version_major.h when for newer ffmpeg libs
...
In ffmpeg 5.1, it seems most (or all) of these libraries use a separate
version_major.h, so the logic to check minimum version didn't work
without looking at the major version file.
2022-08-20 20:40:26 -04:00
243548afc4
bump dynarmic
...
workaround MSCV compile error
2022-07-03 13:56:33 +05:30
f71e853054
externals: Update cpp-jwt to e12ef062 ( #6051 )
...
Resolves compilation errors when compiling with C++20
2022-06-25 14:41:57 +05:30
46c6e5c4c0
externals: Update libressl to 3.5.2 ( #6021 )
...
Resolves compiler errors in VS 2022
2022-05-15 11:01:54 +05:30
d65f50e512
Bump libressl to latest commit
2022-03-26 10:00:34 +05:30
25ad002e6e
Update teakra ( #5961 )
...
Co-authored-by: Trung Le <trung.le@ruby-joural.com >
2022-02-24 21:02:40 +05:30
cdbd72e79c
Fix build on powerpc64le ( #5947 )
...
After cryptopp update, build again fails.
2022-02-08 22:07:21 +05:30
bae1c31406
Merge pull request #5718 from liushuyu/httpc
...
externals: update httplib and libressl
2022-02-05 02:59:18 -07:00
d35a7a8e23
Merge pull request #5804 from weihuoya/minorfx
...
Minor fx
2022-01-30 21:51:11 +05:30
7fa64af3d6
externals: update enet
2022-01-14 10:36:49 +08:00
af24f75c18
externals: update httplib and libressl ...
...
* In older `httplib`, SSL connections were not handled correctly and
will have issues with proxy servers. Also, keep alive directives were
not available back then, which is probably necessary to implement
HTTP_C service correctly.
* Another reason being `httplib` now requires OpenSSL 1.1+ API while
LibreSSL 2.x provided OpenSSL 1.0 compatible API.
* The bundled LibreSSL has been updated to 3.2.2 so it now provides
OpenSSL 1.1 compatible API now.
* Also the path hint has been added so that it will find the correct
path to the CA certs on *nix systems.
* An option is provided so that *nix system distributions/providers can
use their own SSL implementations when compiling Yuzu/Citra to
(hopefully) complies with their maintenance guidelines.
* LURLParse is also removed since `httplib` can handle
`scheme:host:port` string itself now.
2022-01-13 19:32:50 -07:00
4b04175c5d
cryptopp: enable SIMD flags on i386
...
externals/cryptopp/cryptopp/rijndael_simd.cpp:460:20: error: always_inline function '_mm_loadu_si128' requires target feature 'sse2', but would be inlined into function 'Rijndael_UncheckedSetKey_SSE4_AESNI' that is compiled without support for 'sse2'
__m128i temp = _mm_loadu_si128(M128_CAST(userKey+keyLen-16));
^
externals/cryptopp/cryptopp/rijndael_simd.cpp:469:50: error: '__builtin_ia32_aeskeygenassist128' needs target feature aes
rk[keyLen/4] = rk[0] ^ _mm_extract_epi32(_mm_aeskeygenassist_si128(temp, 0), 3) ^ *(rc++);
^
externals/cryptopp/cryptopp/rijndael_simd.cpp:481:20: error: '__builtin_ia32_vec_set_v4si' needs target feature sse4.1
temp = _mm_insert_epi32(temp, rk[11], 3);
^
[...]
2022-01-06 23:57:05 +00:00
60d1def6f8
Update cryptopp to 8.5.0 ( #5669 )
...
* Update cryptopp to 8.3.0
Modified the CMakeLists.txt based on the noloader/cryptopp-cmake
8.3.0 CMakeLists.txt.
* Update cryptopp to version 8.5.0
2022-01-05 20:05:07 +05:30
1911c9791e
Add libyuv ( #5623 )
...
* Add libyuv
* Only use libyuv on Android
Co-authored-by: Marshall Mohror <mohror64@gmail.com >
2021-12-12 20:22:30 +05:30
64b502aad3
Merge pull request #5810 from vitor-k/discord
...
Port yuzu-emu/yuzu#6484 : "update submodule discord-rpc to latest [now deprecated]"
2021-11-20 21:01:27 +05:30
219eaabbcf
Fix build on powerpc64le ( #5884 )
...
Without compiling ppc-simd.cpp, linking fails with:
: && /usr/bin/c++ -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -isystem /usr/local/include -Wl,--as-needed -fstack-protector-strong -L/usr/local/lib src/tests/CMakeFiles/tests.dir/common/bit_field.cpp.o src/tests/CMakeFiles/tests.dir/common/param_package.cpp.o src/tests/CMakeFiles/tests.dir/core/arm/arm_test_common.cpp.o src/tests/CMakeFiles/tests.dir/core/arm/dyncom/arm_dyncom_vfp_tests.cpp.o src/tests/CMakeFiles/tests.dir/core/core_timing.cpp.o src/tests/CMakeFiles/tests.dir/core/file_sys/path_parser.cpp.o src/tests/CMakeFiles/tests.dir/core/hle/kernel/hle_ipc.cpp.o src/tests/CMakeFiles/tests.dir/core/memory/memory.cpp.o src/tests/CMakeFiles/tests.dir/core/memory/vm_manager.cpp.o src/tests/CMakeFiles/tests.dir/audio_core/decoder_tests.cpp.o src/tests/CMakeFiles/tests.dir/tests.cpp.o -o bin/Release/tests src/common/libcommon.a src/core/libcore.a src/video_core/libvideo_core.a src/audio_core/libaudio_core.a src/core/libcore.a src/video_core/libvideo_core.a src/audio_core/libaudio_core.a externals/soundtouch/libSoundTouch.a externals/teakra/src/libteakra.a /usr/local/lib/libSDL2main.a /usr/local/lib/libSDL2.so externals/cubeb/libcubeb.a -lpthread externals/cryptopp/libcryptopp.a src/web_service/libweb_service.a src/network/libnetwork.a externals/enet/libenet.a externals/libressl/tls/libtls.a externals/libressl/ssl/libssl.a externals/libressl/crypto/libcrypto.a externals/lurlparser/liblurlparser.a /usr/local/lib/libavformat.so /usr/local/lib/libavcodec.so /usr/local/lib/libswscale.so /usr/local/lib/libswresample.so /usr/local/lib/libavutil.so src/common/libcommon.a externals/fmt/libfmt.a externals/zstd/build/cmake/lib/libzstd.a
-pthread /usr/local/lib/libboost_serialization.a externals/glad/libglad.a && :
ld: error: undefined symbol: CryptoPP::CPU_ProbeAltivec()
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(CryptoPP::DetectPowerpcFeatures()) in archive externals/cryptopp/libcryptopp.a
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(_GLOBAL__I_000260) in archive externals/cryptopp/libcryptopp.a
ld: error: undefined symbol: CryptoPP::CPU_ProbePower7()
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(CryptoPP::DetectPowerpcFeatures()) in archive externals/cryptopp/libcryptopp.a
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(_GLOBAL__I_000260) in archive externals/cryptopp/libcryptopp.a
ld: error: undefined symbol: CryptoPP::CPU_ProbePower8()
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(CryptoPP::DetectPowerpcFeatures()) in archive externals/cryptopp/libcryptopp.a
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(_GLOBAL__I_000260) in archive externals/cryptopp/libcryptopp.a
ld: error: undefined symbol: CryptoPP::CPU_ProbeAES()
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(CryptoPP::DetectPowerpcFeatures()) in archive externals/cryptopp/libcryptopp.a
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(_GLOBAL__I_000260) in archive externals/cryptopp/libcryptopp.a
ld: error: undefined symbol: CryptoPP::CPU_ProbeSHA256()
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(CryptoPP::DetectPowerpcFeatures()) in archive externals/cryptopp/libcryptopp.a
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(_GLOBAL__I_000260) in archive externals/cryptopp/libcryptopp.a
ld: error: undefined symbol: CryptoPP::CPU_ProbeSHA512()
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(CryptoPP::DetectPowerpcFeatures()) in archive externals/cryptopp/libcryptopp.a
>>> referenced by cpu.cpp
>>> cpu.cpp.o:(_GLOBAL__I_000260) in archive externals/cryptopp/libcryptopp.a
c++: error: linker command failed with exit code 1 (use -v to see invocation)
ninja: build stopped: subcommand failed.
2021-10-31 14:47:20 -05:00
a5d01c0c15
fix build on glibc 2.34 ( #5872 )
...
* fix build on glibc 2.34
* bump Catch to latest tag and update dynarmic
2021-10-23 18:54:36 +05:30
62236b7257
Update dynarmic ( #5814 )
2021-07-11 20:16:10 +05:30
de9d640de4
update submodule discord-rpc to latest [now deprecated]
2021-07-06 23:56:27 -03:00
18ad3bafb6
Update dynarmic
...
this should allow the cpu jit to run on builds compiled for the M1
2021-05-12 17:30:19 -03:00
63589f4a1b
Re-update catch and dynarmic
2021-04-29 01:34:07 -03:00
48fad3a903
libusb: Add /utf-8 compile option for MSVC.
2021-04-24 02:22:13 -04:00