aboutsummaryrefslogtreecommitdiff
path: root/src/common/CMakeLists.txt
AgeCommit message (Collapse)Author
2023-10-25cmake: prefer system stb headersAlexandre Bouvier
2023-10-08common: add arm64 native clockLiam
2023-09-16Reimplement HardwareOpusKelebek1
2023-09-12Merge pull request #11447 from xcfrg/portable-compile-outliamwhite
common: add a compile time option to allow disabling portable mode
2023-09-06add a compile time option to allow disabling portable modexcfrg
2023-09-03msvc: set warning level to /W4 globallyDanila Malyutin
And fix a bunch of warnings
2023-07-21settings: Cleanuplat9nq
Addresses review feedback Co-authored-by: Morph <39850852+Morph1984@users.noreply.github.com>
2023-07-21settings,uisettings: Remove leading underscorelat9nq
2023-07-21common,yuzu-qt: Avoid explicit instantiation on old clanglat9nq
Clang versions < 15 have compile issues with explicit instantiation. Disable it for these versions.
2023-07-21settings: Move some simple data to BasicSettinglat9nq
Reduces the need for the compiler to duplicate this code, by about 100KB executable size.
2023-07-21(ui,)settings: Use explicit instantiationlat9nq
Reduces compile times a tad on clang.
2023-07-21settings: Split enums to new filelat9nq
2023-06-07x64: Deduplicate RDTSC usageMorph
2023-06-03common: link libandroid on androidLiam
2023-06-03android: Implement SAF support & migrate to SDK 31. (#4)bunnei
2023-03-27x64: Add MicroSleepMorph
MicroSleep allows the processor to pause for a "short" amount of time (in the microsecond range). This is useful for spin-waiting that does not require nanosecond precision. This uses the new TPAUSE instruction introduced on Intel's newest processors as part of the waitpkg instructions. For CPUs that do not support waitpkg instructions, this is equivalent to yield(). Co-Authored-By: liamwhite <liamwhite@users.noreply.github.com>
2023-03-25common: Port boost's hash_value implementationMorph
Ports a small subset of boost's hash_value implementation (<= 1.80.0).
2023-03-22kernel: use KTypedAddress for addressesLiam
2023-03-07kernel: avoid signed overflow UB on MSVCLiam
2023-03-05common: Implement a method to change the Windows timer resolutionMorph
This utilizes undocumented NtDll functions to change the current timer resolution from the default of 1ms.
2023-03-05common: Implement a high resolution steady clockMorph
This implementation provides a consistent, high performance, and high resolution clock where/when std::chrono::steady_clock does not provide sufficient precision.
2023-02-28cmake: use correct boost imported targetsAlexandre Bouvier
2023-01-23cmake: prefer system llvm libraryAlexandre Bouvier
2023-01-14Move demangle impl to cppKelebek1
2023-01-14Add stacktrace symbol demanglingKelebek1
2023-01-01MacroHLE: Reduce massive calculations on sizing estimation.Fernando Sahmkow
2022-12-19common: Add ScratchBuffer classameerj
This class creates a default initialized heap allocated buffer for cases where value initializing members during allocation or resize is redundant.
2022-12-19common: add make_unique_for_overwriteameerj
2022-12-11memory: correct semantics of data cache management operationsLiam
2022-12-04cmake: prefer system librariesAlexandre Bouvier
2022-11-30CMake: Consolidate common PCH headersameerj
2022-11-29CMake: Use precompiled headersameerj
2022-11-12common: add cache management functionsLiam
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-13CMake: Try add library "LZ4::lz4_shared" if "lz4::lz4" is unavailableKyle Kienapfel
Right now this looks like a distro specific problem, but we'll have to see. Over on Gentoo: with lz4 1.9.3 there is a lz4::lz4 library target, with 1.9.4 it's no longer mentioned in the cmake files provided by the package. (/usr/lib64/cmake/lz4) arch and openSUSE have lz4 1.9.4 available so I checked there, they only have .pc files for pkg-config, so asking for "lz4::lz4" works as usual MSVC does require "lz4::lz4" to be asked for
2022-10-06NVDRV: Remake ASGPUFernando Sahmkow
2022-10-06Common: implement MultiLevelPageTable.Fernando Sahmkow
2022-09-18cmake: fix git detectionAlexandre Bouvier
2022-09-16Merge pull request #8649 from lat9nq/common-position-independentMorph
common: Use PROJECT_SOURCE_DIR to find CMakeModules
2022-09-13common: do not link to xbyak on non-amd64 architecturesliushuyu
2022-08-15core, network: Add ability to proxy socket packetsFearlessTobi
2022-08-01common: Use PROJECT_SOURCE_DIR to find CMakeModuleslat9nq
Fixes CMake configuration when yuzu is a submodule of another project.
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-25yuzu: Add ui files for multiplayer roomsFearlessTobi
2022-07-23Merge pull request #8545 from Kelebek1/Audioliamwhite
Project Andio
2022-07-22ci,CMake: Drop Conan support for vcpkglat9nq
Between packages breaking, Conan always being a moving target for minimum required CMake support, and now their moves to Conan 2.0 causing existing packages to break, I suppose this was a long time coming. vcpkg isn't without its drawbacks, but at the moment it seems easier on the project to use for external packages. Mostly removes the logic for Conan from the root CMakeLists file, leaving basic find_package()'s in its place. Sets only the find_package()'s that require CONFIG mode as necessary. clang and linux CI now use the vcpkg toolchain file configured in the Docker container when possible. mingw CI turns off YUZU_TESTS because there's no way on the container to run Windows executables on a Linux host anyway, and it's not easy to get Catch2 there.
2022-07-22Project AndioKelebek1