Commit Graph

21965 Commits

Author SHA1 Message Date
9dcfef744c Merge pull request #8684 from liamwhite/delete-shader
renderer_opengl: delete shader source after linking
2022-07-30 21:36:26 -04:00
b9360681df renderer_opengl: delete shader source after linking 2022-07-30 13:21:26 -04:00
3a9816aafd tidy up github actions
ci.yml: REUSE task should only run on yuzu-emu/yuzu repository
verify.yml: #8659 is a better fix to the discord-rpc dirty flag
2022-07-30 06:05:01 -07:00
69e04da537 Merge pull request #8640 from lat9nq/vcpkg-extra
cmake,ci: vcpkg leftovers
2022-07-30 07:27:52 -04:00
7e0afc641c Translate english plurals
Turns out that for Qt to properly handle plurals in English a
translation needs to be provided, otherwise the user is left with
messages such as "Building: 2 shader(s)"

Plurals for other all other languages are handled on transifex.
I wrote the README.md to just refer to it as a translation
collaboration site just in case we ever switch.

These translations being out of date won't pose any technical problems
so I believe it is fine to handle them manually on a "best effort"
basis.

The files are generated into the source directory so that the
relative filenames are correct. The generated file is added to
.gitignore
2022-07-30 01:40:33 -07:00
f8a005e26e Merge pull request #8664 from liamwhite/monkey-compiler-v12-1
common: move forwarded value into SPSCQueue
2022-07-30 03:24:23 -04:00
417580be2c Merge pull request #8677 from liamwhite/asan-wuninitialized
audio_core: fix -Wuninitialized when compiling with ASan
2022-07-30 03:24:12 -04:00
fc013d88cb video_core: stop waiting for shader compilation on user cancel 2022-07-29 23:33:40 -04:00
73a87edc45 audio_core: fix -Wuninitialized when compiling with ASan 2022-07-29 23:30:01 -04:00
8b40b59084 cmake: add option to check submodules 2022-07-30 05:01:09 +02:00
8c933beb48 externals: Update dynarmic to 6.2.3 2022-07-29 23:07:00 +01:00
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
ec64a94954 common: move forwarded value into SPSCQueue 2022-07-29 15:41:57 -04:00
250c3d555e Merge pull request #8665 from liamwhite/github-is-dumb
ci: use dep5 for GitHub issue template files
2022-07-29 13:14:31 -05:00
f580946b0d Add missed shader defines. Fixes Xenoblade Chronicles 3 booting with Vulkan. 2022-07-29 06:12:39 +01:00
f490c15b0f ci: use dep5 for GitHub issue template files 2022-07-28 19:57:27 -04:00
1dc4ff0974 Update bug-report-feature-request.md 2022-07-28 16:06:12 -07:00
34f75023b2 Update config.yml 2022-07-28 16:00:20 -07:00
880006c5ca Merge pull request #8656 from german77/audio-step
yuzu: Add incremental steps to volume hotkeys
2022-07-28 15:41:37 -07:00
dfc6dd0a2d cmake,ci: vcpkg for MSVC default, fix lz4 include, catch2, cleanup
vcpkg: Add Catch2 2.13.9

Catch2 >= 3.0 is not compatible with earlier versions, and for now we
must override the desired version in our vcpkg manifest. We can do this
programmatically by using VCPKG_MANIFEST_FEATURES.

CMakeLists: Search for lz4 CONFIG mode first

vcpkg's lz4 CONFIG cmake script works in Release mode but not in Debug
mode, failing to copy the correct DLLs at compile time.

We still need to search for the regular mode for system-installed
versions.

CMakeLists: Clean up boost exports

Remove some Conan-specific workarounds.

CMakeLists: Use vcpkg for MSVC by default

Not enabling it generally since it's much easier to have system
dependencies installed for Linux and MinGW.
2022-07-28 16:01:47 -04:00
52dd68cfff Merge pull request #8349 from yuzu-emu/revert-8256-ci-vs-2022
Revert "ci: Enable building with Visual Studio 2022"
2022-07-28 12:50:07 -07:00
c2895df336 Merge pull request #8659 from lat9nq/drpc-yuzu
externals: Use yuzu-emu/discord-rpc to provide Discord integration
2022-07-28 15:24:36 -04:00
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
e5615c4704 Merge pull request #8657 from Kelebek1/depop
[Audio] Avoid an out-of-bounds span write in depop prepare
2022-07-28 11:02:41 -04:00
1e3afd5d80 Merge pull request #8642 from lat9nq/appimg-more-control
ci/linux: Exclude libwayland-client from AppImage
2022-07-28 11:02:23 -04:00
cbe5b8a13e video_core: differentiate between tiled and untiled framebuffer sizes for unaccelerated copies 2022-07-27 21:52:06 -04:00
5c332b90c7 Merge pull request #8641 from Docteh/vcpkg_dll
build: Ship vcpkg dlls with MSVC pr-verify builds
2022-07-27 20:04:22 -04:00
2e46110379 Revert Coretiming PRs 8531 and 7454 (#8591) 2022-07-27 19:47:06 -04:00
b7642cff36 implement pause on system suspend (#8585) 2022-07-27 19:46:03 -04:00
6c47b43a60 Avoid depop out of bounds 2022-07-27 23:17:18 +01:00
ea861cc1c4 Merge pull request #8542 from Morph1984/gpu-use-old-q
gpu_thread: Use the previous MPSCQueue implementation
2022-07-27 15:55:28 -04:00
64fd9f41a7 Merge pull request #8636 from german77/irs_cluster_release
service: irs: Implement clustering processor
2022-07-27 15:54:28 -04:00
a761d020c6 Merge pull request #8633 from Morph1984/optional-keys
applet/swkbd: Implement optional symbol keys
2022-07-27 15:53:32 -04:00
9479940a1f Merge pull request #8592 from devsnek/sig-handlers
exit gracefully on sigint/sigterm
2022-07-27 15:51:26 -04:00
1779795d81 Merge pull request #8338 from Tachi107/spdx-fixes
chore: make yuzu REUSE compliant
2022-07-27 13:00:59 -04:00
2fdefd7064 yuzu: Add incremental steps to volume hotkeys 2022-07-27 11:34:46 -05:00
3041a612cb ci: add reuse job
As mentioned in the previous commit, `reuse lint` can be used to ensure
that copyright information is always present and up to date.

This adds a GitHub Action that does just that, using the official
fsfe/reuse-action
2022-07-27 12:53:49 +02:00
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
81f66eec0c build: Ship vcpkg dlls with MSVC pr-verify builds
With our recent switchover from conan to vcpkg, we're shipping a few
more dll files, these need to be in the full zip.

    cp .\build\bin\*.dll .\artifacts\

also tacking on the fix where we're shipping scm_rev.cpp accidentally
2022-07-26 22:57:23 -07:00
7c63f926ab Merge pull request #8652 from lat9nq/ffmpeg-gh
externals: Use GitHub for FFmpeg
2022-07-26 19:04:14 -04:00
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
5e27d37edc ci/linux: Delete libwayland-client from AppDir
This library causes issues in Vulkan driver detection.
libQt5MultimediaGstTools's dependencies seem to be the issue.
2022-07-26 02:25:39 -04:00
1e67d2b59f Merge pull request #8541 from FearlessTobi/multiplayer-part1
yuzu, network: Add room service and UI configuration
2022-07-25 18:31:45 -04:00
a41baaa181 network: Address review comments 2022-07-25 21:59:31 +02:00
61ce57b524 network, yuzu: Make copyright headers SPDX-compliant 2022-07-25 21:59:31 +02:00
6a2dcc8b3d network, yuzu: Improve variable naming and style consistency 2022-07-25 21:59:31 +02:00
6b5667dfa5 yuzu_cmd: Fix compilation 2022-07-25 21:59:31 +02:00
7d82e57b91 network: Move global state into a seperate class
Co-Authored-By: Narr the Reg <5944268+german77@users.noreply.github.com>
2022-07-25 21:59:31 +02:00
899c8bb330 common: multiplayer: Use GameInfo type 2022-07-25 21:59:31 +02:00
4b404191cf Address second part of review comments 2022-07-25 21:59:30 +02:00