aboutsummaryrefslogtreecommitdiff
path: root/externals/CMakeLists.txt
AgeCommit message (Collapse)Author
2023-10-30Merge pull request #11728 from liushuyu/update-depsliamwhite
Update external dependencies
2023-10-29Merge pull request #11689 from liamwhite/breakpadliamwhite
qt: implement automatic crash dump support
2023-10-25cmake: prefer system stb headersAlexandre Bouvier
2023-10-23externals: stb: Add image writegerman77
2023-10-22externals/opus: use CMakeLists shipped with Opus itselfliushuyu
2023-10-08qt: implement automatic crash dump supportLiam
2023-10-07externals: stb: Split library into cpp fileNarr the Reg
2023-09-18cmake: prefer system renderdoc headerAlexandre Bouvier
2023-09-14debug: Add renderdoc capture hotkeyGPUCode
2023-08-25Skip additional mbedcrypto warnings options on MSVCLiam
2023-08-25Avoid `$<CXX_COMPILER_ID:Clang>` because it doesn't include AppleClang.comex
2023-08-25Warnings cleanup for GCC 13 and Clang 16comex
Note: For GCC there are still a huge number of `-Warray-bounds` warnings coming from `externals/dynarmic`. I could have added a workaround in `externals/CMakeLists.txt` similar to what this PR does for other externals, but given Dynarmic's close affiliation with Yuzu, it would be better to fix it upstream. Besides that, on my machine, this makes the build warning-free except for some warnings from glslangValidator and AutoMoc. Details: - Disable some warnings in externals. - Disable `-Wnullability-completeness`, which is a Clang warning triggered by the Vulkan SDK where if any pointers in the header are marked _Nullable, it wants all pointers to be marked _Nullable or _Nonnull. Most of them are, but some aren't. Who knows why. - `src/web_service/verify_user_jwt.cpp`: Disable another warning when including `jwt.hpp`. - `src/input_common/input_poller.cpp`: Add missing `override` specifiers. - src/common/swap.h: Remove redundant `operator&`. In general, this file declares three overloads of each operator. Using `+` as an example, the overloads are: - a member function for `swapped_t + integer` - a member function for `swapped_t + swapped_t` - a free function for `integer + swapped_t` But for `operator&`, there was an additional free function for `swapped_t + integer`, which was redundant with the member function. This caused a GCC warning saying "ISO C++ says that these are ambiguous".
2023-07-12cmake: allow using system VMA libraryAlexandre Bouvier
2023-06-27video_core: Add BCn decoding supportGPUCode
2023-06-26externals: Use cmake subdirectoryGPUCode
2023-06-18externals: Add vma and initialize itlat9nq
video_core: Move vma implementation to library
2023-06-16Merge pull request #10739 from zeltermann/sdl-cpuinfoliamwhite
Re-enable SDL's `CPUinfo` subsystem
2023-06-13Merge pull request #10603 from lat9nq/tz-more-completebunnei
core,common: Implement missing time zone data/computations
2023-06-12Re-enable SDL's CPUinfo subsystemzeltermann
See https://github.com/libsdl-org/SDL/issues/7809. Disabling CPUinfo triggers a bug in SDL's audio subsystem, which breaks SDL's JACK output on Linux. We're lucky it hasn't broken anything else.
2023-06-05nx_tzdb: Create headers from downloaded system archive datalat9nq
Use lat9nq/tzdb_to_nx release data to generate header files. nx_tzdb: Use an interface library nx_tzdb: Gate download if achive not exists nx_tzdb: Fix header generator brace closing nx_tzdb: Add base directory files nx_tzdb: Add SPDX info
2023-06-03build: only enable adrenotools on arm64Liam
2023-06-03externals: add adrenotools for bcenablerLiam
2023-05-24cmake: apply defaults to all externalsAlexandre Bouvier
2023-05-23textures: add BC1 and BC3 compressors and recompression settingLiam
2023-02-28externals: use openssl from vcpkgAlexandre Bouvier
2023-02-22cmake: fix cpp-jwt buildAlexandre Bouvier
2023-01-23cmake: prefer system llvm libraryAlexandre Bouvier
2023-01-22Merge pull request #9555 from abouvier/catch2-updateliamwhite
tests: update catch2 to 3.0.1
2023-01-14Add stacktrace symbol demanglingKelebek1
2023-01-05cmake: support the standard cmake testing optionAlexandre Bouvier
2023-01-02cmake: move find-modules to root cmake dirAlexandre Bouvier
2023-01-02cmake: allow options shadowing with normal variablesAlexandre Bouvier
2022-12-28cmake: make Vulkan-Headers external the defaultLiam
2022-12-28cmake: make libusb optionalLiam
2022-12-06cmake: prefer system libusbAlexandre Bouvier
2022-12-05Merge pull request #6833 from abouvier/unbundleliamwhite
cmake: prefer system libraries
2022-12-04cmake: prefer system librariesAlexandre Bouvier
2022-12-04yuzu-cmd: link SDL2 correctlyLiam
2022-12-04Merge pull request #9375 from jbeich/xbyak-no-installliamwhite
externals: don't install xbyak as part of yuzu install
2022-12-04externals: update dynarmic, SDL2Liam
2022-12-03externals: disable xbyak install targets after cbaf642ffe4bJan Beich
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-03Merge pull request #9289 from liamwhite/fruit-companyliamwhite
general: fix compile for Apple Clang
2022-11-28CMake: Directly link to SDL2-static when appropriatelat9nq
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-23externals: always use LibreSSL on WindowsLiam
2022-11-22general: fix compile for Apple ClangLiam
2022-11-09Initial ARM64 supportLiam
2022-09-04Fix Cmake warning for CMP0077Vamsi Krishna
2022-08-01build(externals): rename Findopus to FindOpusAndrea Pappacoda
This better matches upstream's FindOpus.cmake file, and it will make using upstream's FindOpus.cmake file easier.
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda
[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 01cf05bc75b1e47beb08937439f3ed9339e7b254
2022-07-25Address first part of review commentsFearlessTobi