107 Commits (dev)

Author SHA1 Message Date
Stenzek 88ace6e4ae
CMake: Detect cache line size dynamically on AArch64 Linux
Stenzek 8867bb129a
CMake: Tidy up build system
And fix Windows CMake... who knows how long for.
Stenzek 164062f80d
Build: Use C++20 for everything except reshadefx
Stenzek 4a70164dac
CMake: Determine host page size at build time
Needed for running on Asahi Linux.
Stenzek 143fb0876d
dep/glad: Update to v2.0.5
Stenzek c2c3eac749
Build: Use shared webp/zstd/zlib
Stenzek 8206b2b74a
CMake: RISC-V build fixes
Stenzek 7fbf40a9fc
MSBuild: Purge 32-bit targets
This has never been supported.
Stenzek 7cc52bba23
CMake: Support multiple CMAKE_OSX_ARCHITECTURES
Stenzek 1d0c870494
CMake: Bump dep version requirement
Stenzek 0e2c6676a3
Build: Compiling x64 builds on Apple Silicon host
Stenzek b3cbe5a7ee
CPU/NewRec: Add AArch32 backend
Stenzek 9501439d6b
CPU: Add new experimental recompiler
Stenzek da1c28bd16 Misc: Fix arm32 build
Stenzek e6bfcf22d9 CMake: Disable warnings on third-party projects
Stenzek 90d0029c34 Build: Unify Flatpak manifests
Stenzek a45b50c3e9 Build: Add additional Flatpak build scripts
Stenzek c8dc8849ea Build: Ensure exceptions are off for fmt
Stenzek 68b59ee748 CMake: Swap USE_ and WITH_ for ENABLE_
Consistency.
Stenzek a37e89b52f CMake: Remove unsupported options
Stenzek c773c763ef Achievements: Switch to rc_client
Stenzek b30c86ed75 Build: Improve MacOS support
Stenzek 58b4946fb9 Build: Switch to C++20
Stenzek 1ea0854c71 CMake: Enable EGL even if Wayland is disabled
Stenzek 7b068b976b CrashHandler: Use libbacktrace
Stenzek 59b70b6adb Build: Add Flatpak manifest and scripts
Stenzek ea68c5b4b5 Build: Use dependency package on Windows
Stenzek cee4f93097 Build: Use precompiled headers
Stenzek e108ca16ce Build: Use Qt 6.5.2 for macOS, drop libcurl
Also add qtimageformats.
Stenzek bf15d13eb7 dep/xbyak: Update to v6.73
Stenzek e3d9ba4c99 Rewrite host GPU abstraction
- Don't have to repeat the same thing for 4 renderers.
 - Add native Metal renderer.
Stenzek 5b980dafa5 System: Refactor main loop
Reduces JIT exits.
Improves runahead performance.
Charles the Thobe 4ea57daf39 CMake: display warning when building without Wayland on systems that support Wayland
CharlesThobe 53de37eaa8 Linux: implement DBus screensaver inhibitor
Stenzek d84a02a2c3 CMake: Build tweaks
Connor McLaughlin 6fa8c3962e Build: Fixes for Android
Connor McLaughlin bf76780f11 GameList: Add cover downloader
Connor McLaughlin 6df7d9acda NoGUI: Migrate to new host abstraction
Connor McLaughlin ce5ff4186c Build: Log build type when running cmake
Connor McLaughlin 68866f3174 CMake: Disable nogui by default
Not interested in moving it over to the new interface, and Qt can run
the big picture UI anyway.
Connor McLaughlin ea65c0970c FrontendCommon: Drop SDL2 audio output
Connor McLaughlin d674014e30 CMake: Enable cross-compiling for macos arm64 on x86
Connor McLaughlin a899ca88f2 Build: Make OpenGL/Vulkan renderers optional
And disabled on Windows/arm64.
Connor McLaughlin c233a8042f GLContext: Dynamically load wayland-egl
Connor McLaughlin b42b5501f6 UI: Massive revamp, new features and improvements
Connor McLaughlin 859a156b3c Various build fixes
Connor McLaughlin 7f88cd5f9f Add regression test runner
Connor McLaughlin 31f03268cc Build: Opt out of -fno-semantic-interposition on Android
Connor McLaughlin ebcc11750d Build: Disable -fno-semantic-interposition on macOS
Connor McLaughlin 950b81861b CI: Revert previous commit and fix underlying issue