aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/CMakeLists.txt
AgeCommit message (Collapse)Author
2024-02-20audio: formatLiam
2024-01-05hid_core: Move hid to it's own subprojectNarr the Reg
2023-11-21config: Unify config handling under frontend_commont895
Replaces every way of handling config for each frontend with SimpleIni. frontend_common's Config class is at the center where it saves and loads all of the cross-platform settings and provides a set of pure virtual functions for platform specific settings. As a result of making config handling platform specific, several parts had to be moved to each platform's own config class or to other parts. Default keys were put in platform specific config classes and translatable strings for Qt were moved to shared_translation. Default hotkeys, default_theme, window geometry, and qt metatypes were moved to uisettings. Additionally, to reduce dependence on Qt, QStrings were converted to std::strings where applicable.
2023-11-07Update CMakeLists.txtSamay Navale
2023-11-07Update CMakeLists.txtSamay Navale
Updated Comments for better readability.
2023-09-11ci: fix msvc when used with LTO (#11459)liamwhite
2023-09-06Merge pull request #11434 from danilaml/fix-warningsliamwhite
msvc: set warning level to /W4 globally
2023-09-03msvc: set warning level to /W4 globallyDanila Malyutin
And fix a bunch of warnings
2023-09-02general: make -fwrapv generic to all architectures (#11379)liamwhite
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-08-17cmake: mark warning disable for gcc 11 (#11301)liamwhite
2023-07-21cmake: Reposition preprocessor switch commenttoast2903
Co-authored-by: Morph <[email protected]>
2023-07-21cmake: Use standard preprocessor on MSVClat9nq
2023-06-06CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modulesMorph
The latest version of MSVC STL brings C++23 standard library modules, which conflict with precompiled headers. Disabling with /experimental:module- has no effect, so force C++20 in the meantime while we wait for module support in other compilers.
2023-06-03android: Minimal JNI for yuzu.bunnei
2023-05-02CMake: Enable type limits on Clanglat9nq
2023-05-02CMakeLists: Enable checks on Clanglat9nq
Enables shadow-uncaptured-locals and implicit-fallthrough for Clang. implicit-fallthrough is not enabled by default in -Wall or -Wextra, and shadow-uncaptured-local doesn't seem to be enabled by default by -Wshadow, even though GCC has both of these by their respective cases.
2023-04-02general: fixes for gcc 13Liam
2023-03-12general: fix spelling mistakesLiam
2022-12-28cmake: make room server optionalLiam
2022-12-03Merge pull request #9300 from ameerj/pchliamwhite
CMake: Use precompiled headers to improve compile times
2022-11-29CMake: Disable PCH on MSVC + Buildcache configsameerj
2022-11-29CMake: Use precompiled headersameerj
2022-11-22general: fix compile for Apple ClangLiam
2022-10-22CMakeLists: Disable -Wbraced-scalar-init on ClangMorph
Clang erroneously emits this warning when using designated initializers.
2022-10-22CMakeLists: Enforce C5233 on MSVCMorph
This is similar to Clang's -Wunused-lambda-capture
2022-10-22CMakeLists: Disable C4100 and C4324Morph
Disabling C4100 is similar to -Wno-unused-parameter
2022-10-22CMakeLists: Remove redundant warningsMorph
These warnings are already included in /W3.
2022-10-22CMakeLists: Treat MSVC warnings as errorsMorph
2022-10-22general: Enforce C4800 everywhere except in video_coreMorph
2022-10-22CMakeLists: Remove all redundant warningsMorph
These are already explicitly or implicitly set in src/CMakeLists.txt
2022-10-22CMakeLists: Consolidate all unused warnings into -WunusedMorph
2022-10-22CMakeLists: Treat -Wall and -Wextra as errorsMorph
2022-10-06NVHOST_CTRl: Implement missing method and fix some stuffs.Fernando Sahmkow
2022-08-15dedicated_room: Initial implementationFearlessTobi
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-25network: Add initial files and enet dependencyFearlessTobi
2022-07-04CI: fix cachingliushuyu
2022-06-13CMakeLists: Make variable shadowing a compile-time errorMorph
Now that the entire project is free of variable shadowing, we can enforce this as a compile time error to prevent any further introduction of this logic bug.
2022-04-07CMakeLists: Enforce C4505 and C5245Morph
These are similar to Wunused-function on gcc/clang
2022-04-05build: remove -fconceptsAndrea Pappacoda
It was needed on GCC versions not supporting `-std=c++20`, but GCC 10 and newer (required to compile yuzu) don't need it anymore
2022-01-12cmake: make tests optionalAlexandre Bouvier
2021-12-06CMakeLists: Specify /Zm200 when compiling in MSVCMorph
This increases the memory heap size for constructing precompiled headers to 2x the default.
2021-10-28CMakeLists: Document the /GT compile optionMorph
2021-09-15Build System: Build with JCC Erratum MitigationFernando Sahmkow
2021-07-22shader: Initial recompiler workReinUsesLisp
2021-07-06CMakeLists: Treat -Wsign-compare as an error on GCC/ClangMorph
Treats (un)signed comparison mismatches as errors to be consistent with MSVC
2021-07-05Merge pull request #6537 from Morph1984/warningsbunnei
general: Enforce multiple warnings in MSVC
2021-07-03CMakeLists: Enforce C4189Morph
This supplements C4101 by detecting initialized but unreferenced local variables