Commit graph

621 commits

Author SHA1 Message Date
Kelebek1
90f546cba4 Add stacktrace symbol demangling 2023-01-14 04:43:21 +00:00
Fernando S
6adfb0ab14 Merge pull request #9535 from bylaws/master
Port over several shader-compiler fixes from skyline
2023-01-06 10:06:45 -05:00
Liam
7429e31f30 externals: update dynarmic, xbyak 2023-01-05 18:06:06 -05:00
Billy Laws
5b7dec680e externals: Update sirit 2023-01-05 22:13:07 +00:00
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