summaryrefslogtreecommitdiffstats
path: root/CMakeModules/GenerateSCMRev.cmake (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-09-18cmake: fix git detectionAlexandre Bouvier1-8/+2
2022-07-27chore: make yuzu REUSE compliantAndrea Pappacoda1-0/+3
[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
2021-12-21Allow overriding SCM version infoAndrew Udvare1-3/+9
If the build is from a non-repository, these functions will return empty. This patch allows using defines to CMake to set version info such as -DGIT_BRANCH=master.
2021-07-23cmake: Remove unused code in GenerateSCMRev.cmakeReinUsesLisp1-11/+2
Remove shader code hash generation code as it's no longer used.
2021-07-23shader: Remove old shader managementReinUsesLisp1-55/+1
2020-06-12gl_arb_decompiler: Implement an assembly shader decompilerReinUsesLisp1-0/+2
Emit code compatible with NV_gpu_program5. This should emit code compatible with Fermi, but it wasn't tested on that architecture. Pascal has some issues not present on Turing GPUs.
2020-04-07Removed leftover test codeSilverBeamx1-2/+0
2020-04-07Addressed feedback: removed CMake hack in favor of building the necessary strings via the supplied title formatSilverBeamx1-19/+2
2020-04-07Hack BUILD_FULLNAME into GenerateSCMRev.cmakeSilverBeamx1-0/+19
2020-03-13shader/transform_feedback: Add host API friendly TFB builderReinUsesLisp1-0/+2
2020-03-09video_core: Rename "const buffer locker" to "registry"ReinUsesLisp1-2/+2
2020-03-09gl_shader_cache: Rework shader cache and remove post-specializationsReinUsesLisp1-2/+0
Instead of pre-specializing shaders and then post-specializing them, drop the later and only "specialize" the shader while decoding it.
2020-01-16Fix git version in scm_rev.cppJames Rowe1-0/+4
2019-10-25VideoCore: Unify const buffer accessing along engines and provide ConstBufferLocker class to shaders.Fernando Sahmkow1-2/+4
2019-10-05Shader_Ir: Refactor Decompilation process and allow multiple decompilation modes.Fernando Sahmkow1-0/+2
2019-10-05shader_ir: Corrections to outward movements and misc stuffsFernando Sahmkow1-0/+4
2019-08-21shader_ir: Implement VOTEReinUsesLisp1-0/+1
Implement VOTE using Nvidia's intrinsics. Documentation about these can be found here https://developer.nvidia.com/reading-between-threads-shader-intrinsics Instead of using portable ARB instructions I opted to use Nvidia intrinsics because these are the closest we have to how Tegra X1 hardware renders. To stub VOTE on non-Nvidia drivers (including nouveau) this commit simulates a GPU with a warp size of one, returning what is meaningful for the instruction being emulated: * anyThreadNV(value) -> value * allThreadsNV(value) -> value * allThreadsEqualNV(value) -> true ballotARB, also known as "uint64_t(activeThreadsNV())", emits VOTE.ANY Rd, PT, PT; on nouveau's compiler. This doesn't match exactly to Nvidia's code VOTE.ALL Rd, PT, PT; Which is emulated with activeThreadsNV() by this commit. In theory this shouldn't really matter since .ANY, .ALL and .EQ affect the predicates (set to PT on those cases) and not the registers.
2019-07-09shader_ir: Implement a new shader scannerFernando Sahmkow1-0/+2
2019-06-21shader: Decode SUST and implement backing image functionalityReinUsesLisp1-0/+1
2019-06-07cmake: Add missing shader hash file entriesReinUsesLisp1-0/+3
2019-04-16GenerateSCMRev: fix Travis compilation on repo forksfearlessTobi1-1/+1
2019-02-26shader/decode: Split memory and texture instructions decodingReinUsesLisp1-0/+1
2019-02-07cmake: Fix title bar issueReinUsesLisp1-8/+1
2019-02-07cmake: Fixup application stringMichael1-2/+2
Co-Authored-By: ReinUsesLisp <reinuseslisp@airmail.cc>
2019-02-07gl_shader_disk_cache: Invalidate shader cache changes with CMake hashReinUsesLisp1-0/+101