Commit Graph

667 Commits

Author SHA1 Message Date
Alexandre Bouvier 8789c9321a cmake: support the standard cmake testing option 2023-01-05 05:03:34 +01:00
Alexandre Bouvier eac2672a41 cmake: move find-modules to root cmake dir 2023-01-02 18:22:07 +01:00
liamwhite 69fd6d4117 Merge pull request #9541 from abouvier/cmake-option
cmake: allow options shadowing with normal variables
2023-01-02 11:29:32 -05:00
Alexandre Bouvier 37d8c9a305 cmake: allow options shadowing with normal variables 2023-01-02 02:43:38 +01:00
Alexandre Bouvier d1b330c582 cmake: improve find_package failure messages 2023-01-02 02:27:25 +01:00
Liam 1bde70141a cmake: make Vulkan-Headers external the default 2022-12-28 20:55:32 -05:00
Liam 41ba0d07e6 cmake: make libusb optional 2022-12-28 17:26:46 -05:00
Jan Beich f3412998f0 externals: update Vulkan-Headers to v1.3.238 2022-12-19 17:14:29 +00:00
Andrea Pappacoda c8dae1deb2 build: tweak the find modules even more
As described in
https://github.com/yuzu-emu/yuzu/pull/9395#discussion_r1047456172
checking for PKG_CONFIG_FOUND before calling pkg_search_module() is
unneeded, and some find modules (like FindFFmpeg.cmake) don't do this
already. Consequently, this patch removes these checks.
2022-12-15 11:52:50 +01:00
liamwhite 4287fc218e Merge pull request #9395 from abouvier/cmake-find
cmake: correct find modules
2022-12-06 09:58:55 -05:00
Alexandre Bouvier eccc2ae939 cmake: correct find modules 2022-12-06 05:32:09 +01:00
Alexandre Bouvier 87fef2c12c cmake: prefer system libusb 2022-12-06 05:30:40 +01:00
Morph ff784903a1 externals: Bump dynarmic to 6.4.0
Uses the tagged, versioned release instead.
2022-12-05 13:08:00 -05:00
liamwhite b4ef55753e Merge pull request #6833 from abouvier/unbundle
cmake: prefer system libraries
2022-12-05 12:26:09 -05:00
liamwhite 1ba3ae3f91 Merge pull request #9372 from liamwhite/vk12
vulkan_common: promote extension usages to core when possible
2022-12-04 12:14:06 -05:00
Alexandre Bouvier 325a016cd2 cmake: prefer system libraries 2022-12-04 17:09:25 +01:00
Liam e5ecad8824 yuzu-cmd: link SDL2 correctly 2022-12-04 10:59:58 -05:00
Liam 88ee9ef9ba vulkan_common: clean up extension usage 2022-12-04 10:55:13 -05:00
liamwhite 33d9604ed2 Merge pull request #9375 from jbeich/xbyak-no-install
externals: don't install xbyak as part of yuzu install
2022-12-04 10:46:50 -05:00
Liam 8fbec5d298 externals: update dynarmic, SDL2 2022-12-04 10:12:26 -05:00
Jan Beich 6f5910de45 externals: disable xbyak install targets after 9509fb30a4
Prevent yuzu from trying to install bundled xbyak as it'd likely
conflict with system xbyak package.

Error: Orphaned: include/xbyak/xbyak.h
Error: Orphaned: include/xbyak/xbyak_bin2hex.h
Error: Orphaned: include/xbyak/xbyak_mnemonic.h
Error: Orphaned: include/xbyak/xbyak_util.h
Error: Orphaned: lib/cmake/xbyak/xbyak-config-version.cmake
Error: Orphaned: lib/cmake/xbyak/xbyak-config.cmake
Error: Orphaned: lib/cmake/xbyak/xbyak-targets.cmake
2022-12-03 23:51:18 +00:00
liamwhite c53a3d3f37 Merge pull request #9300 from ameerj/pch
CMake: Use precompiled headers to improve compile times
2022-12-03 14:10:06 -05:00
liamwhite e20c5a0b7f Merge pull request #9289 from liamwhite/fruit-company
general: fix compile for Apple Clang
2022-12-03 12:09:21 -05:00
Matías Locatti 39df80ff00 Merge pull request #9303 from liamwhite/new-vulkan-init
Vulkan: update initialization
2022-12-02 18:32:54 -03:00
lat9nq a54654a308 CMake: Fix FFmpeg find module
Uses find_package_handle_standard_args to handle the find_package call
from the root CMakeLists. Removes all the unnecessary logic after the
find_package and just sets it to REQUIRED.
2022-12-01 00:49:58 -05:00
ameerj 28db650fd6 externals: Update dynarmic
Includes precompiled headers commit
2022-11-29 18:50:49 -05:00
lat9nq 868c5ca1cb CMake: Directly link to SDL2-static when appropriate
Trying to be lazy and alias SDL2 to SDL2-static causes issues in later
versions of CMake. Just use the same condition to tell which one to use.
2022-11-28 23:21:14 -05:00
Liam 0a077cb467 Vulkan: update initialization
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
2022-11-27 14:58:28 -05:00
Liam 8b5172f166 externals: always use LibreSSL on Windows 2022-11-23 10:24:25 -05:00
Liam 5a712bb51a general: fix compile for Apple Clang 2022-11-22 22:22:28 -05:00
Merry 7d80fe0490 dynarmic: Fix stack misalignment in GenMemory128Accessors 2022-11-19 20:10:26 +00:00
Valeri 9355884fee externals: microprofileui: Remove unused variables
Allows yuzu to be built with Clang 15
2022-11-16 20:36:43 +03:00
Liam 9509fb30a4 Initial ARM64 support 2022-11-09 16:58:49 -05:00
Alexandre Bouvier 94f6f6ba20 cmake: Fix FindPkgConfig 2022-09-20 22:21:52 +02:00
Vamsi Krishna 6fcb7b20de Fix Cmake warning for CMP0077 2022-09-04 13:45:33 +05:30
liamwhite a903de9ec8 Merge pull request #8660 from Tachi107/findmodules-pkg-config
build: simplify find modules
2022-08-21 13:42:42 -04:00
liamwhite b0b72f86ba Merge pull request #8730 from lat9nq/fmt-9.0.0
vcpkg,yuzu: Update to fmt 9.0.0
2022-08-07 19:04:24 -04:00
lat9nq bbbd0e7d6f vcpkg: Update and update fmt to 9.0.0 2022-08-07 17:02:06 -04:00
Andrea Pappacoda 89750a0ebf build(externals): rename Findopus to FindOpus
This better matches upstream's FindOpus.cmake file, and it will make
using upstream's FindOpus.cmake file easier.
2022-08-01 12:31:31 +02:00
Merry 58ea0b7e1b externals: Update dynarmic to 6.2.3 2022-07-29 23:07:00 +01:00
Andrea Pappacoda 00617a8cc5 build: simplify find modules
With this patch I've deleted a few find modules that are now unused
since the vcpkg transition, as the CMake code now forces CONFIG mode for
Catch2, fmt and nlohmann_json.

I've then simplified the lz4, opus, and zstd modules by exclusively
using pkg-config. They were using it already, but were ignoring the
result. Also, I believe that manually looking for libraries was required
for Conan to work, and it is thus not needed anymore.

Lastly, I believe that there is no platform that ships these system libs
without pkg-config/pkgconf, so requiring it should be fine.
2022-07-29 22:52:23 +02:00
lat9nq 454e5d67c2 externals: Use yuzu-emu/discord-rpc to provide Discord integration
Our fork includes a commit to disable clang-format, preventing the dirty
flag from being set when building yuzu on CI.
2022-07-28 12:57:05 -04:00
Andrea Pappacoda 6a2efdda2f chore: make yuzu REUSE compliant
[REUSE] is a specification that aims at making file copyright
information consistent, so that it can be both human and machine
readable. It basically requires that all files have a header containing
copyright and licensing information. When this isn't possible, like
when dealing with binary assets, generated files or embedded third-party
dependencies, it is permitted to insert copyright information in the
`.reuse/dep5` file.

Oh, and it also requires that all the licenses used in the project are
present in the `LICENSES` folder, that's why the diff is so huge.
This can be done automatically with `reuse download --all`.

The `reuse` tool also contains a handy subcommand that analyzes the
project and tells whether or not the project is (still) compliant,
`reuse lint`.

Following REUSE has a few advantages over the current approach:

- Copyright information is easy to access for users / downstream
- Files like `dist/license.md` do not need to exist anymore, as
  `.reuse/dep5` is used instead
- `reuse lint` makes it easy to ensure that copyright information of
  files like binary assets / images is always accurate and up to date

To add copyright information of files that didn't have it I looked up
who committed what and when, for each file. As yuzu contributors do not
have to sign a CLA or similar I couldn't assume that copyright ownership
was of the "yuzu Emulator Project", so I used the name and/or email of
the commit author instead.

[REUSE]: https://reuse.software

Follow-up to b2eb103829
2022-07-27 12:53:49 +02:00
lat9nq f88ed711c7 externals: Use GitHub for FFmpeg
FFmpeg's own git repo seems to be down, so switch to GitHub like we use
for most externals.
2022-07-26 18:01:19 -04:00
FearlessTobi 846c50dd42 Address first part of review comments 2022-07-25 21:59:30 +02:00
FearlessTobi 60008b680e yuzu: Add ui files for multiplayer rooms 2022-07-25 21:59:28 +02:00
FearlessTobi 00526e94d1 network: Add initial files and enet dependency 2022-07-25 21:57:14 +02:00
lat9nq 20d760ea99 ci,CMake: Integrate vcpkg into CMakeLists
Uses manifest mode if the bundled vcpkg is used.
2022-07-22 20:54:00 -04:00
Narr the Reg b3f3211405 Merge pull request #8607 from lat9nq/sdl-2.0.20
externals: Revert SDL2 to release-2.0.20
2022-07-21 09:47:52 -05:00
lat9nq 3494446fad externals: Revert SDL2 to release-2.0.20
prerelease-2.23.1 appears to have issues on the SteamDeck with external
controllers. Revert to 2.0.20 for now (and as opposed to using
prerelease-2.0.19 like before.)
2022-07-18 21:43:29 -04:00
Merry b0d9972091 externals: Update dynarmic to 6.2.1
Fix issue with A64CallbackConfigPass
2022-07-17 22:44:34 +01:00
merry bdf6e32aed Merge pull request #8569 from merryhime/watchpoints
dynarmic: Abort watchpoints ASAP
2022-07-17 22:41:28 +01:00
bunnei fcd2f0c02f Merge pull request #8525 from lat9nq/update-sdl
externals/SDL: Update to prerelease-2.23.1
2022-07-17 00:07:20 -07:00
Merry f719a0a078 dynarmic: Abort watchpoints ASAP 2022-07-15 10:03:30 +01:00
Merry 8cc9ff0ebc externals: Update dynarmic to 6.1.1
Fixes for fast dispatcher
2022-07-12 11:31:08 +01:00
lat9nq aedb2281e9 externals/SDL: Update to prerelease-2.23.1
This includes a fix needed for building with MSYS2/MinGW.
2022-06-30 18:56:38 -04:00
Liam 0d04631c1f dynarmic: Stop ReadCode callbacks to unmapped addresses 2022-06-21 20:01:43 -04:00
Liam 8d2abc710c core/debugger: memory breakpoint support 2022-06-16 13:18:07 -04:00
Mai bb0a6faa0a Merge pull request #8383 from Morph1984/shadow-of-the-past
yuzu: Make variable shadowing a compile-time error
2022-06-14 21:08:58 -04:00
Morph b1e2c97172 externals: Update cpp-httplib to latest 2022-06-14 14:09:51 -04:00
Morph 049eb899e9 externals: microprofileui: Eliminate variable shadowing 2022-06-14 05:52:15 -04:00
Liam 79bf4bc3ff general: fix compilation on MinGW GCC 12 2022-06-13 20:09:32 -04:00
Morph ebf9030aa0 externals: microprofile: Eliminate variable shadowing 2022-06-13 18:19:23 -04:00
Alexandre Bouvier a766e7d663 video_core: Support new VkResult 2022-05-17 17:37:10 +02:00
Alexandre Bouvier 9e7973240a sirit: Allow using system spirv-headers 2022-05-14 22:03:23 +02:00
Mai M bffece2295 Merge pull request #8282 from liamwhite/gcc-12
GCC 12 fixes
2022-04-28 23:28:07 -04:00
Liam ee4d63cee5 GCC 12 fixes 2022-04-28 16:50:34 -04:00
Morph a8698cc276 externals: Update libressl to 3.5.2
This resolves compiler errors in Visual Studio 2022.
2022-04-24 14:53:09 -04:00
Liam 4092bde734 Update dynarmic 2022-04-19 15:47:08 -04:00
Fernando S 0bb26a7794 Merge pull request #8148 from merryhime/interrupts
dynarmic: Better interrupts
2022-04-07 16:21:41 +02:00
merry f54345590b dynarmic: Better interrupts 2022-04-03 16:39:48 +01:00
merry 6b8047f18b externals: Update dynarmic to 8bcd46b7
* Ensure 128-bit ordered load/stores are atomic
* Always order exclusive load/stores
2022-04-02 19:34:36 +01:00
merry 795b9fc99f externals: Update dynarmic to 9cadab8fa91a63564774ae7dbe74e7c18715f586
Enforce memory ordering for acquire/release instructions.
2022-04-02 18:52:57 +01:00
Andrea Pappacoda 04380c99e8 audio_core: remove time stretcher
Also drop the SoundTouch dependency
2022-04-01 19:54:58 +02:00
merry 17c1aeda42 externals: Update dynarmic
IC instructions now check for a need to halt execution
2022-03-27 15:37:06 +01:00
Merry b55c891399 dynarmic: Accelerate SHA256 and implement for A32 frontend
* Implements hardware acceleration for SHA256 instructions.
 * Adds SHA256 instructions introduced in ARMv8 to A32 frontend.
 * Implements polyfill for processors that do not support hardware
   accelerated SHA instructions.
2022-03-20 14:06:17 +00:00
Fernando S a4a6aa4b33 Merge pull request #7959 from merryhime/cmpxchg
dynarmic: Inline exclusive memory accesses
2022-03-01 22:50:52 +01:00
Merry da236f22b3 ffmpeg: Fix mis-maching argument warning for endif 2022-02-28 21:08:12 +00:00
merry 4b709cce07 dynarmic: Update to latest master 2022-02-28 20:10:13 +00:00
merry 3fe2c2d40d dynarmic: Inline exclusive memory accesses
Inlines implementation of exclusive instructions into JITted code,
improving performance of applications relying heavily on these
instructions.

We also fastmem these instructions for additional speed, with
support for appropriate recompilation on fastmem failure.

An unsafe optimization to disable the intercore global_monitor is also
provided, should one wish to rely solely on cmpxchg semantics for
safety.

See also: merryhime/dynarmic#664
2022-02-27 19:40:05 +00:00
bunnei de0c647109 externals: Dynarmic: Update to latest rev.
- Fixes inaccurate size reporting in SpaceRemaining, which caused crashes in yuzu with SSBU.
2022-02-26 09:51:41 -08:00
Fernando Sahmkow b752b3325d Update dynarmic. 2022-02-01 15:31:02 +01:00
Moonlacer 71ae167f3a Update FSR to 1.0.2
Updates yuzu's FSR implementation to 1.0.2
2022-01-23 14:38:48 -06:00
Valeri 42efbdc492 Improve FFmpeg cmake file
* Fix compilation if CUDA_INCLUDE_DIRS is empty/contains multiple paths
* Pass CMAKE_{C,CXX}_COMPILER_LAUNCHER to ffmpeg compiler
2022-01-22 12:56:25 +03:00
Alexandre Bouvier 4b791bcad7 cmake: make tests optional 2022-01-12 00:36:20 +01:00
liushuyu 5bce65d4ab externals/dynarmic: update to latest revision ...
... to resolve compilation errors with fmt 8.1
2022-01-06 04:06:43 -07:00
bunnei 13f63ec38a Merge pull request #7610 from Tatsh/more-system-libs
Add support for linking against system Opus
2022-01-04 17:32:35 -08:00
Morph 810ca88634 externals: Update dynarmic to 28714ee7
Reduces compilation times on MSVC.
2021-12-30 22:28:27 -05:00
bunnei d3c26baaf1 Merge pull request #7599 from FernandoS27/primrestart-vulkan
Vulkan: Fix Primitive Restart and implement Logical Operations
2021-12-22 00:19:23 -08:00
Andrew Udvare 60b80eb63d Add support for linking against system opus 2021-12-21 05:05:23 -05:00
bunnei 165de9393f Merge pull request #7587 from liushuyu/fix-linux-decoding
[Patch v2] externals/ffmpeg: refactor ffmpeg searching and handling in cmake
2021-12-18 02:33:07 -08:00
Fernando Sahmkow 790bbcb016 Vulkan: Implement VK_EXT_primitive_topology_list_restart 2021-12-18 05:47:48 +01:00
Andrew Udvare f08afbb11e externals/SDL: update SDL to version with Wayland build fix 2021-12-17 09:38:46 -05:00
Andrew Udvare df677c8e92 externals/CMakeLists: fix detection/init of Switch controllers in SDL 2.0.18
Enable SDL_THREADS and SDL_ATOMIC
Also set SDL_WAYLAND=OFF due to build issue

Closes #7572
2021-12-16 21:49:39 -05:00
liushuyu e962e791eb externals/ffmpeg: set the cmake variable twice ...
... to avoid leaving variable undefined in the current scope
2021-12-15 21:17:33 -07:00
liushuyu 9885209b9f externals: fix a regression when using MSVC 2021-12-15 20:57:01 -07:00
liushuyu f722e83537 video_core/codecs: (re-spin) refactor ffmpeg searching and handling 2021-12-15 20:57:01 -07:00
bunnei 15a4248f46 Revert "video_core/codecs: refactor ffmpeg searching and handling in cmake" 2021-12-15 00:02:53 -08:00
liushuyu 538db2d872 CI: fix CI on Linux 2021-12-13 22:31:19 -07:00
liushuyu 3f9ff5ca17 ffmpeg: move the whole tree into externals/ffmpeg/ffmpeg ...
* this resolves the todo items in the CMakeLists.txt
* a version requirement check for ffmpeg is added to catch issues early
* for future-proof reasons, nasm/yasm is now only required when build on
  x86/AMD64 systems
2021-12-13 17:48:05 -07:00
Mai M f786bbfde2 Merge pull request #7554 from Tachi107/build-remove-unicorn
build: remove remaining bits of Unicorn
2021-12-13 08:24:47 -05:00
bunnei 42852a6793 Merge pull request #7527 from Tachi107/cubeb-result_of
build: update cubeb and remove the result_of comment
2021-12-12 22:44:05 -08:00
Andrea Pappacoda d87bd3fd57 build: remove remaining bits of Unicorn
Unicorn has been removed in 5c55f3b585
2021-12-10 12:25:04 +01:00
Narr the Reg 2568d5368f input_common: Update SDL to 2.0.18 2021-12-06 14:48:36 -06:00
Andrea Pappacoda 7daf85271b build: update cubeb and remove the result_of comment
Cubeb doesn't use result_of anymore, it has been dropped in commit
mozilla/cubeb@75d9d125ee
2021-12-06 18:56:43 +01:00
Marshall Mohror 71e8b72b01 Vulkan: Reimplement FSR constant generation functions to avoid GCC warnings 2021-11-16 22:11:33 +01:00
Marshall Mohror c2f855fb98 Presentation: Only use FP16 in scaling shaders on supported devices in Vulkan 2021-11-16 22:11:32 +01:00
ameerj c81ced43ae externals: Add only included ffx-fsr headers
The submodule adds a lot of unneeded bloat due its addition of samples that contain large media files that are difficult to compress.
2021-11-16 22:11:31 +01:00
Morph 79620e22e1 externals: Update dynarmic to cce7e4ee 2021-10-12 14:39:16 -04:00
Morph ca8400ec1d externals: Remove libzip 2021-09-28 23:18:39 -04:00
Merry 1aa44659ce dynarmic: Update and enable DYNARMIC_IGNORE_ASSERTS 2021-08-15 19:33:02 +01:00
Merry 891e19ef4c xbyak: Update include path 2021-08-15 19:26:38 +01:00
german77 51d94e7bea externals: Update sdl2 to 2.0.16 2021-08-10 19:16:30 -05:00
Ameer J 3931f05bf1 Merge pull request #6565 from lat9nq/bundle-ffmpeg
cmake, ci: Build bundled FFmpeg with yuzu
2021-08-01 01:34:10 -04:00
ReinUsesLisp 65069df8aa shader: Remove old shader management 2021-07-22 21:51:22 -04:00
ReinUsesLisp 605783f828 spirv: Initial bindings support 2021-07-22 21:51:22 -04:00
ReinUsesLisp 60342eb0c0 shader: Add support for forward declarations 2021-07-22 21:51:22 -04:00
ReinUsesLisp c4d75e4b78 shader: Initial implementation of an AST 2021-07-22 21:51:22 -04:00
ReinUsesLisp 5ee600cf64 spirv: Initial SPIR-V support 2021-07-22 21:51:22 -04:00
lat9nq 6340c4801f emu_window_sdl2_vk: Use the generated SDL config
On Linux, due to the way we include SDL2 as a submodule, it makes it
difficult for us to specify which SDL_config.h we intended to include.
Before, CMake would default to the dummy one included with SDL and
ignore the generated one.

This tells CMake to use the generated one. In addition, we define
USING_GENERATED_CONFIG_H to throw an error in case the dummy config is
used by accident. Fixes Vulkan not working on Linux yuzu-cmd.
2021-07-16 15:43:02 -04:00
lat9nq cea7e42223 cmake: Specify the compiler on autotools externals
Enables CCache on externals if available.
2021-07-06 12:54:24 -04:00
Ameer J 00232f761a Merge pull request #6459 from lat9nq/ubuntu-fixes
cmake: Improve Linux dependency checking for externals
2021-06-30 21:47:57 -04:00
MerryMage 7fb0dbf195 libusb: Apple is a POSIX system 2021-06-26 20:24:18 +01:00
Lioncash fe19f98dd0 externals: Update dynarmic to allow fmt compilation to succeed 2021-06-23 09:31:59 -04:00
bunnei 3fb11c6e77 Merge pull request #6499 from FernandoS27/we-were-on-a-break
Update dynarmic and add new unsafe CPU option.
2021-06-21 14:56:08 -07:00
Fernando Sahmkow 1592ec32bc Update dynarmic and add new unsafe CPU option. 2021-06-20 20:40:02 +02:00
Vortex b0965d25b9 externals: httplib: replace custom httplib header with upstream as submodule.
This also includes a minor change to web_service.cpp - to fix compatibility with upstream changes.
2021-06-19 02:18:58 +05:30
Vortex 425cb74238 update submodule discord-rpc to latest [now deprecated] 2021-06-18 23:13:17 +05:30
bunnei 3e33ea27dc Merge pull request #6418 from clementgallet/sdl-audio-backend
Audio: SDL2 audio backend
2021-06-16 21:38:20 -07:00
lat9nq c902147d82 cmake: Fix find_program usage for 3.15
yuzu requires CMake 3.15 yet find_program was using REQUIRED, which is
only available on 3.18 and later. Instead, we check for
"<VAR>-NOTFOUND".

In addition, check for additional requirements before building libusb or
FFmpeg with autotools. Otherwise, CMake configuration will pass yet
compilation will fail.
2021-06-13 01:15:54 -04:00
lat9nq 9e98d307a1 externals: Don't set FOUND or VERSION on LIBUSB
Fixes an issue where libusb.h wouldn't be found when building yuzu on
MSVC.

This only affects the "traditional" CMake pathway for linking libusb to
yuzu AKA MSVC. For autotools we still want to set these variables before
configuring SDL.
2021-06-11 16:57:04 -04:00
Markus Wick 99f6d60a99 core: Make use of fastmem 2021-06-11 17:27:06 +02:00
lat9nq 79090c34bf externals: Update SDL to 2f248a2a 2021-06-11 04:40:16 -04:00
bunnei 78d9caa5df Merge pull request #6407 from lat9nq/fix-libusb-2
cmake: Use autotools for libusb linking generally on GNU, and cleanup
2021-06-10 23:35:30 -07:00
Clément Gallet 34848e5eda Add SDL2 audio backend 2021-06-06 11:28:38 +02:00
ReinUsesLisp 752f3b8d6b externals: Update dynarmic 2021-06-05 15:24:12 -03:00
lat9nq 0033535d4c externals: libusb: Call program names not full paths 2021-06-03 04:53:01 -04:00
lat9nq cfecc4f2b2 externals: libusb: Link libusb statically on Linux
Turns out that this is possible. Also addresses my own review comment.
2021-06-03 04:38:29 -04:00
lat9nq 21d81ee941 cmake: General improvements to libusb linking
Delegates libusb external communication to externals/CMakeLists.txt
Ensures an interface library `usb` for every pathway
input_common just links to the `usb` library now
externals/libusb/CMakeLists.txt sets variables to override SDL2's libusb
finding
Other minor cleanup
2021-06-03 03:49:35 -04:00
lat9nq de8359be36 cmake: Use autotools to build libusb generally for GNU
Building libusb was also broken on GCC (and maybe Clang) on our
CMakeLists after upgrading to 1.0.24, but it was not being checked
because our 18.04 container had libusb installed on it.
This builds on the MinGW work from earlier and extends it to the rest of
the GNU toolchains. In addition we make use of pkg-config when present
to find libusb. pkg-config is preferrable because we can specify a
minimum required version.
2021-06-03 02:49:53 -04:00
lat9nq f84b96908e externals: Use defaults for building SDL2 on WIN32
Whatever those settings do breaks controller detection on Windows, at
least with the MinGW container. If-guard it against WIN32 and just let
SDL2 configure using its defaults, aside from static linking.
2021-05-31 15:26:25 -04:00
lat9nq a075dc1304 externals: libusb: Use autotools for MinGW
After updating to 1.0.24, MinGW fails to build libusb as a result of
numerous errors. So we build libusb their way and let them update the
nontrivial stuff.

This only applies to MinGW: the old path is still in use for Linux
toolchains as well as MSVC.

This will dynamically link libusb, since I hit build errors with the old
way we used to resolve the conflict with SDL2.
2021-05-31 13:57:06 -04:00
bunnei 3ce92348e4 Merge pull request #6344 from german77/update-libusb
Update libusb to 1.0.24
2021-05-30 01:36:46 -07:00
Markus Wick 6203af4169 externals: Update dynarmic.
The new version supports fastmem on a64.
2021-05-29 08:53:01 +02:00
german77 a5720f0747 Update libusb to 1.0.24 2021-05-20 22:10:48 -05:00
Morph a13ffd5201 Merge pull request #6293 from v1993/master
On Linux, build SDL2 from externals with HIDAPI support
2021-05-16 04:05:42 -04:00
Ameer J a9c9d56a35 Merge pull request #6300 from Morph1984/mbedtls
externals: Update mbedtls to 8c88150ca
2021-05-13 23:11:32 -04:00
lat9nq 4a4884b4c8 externals: Checkout 79e8d17024 for FFmpeg
6b6b9e593d does not exist on FFmpeg master, and tag n4.3.1 requires
manually fetching all of FFmpeg's tags. `git` reports that the commit
does not exist initially and can be confusing as a result. Instead,
checkout the immediately previous commit from n4.3.1 on their master
branch.
2021-05-13 04:53:59 -04:00
Morph a0540386e8 externals: Update mbedtls to 8c88150ca 2021-05-11 00:43:04 -04:00
v1993 7057f867a4 Only build SDL2 subsystems that we use
While at it, use better way to enable HIDAPI.
2021-05-10 01:11:54 +03:00
v1993 ed9443a696 On Linux, build SDL2 from externals with HIDAPI support 2021-05-09 18:12:58 +03:00
lat9nq b7b716ff5e externals: Use SDL2 statically
Building it as a shared library causes issues distributing it to an
AppImage, since linuxdeploy expects the executable to only dynamically
link to system libraries. Additionally, simply dynamically linking to a
library in the binary directory is bound to cause issues.

Solution is to use SDL's CMake switches and build it statically. We also
alias `SDL2` to `SDL2-static` on the external submodule for
compatibility with the rest of the project.
2021-05-09 02:38:46 -04:00
lat9nq 401dfe53fa externals: Update SDL to 107db2d8
In light of 627cb430b4, the SDL submodule also needs updated. Updates
to the same commit used by the SDL package in ext-windows-bin.
2021-05-09 01:36:17 -04:00
lat9nq c8a26a2cbf cmake: Use SDL 2.0.14 and fix CMake scope issue
Forces using SDL 2.0.14. Upgrades the SDL external to that version. Adds
a message when switching to the external.

Fixes an error where input_common only links to SDL when SDL2_FOUND is
set, but externals/CMakeLists cannot set that variable to the required
scope. Switch to using ENABLE_SDL2, which we can use since we now
include the SDL source.
2021-04-17 23:42:57 -04:00
lat9nq 688720e9a7 externals: Add SDL 2.0.12
Since Bintray is (soon to be) no more, there needs to be a way to
acquire SDL2. Since 20.04's version is older than our minimum required
version (2.0.12), add it as an external.
2021-04-16 19:12:47 -04:00
MerryMage d544f3d92b externals: Update dynarmic to b2a4da5e 2021-04-11 15:39:45 +01:00
Markus Wick 2953f841dd externals: Search for shared opus installation.
We had used conan for opus before, but there was a bug in the AVX detection.
However we still had the Findopus.cmake file within the repository, but not used.

This patch reenables the Findopus helper and prefer the system wide installation of opus.
2021-04-08 23:49:32 +02:00
MerryMage 62b59f3588 arm_dynarmic: Increase size of code cache 2021-04-02 18:09:15 +01:00
bunnei f738babbb5 Merge pull request #6129 from degasus/cmake_libzip
externals/cmake: Fix case spelling of libzip.
2021-04-01 23:06:36 -07:00
Markus Wick 4a9fadecfe externals: Fix case spelling of libzip.
CMake is case senstive, so Libzip vs LIBZIP was a bug.
Upstream calls themself libzip, so let's pick this naming.
2021-04-02 00:30:13 +02:00
bunnei a895f930f9 externals: dynarmic: Update to latest rev. to increase code size.
- The current limits are being hit in yuzu with some games.
- This should fix the slowdowns in newer updates for Super Smash Bros. Ultimate.
2021-04-01 13:23:12 -07:00
MerryMage 03c692a995 externals: Update dynarmic to c28f13af
AVX-512 bugfixes
2021-03-27 21:34:20 +00:00
Morph ab1fcde561 externals/libusb/CMakeLists: Add /utf-8 compile option for MSVC 2021-03-15 10:51:46 -04:00
Lioncash e1399faa69 external: Update dynarmic 2021-03-08 00:44:54 -05:00
Morph 4cb149cbda externals: Update mbedtls to 2.16.9
mbedtls 2.16 is the last version which has licensing for GPL 2.0. This updates mbedtls to our own fork of mbedtls 2.16
2021-03-05 02:05:05 -05:00
Kelebek1 f924b0efce Implement glDepthRangeIndexeddNV 2021-02-24 22:26:53 +00:00
lat9nq 8b9a4284e4 externals: Update dynarmic to latest
Updates dynarmic to its latest commit. Includes a fix for argument
limits while compiling with Clang 12.
2021-02-18 14:44:49 -05:00
lat9nq 45f85f9bb8 ffmpeg: Checkout tag n4.3.1
Target a specific release version rather than some random development
commit.
2021-02-06 03:19:07 -05:00
lat9nq 9fd1b2c406 CMakeLists: Use bundled FFmpeg as a fallback
Sets YUZU_USE_BUNDLED_FFMPEG as a CMake dependent option that is OFF on
Linux and ON for WIN32 targets. If FFmpeg is not found when
YUZU_USE_BUNDLED_FFMPEG is OFF, the bundled module/binaries are used
instead.

Reverts earlier changes to FindFFmpeg a bit, mostly to keep parity with
it's Citra version a bit. Now _FFmpeg_ALL_COMPONENTS lists all
components. We overwrite FFmpeg_LIBRARIES and FFmpeg_INCLUDE_DIR after
using the module.
2021-02-06 03:17:36 -05:00
lat9nq 1eaff4546b CMake: Port citra-emu/citra FindFFmpeg.cmake
Also renames related CMake variables to match both the Find*FFmpeg* and
variables defined within the file. Fixes odd errors produced by the old
FindFFmpeg.

Citra's FindFFmpeg is slightly modified here: adds Citra's copyright at
the beginning, renames FFmpeg_INCLUDES to FFmpeg_INCLUDE_DIR, disables a
few components in _FFmpeg_ALL_COMPONENTS, and adds the missing avutil
component to the comment above.
2021-02-05 15:39:19 -05:00
lat9nq 9cba9a5d09 externals: Add submodule ffmpeg 2021-02-05 13:41:45 -05:00
bunnei 89fe4e8a96 externals: Dynarmic: Update to latest to include A32 ISB hook.
- Fixes perf. issues with Megadimension Neptunia VII.
2021-01-29 16:36:45 -08:00
MerryMage 8436cae309 externals: Update dynarmic to 0f27368f 2021-01-26 23:46:49 +00:00
MerryMage 2cb40a4bb2 externals: Update dynarmic to 3806284cb 2021-01-02 20:42:11 +00:00
MerryMage c535205f1c dynarmic: Add Unsafe_InaccurateNaN optimization 2021-01-02 20:13:21 +00:00
ReinUsesLisp 8e4afdb821 externals: Update Dynarmic
Keeps yuzu up to date with the latest changes and introduces a change
needed for a lock-free optimization our side.
2020-12-29 19:30:52 -03:00
ReinUsesLisp 4df8b8a0f5 cmake: Always enable Vulkan
Removes the unnecesary burden of maintaining separate #ifdef paths and
allows us sharing generic Vulkan code across APIs.
2020-12-24 21:07:24 -03:00
Vitor Kiguchi 31a3bf1b8c Update cubeb and request a persistent stream session 2020-12-05 22:26:41 +01:00
Lioncash 5c55f3b585 core: Remove usage of unicorn
Unicorn long-since lost most of its use, due to dynarmic gaining support
for handling most instructions. At this point any further issues
encountered should be used to make dynarmic better.

This also allows us to remove our dependency on Python.
2020-11-03 20:22:05 -05:00
Lioncash 90f5c930f5 microprofile: Silence warning in headers
Silences a truncation warning by making the truncation explicit and
documenting the reason for it.
2020-11-03 15:07:13 -05:00
Lioncash 38ffaef6eb common: Enable warnings as errors
Cleans up common so that we can enable warnings as errors.
2020-11-02 15:50:58 -05:00
liushuyu 0555d8ac94 web_service: follow-up fix to #4842 ...
* The web_service http request is now fixed on Windows (R) platform.
* The issue is due to a complicated race-condition in `httplib`, a detailed
  explanation is available at https://github.com/yhirose/cpp-httplib/pull/701
* A pending Pull Request on `httplib` has been applied to remedy the
  said race-condition.
* The socket availability check is removed due to a behavioral chice of
  `httplib` that a socket will not be created before any actual request
  is sent.
2020-10-28 23:16:06 -06:00
bunnei eb3dfeb51b Merge pull request #4845 from lioncash/inih
externals: Track upstream inih
2020-10-28 09:58:58 -07:00
Lioncash 8196b2d7dd externals: Update inih to r52 2020-10-27 19:52:48 -04:00
liushuyu 2b96ae4449 externals: auto detect system OpenSSL 2020-10-27 14:20:20 -06:00
liushuyu 6be4451e39 web_backend: fix a regression introduced in 16de0a6
* A regression was in 16de0a6 and token verification function was
  broken.
* The 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.
2020-10-27 02:57:19 -06:00
ameerj 9ef5c53e52 video_core: NVDEC Implementation
This commit aims to implement the NVDEC (Nvidia Decoder) functionality, with video frame decoding being handled by the FFmpeg library.

The process begins with Ioctl commands being sent to the NVDEC and VIC (Video Image Composer) emulated devices. These allocate the necessary GPU buffers for the frame data, along with providing information on the incoming video data. A Submit command then signals the GPU to process and decode the frame data.

To decode the frame, the respective codec's header must be manually composed from the information provided by NVDEC, then sent with the raw frame data to the ffmpeg library.

Currently, H264 and VP9 are supported, with VP9 having some minor artifacting issues related mainly to the reference frame composition in its uncompressed header.

Async GPU is not properly implemented at the moment.

Co-Authored-By: David <25727384+ogniK5377@users.noreply.github.com>
2020-10-26 23:07:36 -04:00
bunnei deb3536936 Revert "core: Fix clang build" 2020-10-20 19:07:39 -07:00
Lioncash 18636013c9 core: Fix clang build
Recent changes to the build system that made more warnings be flagged as
errors caused building via clang to break.

Fixes #4795
2020-10-17 19:50:39 -04:00
Lioncash 16de0a6a96 core/CMakeLists: Make some warnings errors
Makes our error coverage a little more consistent across the board by
applying it to Linux side of things as well. This also makes it more
consistent with the warning settings in other libraries in the project.

This also updates httplib to 0.7.9, as there are several warning
cleanups made that allow us to enable several warnings as errors.
2020-10-13 13:16:49 -04:00
bunnei e5693e9c3a Merge pull request #4611 from lioncash/xbyak2
externals: Update Xbyak to 5.96
2020-09-03 20:24:27 -04:00
Lioncash 8f60281ff9 externals: Work around libusb duplicate GUID errors
Given we have two libraries that seem to use the same identifier, we can
alter one of them so that the variable is used in place, effectively
changing the used identifier, but without altering the source of
libusb.
2020-09-02 19:32:19 -04:00
bunnei 2e420d2a58 Merge pull request #4584 from lioncash/libusb
externals: Track upstream libusb directly
2020-09-01 23:47:52 -04:00
bunnei b4f41bde91 Merge pull request #4587 from yuzu-emu/tsan-microprofiler
externals/microprofile: Fix data race in g_bUseLock
2020-08-31 21:20:08 -04:00
Lioncash 1233d14175 externals: Update Xbyak to 5.96
I made a request on the Xbyak issue tracker to allow some constructors
to be constexpr in order to avoid static constructors from needing to
execute for some of our register constants.

This request was implemented, so this updates Xbyak so that we can make
use of it.
2020-08-30 05:09:48 -04:00
Lioncash 0b10f86706 externals: Track upstream libusb
We can place the external in an inner folder and manage the custom files
necessary to integrate it with CMake directly. This allows us to
directly change how we use it with our build system, as opposed to
needing to change a fork.
2020-08-26 02:45:11 -04:00
ReinUsesLisp 56b58b8f8b externals/microprofile: Fix data race in g_bUseLock
As reported by tsan, g_bUseLock had a data race. Fix this using an
atomic boolean.
2020-08-26 02:47:54 +00:00
Lioncash a90b1235ad externals: Untrack non-upstream variant of libusb
We shouldn't be tracking personal forks of repositories when upstream
can be managed directly.
2020-08-25 22:19:15 -04:00
Lioncash b4081937a5 externals: Update Xbyak to 5.95
5.95 contains a potentially backward-compatibility breaking change, so
we should be updating to this to ensure that our code remains
forward-compatible.
2020-08-25 18:16:52 -04:00
bunnei ce74cce2ea Merge pull request #4572 from lioncash/xbyak
externals: Update xbyak to v5.941
2020-08-25 11:24:32 -04:00
Lioncash 6ab6ce5be5 externals: Update xbyak to v5.941
Keeps the tracked submodule up to date with the latest release.
2020-08-23 22:47:41 -04:00
Lioncash 72f6214e9b microprofile: Don't memset through std::atomic types
Two of the members of the MicroProfileThreadLog contains two std::atomic
instances. Given these aren't trivially-copyable types, we shouldn't be
memsetting the structure, given implementation details can contain other
members within it.

To avoid potential undefined behavior on platforms, we can use aggregate
initialization to zero out the members while still having well-defined
behavior.

While we're at it we can also silence some sign conversion warnings.
2020-08-23 21:19:01 -04:00
MerryMage 1057908c3a dynarmic: Add unsafe optimizations 2020-08-16 14:15:39 +01:00
MerryMage 79dfd272a9 configuration: Add settings to enable/disable specific CPU optimizations 2020-07-11 14:34:09 +01:00
bunnei b84af2cd28 Merge pull request #4266 from jbeich/freebsd
gcadapter: unbreak build on FreeBSD
2020-07-08 16:30:26 -04:00
bunnei 2c57273505 Merge pull request #4150 from ReinUsesLisp/dynamic-state-impl
vulkan: Use VK_EXT_extended_dynamic_state when available
2020-07-07 10:58:09 -04:00
Jan Beich 38bd1cc168 cmake: unbreak system libusb support
Reference libusb doesn't support DragonFly and FreeBSD because those
ship a different libusb implementation (supports 0.1, 1.0, 2.0 API).

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(usbi_alloc_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(usbi_alloc_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_has_capability) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_has_capability) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_has_capability) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(usbi_connect_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(usbi_disconnect_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_get_device_list) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_get_device_list) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_unref_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_unref_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_write
>>> referenced by core.c
>>>               core.c.o:(usbi_signal_event) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_read
>>> referenced by core.c
>>>               core.c.o:(usbi_clear_event) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_wrap_sys_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_wrap_sys_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_wrap_sys_device) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_open) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_backend
>>> referenced by core.c
>>>               core.c.o:(libusb_open) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_read
>>> referenced by core.c
>>>               core.c.o:(libusb_close) in archive externals/libusb/libusb.a

ld: error: undefined symbol: usbi_write
>>> referenced by core.c
>>>               core.c.o:(libusb_close) in archive externals/libusb/libusb.a

ld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
c++: error: linker command failed with exit code 1 (use -v to see invocation)
2020-07-07 10:13:18 +00:00
Ameer 5c4f797cab Fix merge conflicts? 2020-07-04 00:59:40 -04:00
David Marcec 2961282fae externals: Track opus as submodule instead of using conan
Supersedes #4068 see for details.
2020-07-01 15:09:33 +10:00
Fernando Sahmkow 8cd81eb66f SVC: Implement 32-bits wrappers and update Dynarmic. 2020-06-27 11:36:27 -04:00
Fernando Sahmkow fd631d72a6 ARM: Update Dynarmic and Setup A32 according to latest interface. 2020-06-27 11:36:26 -04:00
Fernando Sahmkow 3a6e6b2348 Externals: Update Dynarmic. 2020-06-27 11:36:19 -04:00
Fernando Sahmkow 6cbdb64f3d ARMInterface/Externals: Update dynarmic and fit to latest version. 2020-06-27 11:36:13 -04:00
ReinUsesLisp bcf4665fb0 vk_device: Enable VK_EXT_extended_dynamic_state when available 2020-06-26 20:55:15 -03:00
Ameer a4a44e8081 update libusb dependency 2020-06-22 17:05:57 -04:00
ameerj 14bb562028 Update src/input_common/main.cpp
Co-authored-by: LC <mathew1800@gmail.com>

update libusb submodule (hopefully windows build error fixed)
2020-06-22 17:05:50 -04:00
Ameer c506cb494f Add libusb dependency 2020-06-21 12:39:15 -04:00
bunnei 4bca92c41e externals: Revert to libressl, as build is broken with find_package(OpenSSL). (#4093)
* externals: Revert to libressl, as build is broken with find_package(OpenSLL).

* fixup! externals: Revert to libressl, as build is broken with find_package(OpenSLL).

* fixup! externals: Revert to libressl, as build is broken with find_package(OpenSLL).
2020-06-16 21:46:19 -04:00
MerryMage 74bf8f0e05 CMakeLists: xbyak comes before dynarmic 2020-06-15 22:37:27 +01:00
ReinUsesLisp cdc76c7bc2 vk_shader_decompiler: Implement atomic image operations
Implement atomic operations on images.
On GLSL these are atomicImage* functions (e.g. atomicImageAdd).
2020-06-02 02:20:02 -03:00
David Marcec 4686c15c03 Add xbyak external 2020-05-30 10:55:27 +10:00
ReinUsesLisp 5db0df833a shader/other: Implement BAR.SYNC 0x0
Trivially implement this particular case of BAR. Unless games use OpenCL
or CUDA barriers, we shouldn't hit any other case here.
2020-05-21 23:20:43 -03:00
Markus Wick 3dc9eec98d Add version check to Findnlohmann_json.cmake 2020-05-09 12:47:59 +02:00
Markus Wick 585ee1cf4e Add version check for catch2 2020-05-09 12:47:59 +02:00
Markus Wick c5dfc3ee1d Add version check to Findfmt 2020-05-09 12:47:59 +02:00
Markus Wick a2256f0ebf Fix libzip version check 2020-05-09 12:47:59 +02:00
Markus Wick 121b8fd02b Check for the zstd version 2020-05-09 12:43:42 +02:00
James Rowe 2991e7441a Replace externals with Conan (#3735)
* Remove git submodules that will be loaded through conan

* Move custom Find modules to their own folder

* Use conan for downloading missing external dependencies

* CI: Change the yuzu source folder user to the user that the containers run on

* Attempt to remove dirty mingw build hack

* Install conan on the msvc build

* Only set release build type when using not using multi config generator

* Re-add qt bundled to workaround an issue with conan qt not downloading prebuilt binaries

* Add workaround for submodules that use legacy CMAKE variables

* Re-add USE_BUNDLED_QT on the msvc build bot
2020-05-08 17:09:29 -04:00
ReinUsesLisp 151b3e5622 externals: Update Vulkan-Headers 2020-05-04 16:40:38 -03:00
bunnei e150427da3 Merge pull request #3827 from ogniK5377/cubeb-616d773
externals: Update cubeb to 616d773
2020-04-30 22:02:30 -04:00
bunnei e043a955f1 Merge pull request #3799 from ReinUsesLisp/iadd-cc
shader: Implement P2R CC, IADD Rd.CC and IADD.X
2020-04-30 12:56:36 -04:00
David Marcec d4feb11249 externals: Update cubeb to 616d773
Support for 6 audio channels
2020-04-30 00:33:02 +10:00
MerryMage 0f231b7f3d externals: Update dynarmic to e7166e8b 2020-04-29 14:25:53 +01:00
ReinUsesLisp 7e8f51273c shader/arithmetic_integer: Implement CC for IADD 2020-04-25 22:55:26 -03:00
bunnei 9c753735c5 Merge pull request #3697 from lioncash/declarations
CMakeLists: Enable -Wmissing-declarations on Linux builds
2020-04-23 02:18:52 -04:00
H27CK 463a287317 Set _FORTIFY_SOURCE=0 if building Opus with mingw-w64 2020-04-22 08:20:12 +02:00
MerryMage 0bbafff3db dynarmic: Add option to disable CPU JIT optimizations 2020-04-20 13:36:26 +01:00
Lioncash b250791362 externals: Update fmt to 6.2.0
Keeps the library up to date.
2020-04-17 17:19:13 -04:00
bunnei a57e2ced66 externals: Update to latest dynarmic.
- Adds memory alignment fixes.
2020-04-17 00:59:28 -04:00
Lioncash eaeb4520f7 General: Resolve warnings related to missing declarations 2020-04-16 23:43:34 -04:00
Markus Wick 91ff5f13b1 externals: Use shared libraries if possible
This is mostly done by pkgconfig.
I've focused on the larger and more stable libraries.
2020-04-16 17:03:17 +02:00
Markus Wick 3567e464d2 externals: Move LibreSSL linking to httplib.
Neither core nor web_services use OpenSSL nor LibreSSL.
However they need to link them as it's a requirement of httplib.
So let's declare this within httplib instead of core and web_services.
2020-04-16 16:46:33 +02:00
ReinUsesLisp 40ef0d3b28 renderer_vulkan: Drop Vulkan-Hpp 2020-04-10 22:49:02 -03:00
ReinUsesLisp da75690ac9 microprofile: Silence sign comparison warning 2020-03-18 20:03:19 -03:00
Fernando Sahmkow 111ebc6339 Microprofile: Allow accessing token. 2020-03-12 10:50:48 -04:00
Brian Clinkenbeard 1d34ed696b fix issue with windows getnameinfo() 2020-02-19 16:16:49 -08:00
Brian Clinkenbeard b33889a1fe update httplib to latest commit 2020-02-18 17:11:40 -08:00
Brian Clinkenbeard b343bf76ad update httplib README 2020-02-17 22:54:09 -08:00
Brian Clinkenbeard 6ffa4d2a11 0.4.2 works too 2020-02-17 22:53:25 -08:00
Brian Clinkenbeard 0e13b86170 update httplib to 0.2.6 2020-02-17 20:13:24 -08:00