Commit Graph

746 Commits

Author SHA1 Message Date
f09ba10daa AudioCommon: Added Granular Synthesis 2025-03-14 01:22:35 -05:00
9f43f59c9b Merge pull request #13276 from JoshuaVandaele/sfml-3.0.0
Migrate to SFML 3.0.0
2025-03-10 15:03:36 -04:00
325c1a24b9 CMake: fix various typos
Also includes a fix for BuildMacOSUniversalBinary.py
2025-03-05 20:57:52 -05:00
0a83783fae Migrate to SFML>=3.0.0 2025-02-25 06:42:13 +01:00
d89e7c84fb CMakeLists: Add flag to disable Cubeb 2025-01-25 14:06:55 -05:00
4fc259710f Flatpak: Use ScmRevGen to generate metainfo XML 2025-01-07 02:35:14 -05:00
e05b033dd2 ScmRevGen: Don't generate Info.plist files directly
Some generators (like Unix Makefiles and Xcode) copy an app's Info.plist at configure time.
This causes a problem when we need to generate the Info.plist at build time, like how we
currently do it with ScmRevGen. Instead of generating the Info.plist directly in ScmRevGen,
provide an Info.plist without any version information to CMake at configure time, have
ScmRevGen generate a separate plist file with the version information at build time, and
then merge the two together to create the final Info.plist.
2024-12-05 14:56:08 -05:00
f642cd4658 Externals: Update SDL to 2.30.9 2024-11-16 21:34:30 -07:00
1cb6866de4 Revert "Allow shared zlib-ng"
This reverts commit 6dad8f8372.

Our bundled zlib-ng uses zlib compat mode, making it override system zlib.
System zlib-ng will not, and all its functions will be prefixed with zng_.
Therefore the two aren't actually compatible.
2024-10-01 00:47:05 -05:00
538da4b7ff Merge pull request #12144 from khg8m3r/sdl2-update
Externals: Update SDL to 2.30.6
2024-08-18 14:05:20 +02:00
f85d4a4294 CMakeLists: Remove flag for creating a Steam build 2024-08-15 12:42:16 -04:00
d2c4f3af19 Update SDL to release-2.30.6 and fix build errors for Windows and CMake 2024-08-13 11:11:56 +02:00
8499b43501 MacUpdater: Always use the same signing identity as the DolphinQt bundle 2024-08-01 12:36:49 -04:00
b06b816d4c cmake: Fix building with system minizip-ng
Dolphin currently fails to build when the Linux system building it includes headers/pkgconfigs for minizip-ng built in both minizip-ng mode and legacy compat mode (the minizip API).

This is because minizip-ng is checked for in cmake however the code is not actually compatible against minizip-ng built in non-legacy mode. Until that is rectified Dolphin should just check for a pkgconfig for minizip. If the system has a pkgconfig for minizip with a version >= 4 then the system package is minizip-ng built in compat mode which is exactly what we want.
2024-07-02 13:15:11 -05:00
c3e0aeb184 Merge pull request #12728 from OatmealDome/mac-version-numbers-2
ScmRevGen: Generate Info.plist files containing the current version
2024-05-30 01:13:32 -04:00
8167a046ef Merge pull request #12793 from Pokechu22/minimum-compilers-for-bitcast
CMake: update required compiler versions for std::bitcast support
2024-05-25 23:23:58 +01:00
c8ea116658 Merge pull request #12768 from guijan/fmt-pc
use pkg-config to find libfmt
2024-05-21 22:36:56 +02:00
2ba6093b30 Merge pull request #12767 from guijan/libusb-pc
use pkg-config to find libusb
2024-05-21 22:36:45 +02:00
35ee08ba9f Merge pull request #12736 from mitaclaw/minizip-ng-update
Externals: Update minizip-ng to 4.0.5 and convert to submodule
2024-05-21 22:21:56 +02:00
e98a0859b9 CMake: update required compiler versions for std::bitcast support
This is based on https://en.cppreference.com/w/cpp/compiler_support. I'm not actually entirely sure what the needed Xcode version is.
2024-05-20 22:13:43 -07:00
cd25e91ca2 use pkg_search_module to find minizip-ng or minizip
OpenBSD calls minizip-ng's .pc file minizip.pc
Others call   minizip-ng's .pc file minizip-ng.pc
2024-05-07 04:25:04 +00:00
d619307a6d use pkg-config to find libfmt
This allows using the system libfmt on OpenBSD and NetBSD.
Unfortunately, the system libfmt is too old on OpenBSD at the moment,
and Dolphin doesn't currently compile on NetBSD for other reasons.
2024-05-06 19:33:37 +00:00
c1e6316bdc use pkg-config to find libusb
This makes more (but not all) of the compilation process succeed on
NetBSD.
2024-05-06 17:44:32 +00:00
ba462578ac Externals: Update minizip-ng to 4.0.5
Also update unzLocateFile to the minizip-ng 4.0.4+ signature and document new unused files.
2024-05-03 12:43:55 -07:00
0acdd404e3 Externals: Convert minizip-ng To Submodule
Due to an oversight in our CMakeLists, pkg-config would attempt to find *minizip* 3.0.0 (which doesn't exist) instead of *minizip-ng* 3.0.0, or at least it was on my Manjaro Linux machine. This has been fixed. The new submodule is using minizip-ng 3.0.4, the same version that was being used before.
2024-05-03 12:43:33 -07:00
6bee21e272 Revert "Externals: minizip-ng Forward Compatibility"
This reverts commit 0a48a3b3ad.
2024-05-03 12:41:53 -07:00
0859d2c472 improve NetBSD-specific code
NetBSD doesn't put packages in /usr/local like /CMakeLists.txt thought.
The `#ifdef __NetBSD__` around iconv was actually breaking compilation
on NetBSD when using the system libiconv (there's also a GNU iconv
package)
A C program included from C++ source broke on NetBSD specifically, work
around it.

This doesn't fix compilation on NetBSD, which is currently broken, but
is closer to correct.
2024-05-03 15:12:29 +00:00
50dc0ffbce port to OpenBSD 2024-04-22 20:50:47 +00:00
c154134e28 ScmRevGen: Generate Info.plist for MacUpdater 2024-04-21 13:28:21 -04:00
3ad1037d7f ScmRevGen: Generate Info.plist for DolphinQt 2024-04-21 13:28:21 -04:00
0a48a3b3ad Externals: minizip-ng Forward Compatibility 2024-04-21 09:38:53 -07:00
a84dc3123e Use CMAKE_CURRENT_SOURCE_DIR for the CMake module path 2024-02-20 08:09:06 -05:00
edaafaae2f Have dolphin_scmrev run ScmRevGen from CMAKE_CURRENT_SOURCE_DIR 2024-02-19 11:41:01 -05:00
acb18a58cf Make the path given to CMAKE_USER_MAKE_RULES_OVERRIDE absolute 2024-02-17 20:36:17 -05:00
ecfcae8718 Externals: add tinygltf, a library used to load or save GLTF mesh files 2024-02-11 13:26:39 -06:00
7baedc3ec4 CMake: Enable SDL on Linux by default 2024-01-13 16:10:28 +01:00
51e05f468a SDL: Add GameController API, cleanup 2024-01-13 16:10:25 +01:00
6a0b17f8fe CMake: update required enet version
Dolphin now relies on ENET_SOCKOPT_TTL which was merged upstream but not
released yet. This fix assumes that enet continues its current
versioning scheme.
2023-12-01 14:13:07 +00:00
f0d2ce4683 Remove _M_X86 in favour of _M_X86_64 2023-11-28 23:03:20 +11:00
2b9aee5c8f CMake: allow using system xxhash 2023-11-27 06:02:39 +00:00
69ec239a1f Add lz4 submodule 2023-10-02 17:28:23 -04:00
1a9d946a33 Require system fmt >= 10.1 2023-09-24 15:46:39 +02:00
c43c9101c0 CMake: use version flags if Git isn't found 2023-08-14 11:27:39 +02:00
6dad8f8372 Allow shared zlib-ng 2023-07-14 09:29:04 -04:00
fa81006b51 Merge pull request #11955 from TellowKrinkle/CMakeDependencies
CMake: Allow ignoring system packages
2023-06-30 19:06:04 +02:00
2a6f4d879c CMake: Generate scmrev.h at build time instead of configure time. 2023-06-29 03:23:31 +02:00
51d4eea7c5 Allow building against system gtest 2023-06-15 10:32:05 +02:00
ade40650f5 CMake: Support using bundled libraries even if system libraries exist 2023-06-15 01:41:41 -05:00
5b10a80401 CMake: Use targets for all optionally-external dependencies 2023-06-15 01:41:41 -05:00
1a0a1e8f12 Merge pull request #10976 from TellowKrinkle/StackFrames
Improve stack frames for profilers
2023-06-12 05:00:08 +02:00