Commit Graph

27 Commits (aa2031196938c43590e5bea736edc05776c609a2)

Author SHA1 Message Date
t895 aa20311969 general: Remove inih 2 years ago
t895 da14c7b8e4 config: Unify config handling under frontend_common
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.
2 years ago
Alexandre Bouvier eceee8c3d9 cmake: move find-modules to root cmake dir 3 years ago
Chris Oboe 201733d1b5
Disable automatically opening the console on windows yuzu-cmd builds (#9485)
* don't automatically open the console on windows build of yuzu-cmd

* fix formatting
3 years ago
Alexandre Bouvier e6ae720c33 cmake: use sdl2 imported target 3 years ago
liamwhite 3b19f741bd
Merge pull request #6833 from abouvier/unbundle
cmake: prefer system libraries
3 years ago
Alexandre Bouvier 8e17b5469f cmake: prefer system libraries 3 years ago
Liam 0cbfdf7ecb yuzu-cmd: link SDL2 correctly 3 years ago
liamwhite 02b10a6e4d
Merge pull request #9374 from liamwhite/externals
externals: update dynarmic, SDL2
3 years ago
Liam 6d2c597371 externals: update dynarmic, SDL2 3 years ago
bunnei f77cc6c412
Merge pull request #9344 from liamwhite/null
video_core: add null backend
3 years ago
ameerj 37bc5118ea CMake: Use precompiled headers 3 years ago
Liam 89dd7dc180 video_core: add null backend 3 years ago
Andrea Pappacoda 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
3 years ago
Andrea Pappacoda af94bf4a59
build: cleanup installation of yuzu and yuzu-cmd
Explicitly specifying an install destination is not needed anymore since
CMake 3.14.

By removing the hardcoded ${CMAKE_INSTALL_PREFIX}/bin it is also now
possible to override the install destination via the command line. For
example, you can now install yuzu to /usr/games with
-DCMAKE_INSTALL_BINDIR=games
4 years ago
Fernando Sahmkow 23ca1eb82e yuzu-cmd/CMakeLists: Correct attribution for this function. 4 years ago
lat9nq d3748cad73 emu_window_sdl2_vk: Use the generated SDL config
On Linux, due to the way we include SDL2 as a submodule, it makes it
difficult for us to specify which SDL_config.h we intended to include.
Before, CMake would default to the dummy one included with SDL and
ignore the generated one.

This tells CMake to use the generated one. In addition, we define
USING_GENERATED_CONFIG_H to throw an error in case the dummy config is
used by accident. Fixes Vulkan not working on Linux yuzu-cmd.
4 years ago
ameerj 5568fcfec1 yuzu_cmd: Remove unused resource.h 5 years ago
bunnei eae9f2e440 yuzu: Various frontend improvements to avoid crashes and improve experience on Linux. 5 years ago
ReinUsesLisp 1b9e08ab78 cmake: Always enable Vulkan
Removes the unnecesary burden of maintaining separate #ifdef paths and
allows us sharing generic Vulkan code across APIs.
5 years ago
Lioncash fc6db97a09 core: Remove usage of unicorn
Unicorn long-since lost most of its use, due to dynarmic gaining support
for handling most instructions. At this point any further issues
encountered should be used to make dynarmic better.

This also allows us to remove our dependency on Python.
5 years ago
ReinUsesLisp f92cbc5501 yuzu: Implement Vulkan frontend
Adds a Qt and SDL2 frontend for Vulkan. It also finishes the missing
bits on Vulkan initialization.
6 years ago
ReinUsesLisp 4b80dd23a4 yuzu_cmd: Split emu_window OpenGL implementation into its own file 6 years ago
Lioncash e710a1b989 CMakeLists: Derive the source directory grouping from targets themselves
Removes the need to store to separate SRC and HEADER variables, and then
construct the target in most cases.
8 years ago
MerryMage 80db02c497 Minor cleanup 8 years ago
James Rowe f5f28a4f67 Get yuzu sdl to start compiling 8 years ago
James Rowe ebf9a784a9 Massive removal of unused modules 8 years ago