Commit graph

450 commits

Author SHA1 Message Date
Alexandre Bouvier 8e17b5469f cmake: prefer system libraries 2022-12-04 17:09:25 +01:00
liamwhite f4b5570e7c
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 6d2c597371 externals: update dynarmic, SDL2 2022-12-04 10:12:26 -05:00
Jan Beich 14440b195c externals: disable xbyak install targets after cbaf642ffe
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 75e16547f8
Merge pull request #9300 from ameerj/pch
CMake: Use precompiled headers to improve compile times
2022-12-03 14:10:06 -05:00
liamwhite 22aff09b33
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 c043ba8467
Merge pull request #9303 from liamwhite/new-vulkan-init
Vulkan: update initialization
2022-12-02 18:32:54 -03:00
lat9nq 5ff19890e9 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 5695ae6bdd externals: Update dynarmic
Includes precompiled headers commit
2022-11-29 18:50:49 -05:00
lat9nq 0941ae0b61 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 2956a33463 Vulkan: update initialization
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
2022-11-27 14:58:28 -05:00
Liam cdb2e4eaff externals: always use LibreSSL on Windows 2022-11-23 10:24:25 -05:00
Liam 9737615948 general: fix compile for Apple Clang 2022-11-22 22:22:28 -05:00
Merry 344e171cc7 dynarmic: Fix stack misalignment in GenMemory128Accessors 2022-11-19 20:10:26 +00:00
Valeri fa660190ff
externals: microprofileui: Remove unused variables
Allows yuzu to be built with Clang 15
2022-11-16 20:36:43 +03:00
Liam cbaf642ffe Initial ARM64 support 2022-11-09 16:58:49 -05:00
Alexandre Bouvier 09a87966e0 cmake: Fix FindPkgConfig 2022-09-20 22:21:52 +02:00
Vamsi Krishna 016fa3ffee
Fix Cmake warning for CMP0077 2022-09-04 13:45:33 +05:30
liamwhite b99596e312
Merge pull request #8660 from Tachi107/findmodules-pkg-config
build: simplify find modules
2022-08-21 13:42:42 -04:00
liamwhite 167d948ce1
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 795ccc058d vcpkg: Update and update fmt to 9.0.0 2022-08-07 17:02:06 -04:00
Andrea Pappacoda adc8c03fe4
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 8c933beb48 externals: Update dynarmic to 6.2.3 2022-07-29 23:07:00 +01:00
Andrea Pappacoda 064625ef58
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 58bc6125d7 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 cdb240f3d4
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 01cf05bc75
2022-07-27 12:53:49 +02:00
lat9nq bf14790f08 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 6c8e456185 Address first part of review comments 2022-07-25 21:59:30 +02:00
FearlessTobi 705f7db84d yuzu: Add ui files for multiplayer rooms 2022-07-25 21:59:28 +02:00
FearlessTobi dcfe0a5feb network: Add initial files and enet dependency 2022-07-25 21:57:14 +02:00
lat9nq 265d1d6979 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 bcd0ca6076
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 f5964fe2a9 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 b4ee3fa39a externals: Update dynarmic to 6.2.1
Fix issue with A64CallbackConfigPass
2022-07-17 22:44:34 +01:00
merry 09300abe92
Merge pull request #8569 from merryhime/watchpoints
dynarmic: Abort watchpoints ASAP
2022-07-17 22:41:28 +01:00
bunnei e4eb7acd49
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 40e39ddd46 dynarmic: Abort watchpoints ASAP 2022-07-15 10:03:30 +01:00
Merry adc617ccc4 externals: Update dynarmic to 6.1.1
Fixes for fast dispatcher
2022-07-12 11:31:08 +01:00
lat9nq 4f847621af 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 1fd194141a dynarmic: Stop ReadCode callbacks to unmapped addresses 2022-06-21 20:01:43 -04:00
Liam 208ed712f4 core/debugger: memory breakpoint support 2022-06-16 13:18:07 -04:00
Mai 103997ee56
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 7620e1a631 externals: Update cpp-httplib to latest 2022-06-14 14:09:51 -04:00
Morph 8b55f2c615 externals: microprofileui: Eliminate variable shadowing 2022-06-14 05:52:15 -04:00
Liam ebecdd3a74 general: fix compilation on MinGW GCC 12 2022-06-13 20:09:32 -04:00
Morph d0328f49f1 externals: microprofile: Eliminate variable shadowing 2022-06-13 18:19:23 -04:00
Alexandre Bouvier 020982508d video_core: Support new VkResult 2022-05-17 17:37:10 +02:00
Alexandre Bouvier 55b0dda57c sirit: Allow using system spirv-headers 2022-05-14 22:03:23 +02:00
Mai M 5687bc6e10
Merge pull request #8282 from liamwhite/gcc-12
GCC 12 fixes
2022-04-28 23:28:07 -04:00
Liam 709d7fd92c GCC 12 fixes 2022-04-28 16:50:34 -04:00