summaryrefslogtreecommitdiff
path: root/games-emulation/dolphin
diff options
context:
space:
mode:
Diffstat (limited to 'games-emulation/dolphin')
-rw-r--r--games-emulation/dolphin/Manifest12
-rw-r--r--games-emulation/dolphin/dolphin-2407-r1.ebuild2
-rw-r--r--games-emulation/dolphin/dolphin-2412-r1.ebuild2
-rw-r--r--games-emulation/dolphin/dolphin-2503.ebuild299
-rw-r--r--games-emulation/dolphin/dolphin-9999.ebuild2
5 files changed, 311 insertions, 6 deletions
diff --git a/games-emulation/dolphin/Manifest b/games-emulation/dolphin/Manifest
index cae6080cd875..3b7713370784 100644
--- a/games-emulation/dolphin/Manifest
+++ b/games-emulation/dolphin/Manifest
@@ -4,15 +4,21 @@ AUX dolphin-2407-minizip.patch 422 BLAKE2B 359afbcaf0cc12e0320fd5c1074f2e47fc285
AUX dolphin-2412-fix-build-without-retro-achievements.patch 1979 BLAKE2B cba96c09b38253f0adc6879ccee6213f461b8ba08cbf71c0153ac335ca557e3aae9bc4e2625a724b4c7869006f42d4512f77edcfb340219035c4f535f22d5fef SHA512 9de8408eaec3b944ddbbcfebdb79d9787ae979684e776207b859e61a621d36e97c5eda75f45c6d48e2e3dde4d21930f603dde261d0ac0cfdae70378224c9b321
AUX dolphin-2412-fix-libfmt-11.1.patch 3207 BLAKE2B 7d7a629fb5fc8ba65d4c513ac43405c66c5435ee9bb45f9c1272fc6d4ebc41692ac0210c84e40ad0a94a26ddb64f7092ed947dce222545a0fcefb4d548b8dd12 SHA512 44105f66f30351298805bc7ba21ea5969b23900afae8bb2b0117f095b40d9ea9755b33931b2ced6c0f58905e775db2f9375d1fc424a89427e0a686f4579dfaa8
DIST Vulkan-Headers-05fe2cc910a68c9ba5dac07db46ef78573acee72.tar.gz 2288519 BLAKE2B bd11ba3ecac3bf0f6df255a4b87556092b9630c85b97cbcc2c0901d5293882da6f996e326cce8f410f8503f9e29454f0a2994c4adceb4565490d435b307d4495 SHA512 3679a087ea024a15b2d30730834345d2af3869ae012bcc5a996eed90558516d16b762010d887b9c762b5177bfc0a21b3bd29dbc4e236e067132623482068b058
+DIST Vulkan-Headers-39f924b810e561fd86b2558b6711ca68d4363f68.tar.gz 2497345 BLAKE2B 66c276e4ecb6f648fb0ba7f211edda51d6ef8c439b88abdafd0bb33a7aa255e9189e88ef2a40179e9ab8433c82f98cbb40a8aaadbbd6a6e72c7a838ad68d07ae SHA512 2d722e32e3c5a217a62d0583fd1597fcf5e05c7092f0c629f54025ae8fdb22b12dba375d1aeeeb90e4a69507e254f33aebe435bf8f058f55a5ed3f5e6d351d6f
DIST VulkanMemoryAllocator-009ecd192c1289c7529bff248a16cfe896254816.tar.gz 904841 BLAKE2B 64966d40b86197a18f86c9715acb2ea649ea6b69d3de38d9385a8130e35519036eca49b7503886123284be58d5c248dd9d7c5cb16a489c64d385439c382dcd30 SHA512 3a47a4bc81562b96f598f357b803d2219fa167e6eb87779837efa6e85fc6eaff8e1cfbdea0935117a7b3c630cc99944b94e91823eafa8a94d80b2c459f33c317
+DIST VulkanMemoryAllocator-3bab6924988e5f19bf36586a496156cf72f70d9f.tar.gz 937902 BLAKE2B d4c9d002ab787045e4d117237c3f7d031ec4dae514e958881529c6dc11cc6105dd57a26f214791f8e0943e2cfa105f90e99ee958b97c1c386ef44fcaad6b7d33 SHA512 6e2935ce6fbafc2cc8c5a34bf3eaa5dc2e8f65c97c886cfa57da0b45ca83bc8ade4429a7556ce6292af9aeb947d69231b50ae64a55a281c304176e8ea1cd2098
DIST dolphin-2407.tar.gz 19773792 BLAKE2B a6de162479d45e6b1cba5444df5abdeafd92773d1e49cc837dfc6c1ab45ed11d7a3f72a582ddb56d0ecc6b550d03c1a02a9389852ba438d8a9235d5ea3285d4b SHA512 8bb8459d8b653708e34d5df184d96ba9705e8c50b00d066862d4012f78b7e71938207979b3bd900dd14c35c3b6c0258bb5c8fad9ba73267188e98d8a2edfb73f
DIST dolphin-2412.tar.gz 19926717 BLAKE2B 89036561987283067a1f116aa38a94c92d0c8e3114d28a0545787f63b389cb204b265bdd4c2452ec02ca3fe90fccf5fc0fd55be3acb9b8bd346e3738f3f96767 SHA512 3025e24b4cdc8cf3493e23a7968064cb9090d622a3a830b0a964fc87af840227125de8c0f69243c7d3975fc5ea2dd0c485d870301c25e8fa078abe83ae88bca9
+DIST dolphin-2503.tar.gz 20148047 BLAKE2B 3b41fd126f3b61d2bb6e6232b3009901a6ec1b8a21e2df6932205aa1a4dc63441aff0fd60ecba1683350bb6b49c42d97e33d22c96ac150ce518eb8d79355693b SHA512 dd61676b2200d4f3a6b053b563f9687740bddc043733240ae0bf44f037b782ba292465c55a63930c8119f2e515476947f90b9e0348208881ecbd88c5def52e0c
+DIST implot-18c72431f8265e2b0b5378a3a73d8a883b2175ff.tar.gz 138121 BLAKE2B 481fe2b4ebd1ab3554465aff07b2c2e85f2db033de1ac69b95bcf56d269fcf01d8a0f951ad45ddcc0e192f1cc6cac3478633f006f403b8e930350891945ae87f SHA512 9cb2581a4e8d844914606f55a667afcfb31374973b0035b4d81488253e350df67439e97b46b236324c2a1e01146e6a191ad94d70823a3888c97e9380715272fa
DIST implot-cc5e1daa5c7f2335a9460ae79c829011dc5cef2d.tar.gz 137924 BLAKE2B c830275b05a74e8a60a7164f22c01dd9a5a35f9219736785c9cc17830dae809eb8cba65604b0388c3966d7658c9fe71cb9a8468c23d3ed17b7890581a2222cb8 SHA512 ab9935e759f38d19e6f60ed195c22018929ba46fccf783f4486346d7ffb7040b6097bc4c3d3b3577cc91f0c413684e07449a24bebf3db9c937638092c181de92
DIST mgba-8739b22fbc90fdf0b4f6612ef9c0520f0ba44a51.tar.gz 14488880 BLAKE2B 5beec2de9a0999a93a4ad704f45246b551824a9ddd576a5b77e731b269fb8f7d311d1c4e2cfb217f34e22a49050498c70e52d714d9c0bb7b4e4d178f49f15c3d SHA512 782d456b7bf827591c774f146a88821b41b3b936faefddb5aee82bb0dd16ca7ad7228a1c331e1e517eac40a71cc4c94cc44bee12560946328c8433e1c6327225
DIST minizip-ng-3eed562ef0ea3516db30d1c8ecb0e1b486d8cb70.tar.gz 770054 BLAKE2B 7d5b24a5be7134ac17178869883625b28fa80a55f878231ca4156901057db72b20b4d342f8d0bb04a436fcd72d7ccbb0f79adc8503a16e1197a84f3a476da730 SHA512 f76a2cefd7d9ad47f8c3c73b3483b657fab0507605e0b29895eaec759718a65f0d2915ea7022831f3f98493891a1ab4f5035971bf09d4860abbf4cde0b091869
+DIST minizip-ng-55db144e03027b43263e5ebcb599bf0878ba58de.tar.gz 772757 BLAKE2B 853a252d2a8f8c0668804cf961626413aaf89a7eb85b27142860e379e933a54c0d847d976b007071636461b29dd85d6b910d44a6c140581b983b59b14bc4fd9c SHA512 88d1222886a3b5cd3ca1aff7b12902d1d19462c446ef39a092a56bb91b5889956afcce047b4227c79a50a95d9275bd0a23f5cd6cbef76478b6e21bbf86dd486b
DIST tinygltf-c5641f2c22d117da7971504591a8f6a41ece488b.tar.gz 5903179 BLAKE2B 0ef4b36cf26f3a5a544d0c739317b8cce041121b1dec58d1d9dbc3bbc892df284d80aa4c45ec1ebc332ba96b151230a5b0dbf95b95aefcf86ee7878c393eda5d SHA512 486bcf32be137dea5746117074dc51bc978290698de7831e1c4bbaa4acb56ed99fc34c38e69878a955b3e5f10f43eab07b0637164f822beae0fddd099aa0c56d
DIST zlib-ng-ce01b1e41da298334f8214389cc9369540a7560f.tar.gz 2223118 BLAKE2B c79a138c31c74c291ae38a6c4d8983e0884169ced4147d7242d1a766f70777de0368ceba815ac2261bd2543dba55a6106b70f7e040fae4f200863da217f88978 SHA512 73f4e56410ae298ef211ebab52b1a0d3d5bfae91c2de3cd294b56cd0a78ab50e1203b396c7df462f360c1aaaa9392ec5625473d1e9eb084cc64bc813e28d12a1
-EBUILD dolphin-2407-r1.ebuild 7927 BLAKE2B dfed32349086bd67eb9e096af537ae0ce325cf603102f5a7f10eb7de0e7bddb80f8ea4a4d25e833ba18c7e2dde155988597ebb396a457b1a90725698d6b1f0cd SHA512 b2dbe160c157f189dfb9540906bc2bfe2deed8e72c71e41006ec4c489f7795c1550eb55729a35d1dc9716edafe5d2afef6ed03c8b614f628044272ca59638bce
-EBUILD dolphin-2412-r1.ebuild 7848 BLAKE2B 311654864fd94b9fbe5585c283340248ab75cfdadcc46a4e2819de9368082c9a3e1620c10383f63aa3024ab12cc2b8bf90e52ac89ccf542bd83bf30c27814780 SHA512 1e5414cb43524ffb23dc7d8289a7906a36432af9245d88f9e4fd2c35baf7b3a3331fefe5676a72375a072c62ce61a8a6eb904b2f2a27e9d3c63b4109739620cc
-EBUILD dolphin-9999.ebuild 7718 BLAKE2B b7fd8abd6607f1d18440fd4100cbb72abd008e8aedad4c0c11de63f277abbd71382eafcde85350633e80f005b159f3ef21ac82c1848fdf5799bdbd7ea94628d4 SHA512 c0516b784832130fca6a4f9937ca84bc46890d9e65e06ace6b1a8eee1add86dec1bb865f319e0cfb7462610edee9c72286a84d0f157f70605534fadd2d843932
+EBUILD dolphin-2407-r1.ebuild 7929 BLAKE2B eb479d7fcc7b26e29ca411ad94da93274cfce50c1ede826b8b44f7d69f57c4025137c729b5759615912e294ba000cf13da500c8d17a88bf6496749ef1e010cc7 SHA512 6ddda2a1ef5b4e35e51398cb1e9b0d42725d24d41a4026773669193af6fa7ef0df49f05d61f898ab8945e38230ea3b94c5f2d82fed2a52920ff69b387658c8fb
+EBUILD dolphin-2412-r1.ebuild 7850 BLAKE2B 6724f234932cac0ec5c7333c167a037916ddc927a56479688f1fabf7e2be22991b2d742f451bdf20e7f01d96c5aa00d5cde7519bb33d17c2ee680f8470433ad5 SHA512 1e1450b045917e76c241835f07eee54004ad80e26be1733bc14787caedbfd8d1feb580391a29e5d365a5281b5a7a2bab71f21b9161eeffc255acb14eb020dfe7
+EBUILD dolphin-2503.ebuild 7729 BLAKE2B ff56a704ecadf7fb202b11a0b52791c26a14954ba3ee38778337e1f76bce7488ab171c10a25a55e3fe3016177659cd89f350e7bc06070f4dc09a337a88035418 SHA512 313aba7f687d712f667e65d8694bed8546ffc17090f008e43af374d20452e2c62aad427f73028576309c4fd6d0c59422f7a536b1d03f4bfcaf4167f68e2b71a6
+EBUILD dolphin-9999.ebuild 7720 BLAKE2B dd51eaba50313cc46425ba4961e16c22a7c3d4fbbb464790cc10341c5b82f82e46ddc2c787eaa656a06b9237cb1c8496ca8d5269f87f6f400c72b043c6be02fa SHA512 1b01232fdfb8820d1826175362a8a8d79ae6d156b429548ac1debbf13e06c95eb81720dc8f45a613533e75be98a79ccb284ced61a7990f59a70e79749974b0b0
MISC metadata.xml 1003 BLAKE2B 29d426769469da0b23975299b97d310f962b1c3c18a765389b47b8361821014f45b068991b1b21a57344ce34815a1ce609e6c552ed992eff9b84045b74872e41 SHA512 50c546c0a35693c1e1c3d8b53e697e19fc675dd577f6803abe04b1348e08576b0e79640e6978b31484182ecc24cc42557b301c90e2cc31b9c3ead055fdc21458
diff --git a/games-emulation/dolphin/dolphin-2407-r1.ebuild b/games-emulation/dolphin/dolphin-2407-r1.ebuild
index 4f55d270f184..e77aefc415c6 100644
--- a/games-emulation/dolphin/dolphin-2407-r1.ebuild
+++ b/games-emulation/dolphin/dolphin-2407-r1.ebuild
@@ -96,7 +96,7 @@ RDEPEND="
)
ffmpeg? ( media-video/ffmpeg:= )
gui? (
- dev-qt/qtbase:6[gui,widgets]
+ dev-qt/qtbase:6[X,gui,widgets]
dev-qt/qtsvg:6
)
llvm? ( $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}=') )
diff --git a/games-emulation/dolphin/dolphin-2412-r1.ebuild b/games-emulation/dolphin/dolphin-2412-r1.ebuild
index c93526544485..cc1a5417142e 100644
--- a/games-emulation/dolphin/dolphin-2412-r1.ebuild
+++ b/games-emulation/dolphin/dolphin-2412-r1.ebuild
@@ -95,7 +95,7 @@ RDEPEND="
)
ffmpeg? ( media-video/ffmpeg:= )
gui? (
- dev-qt/qtbase:6[gui,widgets]
+ dev-qt/qtbase:6[X,gui,widgets]
dev-qt/qtsvg:6
)
llvm? ( $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}=') )
diff --git a/games-emulation/dolphin/dolphin-2503.ebuild b/games-emulation/dolphin/dolphin-2503.ebuild
new file mode 100644
index 000000000000..d64f183556a0
--- /dev/null
+++ b/games-emulation/dolphin/dolphin-2503.ebuild
@@ -0,0 +1,299 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LLVM_COMPAT=( 18 )
+LLVM_OPTIONAL=1
+
+inherit cmake llvm-r1 pax-utils xdg-utils
+
+if [[ ${PV} == *9999 ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/dolphin-emu/dolphin"
+ EGIT_SUBMODULES=(
+ Externals/mGBA/mgba
+ Externals/implot/implot
+ Externals/tinygltf/tinygltf
+ Externals/Vulkan-Headers
+ Externals/VulkanMemoryAllocator
+ Externals/zlib-ng/zlib-ng
+ Externals/minizip-ng/minizip-ng
+ )
+else
+ MGBA_COMMIT=8739b22fbc90fdf0b4f6612ef9c0520f0ba44a51
+ IMPLOT_COMMIT=18c72431f8265e2b0b5378a3a73d8a883b2175ff
+ TINYGLTF_COMMIT=c5641f2c22d117da7971504591a8f6a41ece488b
+ VULKAN_HEADERS_COMMIT=39f924b810e561fd86b2558b6711ca68d4363f68
+ VULKANMEMORYALLOCATOR_COMMIT=3bab6924988e5f19bf36586a496156cf72f70d9f
+ ZLIB_NG_COMMIT=ce01b1e41da298334f8214389cc9369540a7560f
+ MINIZIP_NG_COMMIT=55db144e03027b43263e5ebcb599bf0878ba58de
+ SRC_URI="
+ https://github.com/dolphin-emu/dolphin/archive/${PV}.tar.gz
+ -> ${P}.tar.gz
+ https://github.com/epezent/implot/archive/${IMPLOT_COMMIT}.tar.gz
+ -> implot-${IMPLOT_COMMIT}.tar.gz
+ https://github.com/syoyo/tinygltf/archive/${TINYGLTF_COMMIT}.tar.gz
+ -> tinygltf-${TINYGLTF_COMMIT}.tar.gz
+ https://github.com/KhronosGroup/Vulkan-Headers/archive/${VULKAN_HEADERS_COMMIT}.tar.gz
+ -> Vulkan-Headers-${VULKAN_HEADERS_COMMIT}.tar.gz
+ https://github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator/archive/${VULKANMEMORYALLOCATOR_COMMIT}.tar.gz
+ -> VulkanMemoryAllocator-${VULKANMEMORYALLOCATOR_COMMIT}.tar.gz
+ https://github.com/zlib-ng/zlib-ng/archive/${ZLIB_NG_COMMIT}.tar.gz
+ -> zlib-ng-${ZLIB_NG_COMMIT}.tar.gz
+ https://github.com/zlib-ng/minizip-ng/archive/${MINIZIP_NG_COMMIT}.tar.gz
+ -> minizip-ng-${MINIZIP_NG_COMMIT}.tar.gz
+ mgba? (
+ https://github.com/mgba-emu/mgba/archive/${MGBA_COMMIT}.tar.gz
+ -> mgba-${MGBA_COMMIT}.tar.gz
+ )
+ "
+ KEYWORDS="~amd64 ~arm64"
+fi
+
+DESCRIPTION="Gamecube and Wii game emulator"
+HOMEPAGE="https://dolphin-emu.org/"
+
+LICENSE="GPL-2+ BSD BSD-2 LGPL-2.1+ MIT ZLIB"
+SLOT="0"
+IUSE="
+ alsa bluetooth discord-presence doc egl +evdev ffmpeg +gui llvm log mgba
+ profile pulseaudio sdl systemd telemetry test upnp vulkan
+"
+REQUIRED_USE="
+ mgba? ( gui )
+ llvm? ( ${LLVM_REQUIRED_USE} )
+"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ app-arch/bzip2:=
+ >=app-arch/lz4-1.8:=
+ app-arch/xz-utils
+ >=app-arch/zstd-1.4.0:=
+ dev-libs/hidapi
+ >=dev-libs/libfmt-10.1:=
+ dev-libs/lzo:2
+ dev-libs/pugixml
+ dev-libs/xxhash
+ media-libs/cubeb
+ media-libs/libsfml:=
+ media-libs/libspng
+ >=net-libs/enet-1.3.18:1.3=
+ net-libs/mbedtls:0=
+ net-misc/curl
+ x11-libs/libX11
+ x11-libs/libXi
+ x11-libs/libXrandr
+ virtual/libusb:1
+ virtual/opengl
+ alsa? ( media-libs/alsa-lib )
+ bluetooth? ( net-wireless/bluez:= )
+ evdev? (
+ dev-libs/libevdev
+ virtual/udev
+ )
+ ffmpeg? ( media-video/ffmpeg:= )
+ gui? (
+ dev-qt/qtbase:6[X,gui,widgets]
+ dev-qt/qtsvg:6
+ )
+ llvm? ( $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}=') )
+ profile? ( dev-util/oprofile )
+ pulseaudio? ( media-libs/libpulse )
+ sdl? ( >=media-libs/libsdl2-2.30.9 )
+ systemd? ( sys-apps/systemd:0= )
+ upnp? ( net-libs/miniupnpc:= )
+"
+DEPEND="
+ ${RDEPEND}
+ egl? ( media-libs/libglvnd )
+ test? ( dev-cpp/gtest )
+"
+BDEPEND="
+ sys-devel/gettext
+ virtual/pkgconfig
+"
+
+# vulkan-loader required for vulkan backend which can be selected
+# at runtime.
+RDEPEND+="
+ vulkan? ( media-libs/vulkan-loader )
+"
+
+# [directory]=license
+declare -A KEEP_BUNDLED=(
+ # please keep this list in CMakeLists.txt order
+
+ # TODO: use system libraries
+ # bug #873952
+ # https://github.com/dolphin-emu/dolphin/pull/13089
+ [zlib-ng]=ZLIB
+ [minizip-ng]=ZLIB
+
+ [Bochs_disasm]=LGPL-2.1+
+ [cpp-optparse]=MIT
+ [imgui]=MIT
+ [implot]=MIT
+ [glslang]=BSD
+
+ [tinygltf]=MIT
+
+ [FreeSurround]=GPL-2+
+ [soundtouch]=LGPL-2.1+
+
+ # FIXME: discord-rpc not packaged
+ [discord-rpc]=MIT
+
+ [mGBA]=MPL-2.0
+
+ [picojson]=BSD-2
+ [expr]=MIT
+ [rangeset]=ZLIB
+ [FatFs]=FatFs
+ [Vulkan-Headers]="|| ( Apache-2.0 MIT )"
+ [VulkanMemoryAllocator]=MIT
+)
+
+PATCHES=(
+ "${FILESDIR}"/dolphin-2407-minizip.patch
+)
+
+add_bundled_licenses() {
+ for license in ${KEEP_BUNDLED[@]}; do
+ LICENSE+=" ${license}"
+ done
+}
+add_bundled_licenses
+
+pkg_setup() {
+ use llvm && llvm-r1_pkg_setup
+}
+
+src_prepare() {
+ if [[ ${PV} != *9999 ]]; then
+ mv -T "${WORKDIR}/implot-${IMPLOT_COMMIT}" Externals/implot/implot || die
+ mv -T "${WORKDIR}/tinygltf-${TINYGLTF_COMMIT}" Externals/tinygltf/tinygltf || die
+ mv -T "${WORKDIR}/Vulkan-Headers-${VULKAN_HEADERS_COMMIT}" Externals/Vulkan-Headers || die
+ mv -T "${WORKDIR}/VulkanMemoryAllocator-${VULKANMEMORYALLOCATOR_COMMIT}" Externals/VulkanMemoryAllocator || die
+ mv -T "${WORKDIR}/zlib-ng-${ZLIB_NG_COMMIT}" Externals/zlib-ng/zlib-ng || die
+ mv -T "${WORKDIR}/minizip-ng-${MINIZIP_NG_COMMIT}" Externals/minizip-ng/minizip-ng || die
+ if use mgba; then
+ mv -T "${WORKDIR}/mgba-${MGBA_COMMIT}" Externals/mGBA/mgba || die
+ fi
+ fi
+
+ cmake_src_prepare
+
+ local s remove=()
+ for s in Externals/*; do
+ [[ -f ${s} ]] && continue
+ if ! has "${s#Externals/}" "${!KEEP_BUNDLED[@]}"; then
+ remove+=( "${s}" )
+ fi
+ done
+
+ einfo "removing sources: ${remove[*]}"
+ rm -r "${remove[@]}" || die
+
+ # Remove dirty suffix: needed for netplay
+ sed -i -e 's/--dirty/&=""/' CMake/ScmRevGen.cmake || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -DDSPTOOL=ON
+ -DENABLE_ALSA=$(usex alsa)
+ -DENABLE_ANALYTICS=$(usex telemetry)
+ -DENABLE_AUTOUPDATE=OFF
+ -DENABLE_BLUEZ=$(usex bluetooth)
+ -DENABLE_CLI_TOOL=ON
+ -DENABLE_EGL=$(usex egl)
+ -DENABLE_EVDEV=$(usex evdev)
+ -DENABLE_LLVM=$(usex llvm)
+ -DENABLE_LTO=OFF # just adds -flto, user can do that via flags
+ -DENABLE_NOGUI=$(usex !gui)
+ -DENABLE_PULSEAUDIO=$(usex pulseaudio)
+ -DENABLE_QT=$(usex gui)
+ -DENABLE_SDL=$(usex sdl)
+ -DENABLE_TESTS=$(usex test)
+ -DENABLE_VULKAN=$(usex vulkan)
+ -DENCODE_FRAMEDUMPS=$(usex ffmpeg)
+ -DFASTLOG=$(usex log)
+ -DOPROFILING=$(usex profile)
+ -DUSE_DISCORD_PRESENCE=$(usex discord-presence)
+ -DUSE_MGBA=$(usex mgba)
+ -DUSE_RETRO_ACHIEVEMENTS=OFF
+ -DUSE_UPNP=$(usex upnp)
+
+ -DCMAKE_DISABLE_FIND_PACKAGE_SYSTEMD=$(usex !systemd)
+
+ # Use system libraries
+ -DUSE_SYSTEM_FMT=ON
+ -DUSE_SYSTEM_PUGIXML=ON
+ -DUSE_SYSTEM_ENET=ON
+ -DUSE_SYSTEM_XXHASH=ON
+ -DUSE_SYSTEM_BZIP2=ON
+ -DUSE_SYSTEM_LIBLZMA=ON
+ -DUSE_SYSTEM_ZSTD=ON
+ -DUSE_SYSTEM_MINIZIP=OFF
+ -DUSE_SYSTEM_LZO=ON
+ -DUSE_SYSTEM_LZ4=ON
+ -DUSE_SYSTEM_SPNG=ON
+ -DUSE_SYSTEM_CUBEB=ON
+ -DUSE_SYSTEM_LIBUSB=ON
+ -DUSE_SYSTEM_SFML=ON
+ -DUSE_SYSTEM_MBEDTLS=ON
+ -DUSE_SYSTEM_CURL=ON
+ -DUSE_SYSTEM_ICONV=ON
+ -DUSE_SYSTEM_HIDAPI=ON
+
+ # Use ccache only when user did set FEATURES=ccache (or similar)
+ # not when ccache binary is present in system (automagic).
+ -DCCACHE_BIN=CCACHE_BIN-NOTFOUND
+
+ # Undo cmake.eclass's defaults.
+ # All dolphin's libraries are private
+ # and rely on circular dependency resolution.
+ -DBUILD_SHARED_LIBS=OFF
+
+ # Avoid warning spam around unset variables.
+ -Wno-dev
+ )
+
+ # System installed git shouldnt affect non live builds
+ [[ ${PV} != *9999 ]] && mycmakeargs+=( -DCMAKE_DISABLE_FIND_PACKAGE_Git=ON )
+
+ use test && mycmakeargs+=( -DUSE_SYSTEM_GTEST=ON )
+ use mgba && mycmakeargs+=( -DUSE_SYSTEM_LIBMGBA=OFF )
+ use sdl && mycmakeargs+=( -DUSE_SYSTEM_SDL2=ON )
+ use upnp && mycmakeargs+=( -DUSE_SYSTEM_MINIUPNPC=ON )
+
+ cmake_src_configure
+}
+
+src_test() {
+ cmake_build unittests
+}
+
+src_install() {
+ cmake_src_install
+
+ dodoc Readme.md
+ if use doc; then
+ dodoc -r docs/ActionReplay docs/DSP docs/WiiMote
+ fi
+
+ # Add pax markings for hardened systems
+ pax-mark -m "${ED}"/usr/bin/"${PN}"{-emu{,-nogui},-tool}
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+ xdg_icon_cache_update
+}
diff --git a/games-emulation/dolphin/dolphin-9999.ebuild b/games-emulation/dolphin/dolphin-9999.ebuild
index b18e0c26a48b..3d7d75c458fa 100644
--- a/games-emulation/dolphin/dolphin-9999.ebuild
+++ b/games-emulation/dolphin/dolphin-9999.ebuild
@@ -95,7 +95,7 @@ RDEPEND="
)
ffmpeg? ( media-video/ffmpeg:= )
gui? (
- dev-qt/qtbase:6[gui,widgets]
+ dev-qt/qtbase:6[X,gui,widgets]
dev-qt/qtsvg:6
)
llvm? ( $(llvm_gen_dep 'llvm-core/llvm:${LLVM_SLOT}=') )