The ebuild removes all bundled libraries from the "Externals" directory of the source tree and adds them as dependencies, aside from the ones that can't be replaced with system versions. New external dependencies have been added since the last time the ebuild has been updated, so the build fails as it doesn't replace them. Externals/glslang: part of Vulkan SDK, satisfied by Vulkan headers which only exist in some overlays as media-libs/vulkan-base. If the external is left alone, build still fails because vulkan.h doesn't exist. Therefore, Vulkan support in Gentoo blocks this bug. Added in this commit: https://github.com/dolphin-emu/dolphin/commit/951fc44d869211b4fcab7c9df6303a0cb2a996e8 Externals/hidapi: satisfied by dev-libs/hidapi Added in this commit: https://github.com/dolphin-emu/dolphin/commit/843b030eda4d42672e8aea2b5607f4ba3048bd36 I'm willing to provide a patch once the blocker is resolved.
I just found that dolphin also provides the Vulkan headers in Externals, so the first dependency is fixed by also allowing the Externals/Vulkan directory. With the attached patch the build succeeds, but the built app obviously fails when trying to use the Vulkan backend, and it would be cleaner to use system headers which *should* be there in latest mesa as they're there in the source tree, but the Gentoo ebuild just opts out of Vulkan for now. I guess there's two separate bugs here, the build failure and the runtime failure, and Vulkan support ( https://bugs.gentoo.org/show_bug.cgi?id=574886 ) only blocks the second one.
Created attachment 451981 [details, diff] dolphin-9999.ebuild patch
Ugh... Opted in to wxwidgets UI, turns out that Dolphin now decides to use the bundled one anyway because the latest stable version in Gentoo is too old, and the latest upstream is supposedly broken: <degasus> Tear: have fun with no externals. eg right now, our WX GUI is broken on stable wxgtk Adding Externals/wxWidgets3 to the whitelist in the latest patch.
Created attachment 452019 [details, diff] dolphin-9999.ebuild patch, with wxwidgets
Thank you for the patch.
The build is failing due to wxWidgets-3.1.0 not being on the tree. Your patch is preventing the bundled wxWidgets from being deleted. While it's not bad, I think this particular change shouldn't be allowed in the tree. If you want to apply your patch, feel free to keep it on an overlay until this is resolved.
I'll keep the bug in case anyone wants to make use of this or until the ebuild for 3.1.0 is in the tree.
Since dolphin-9999 doesn't build right now due to upstream changes unless we allow it to bring in multiple externals, I think it would make sense to allow the ones in that do not exist in the portage tree to remain in the build directory, and for those that do exist, add depends into the ebuild. What's the rationale for insisting on removal of wxwidgets-3.1.0 (essential for the build) but not the other four that we're preserving?
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7bb6ef82a48532432ec66af39d50df7cff3237ff commit 7bb6ef82a48532432ec66af39d50df7cff3237ff Author: Sergei Trofimovich <slyfox@gentoo.org> AuthorDate: 2018-07-22 12:27:16 +0000 Commit: Sergei Trofimovich <slyfox@gentoo.org> CommitDate: 2018-07-22 12:27:25 +0000 games-emulation/dolphin: adopt an orphan, refresh live ebuild A few minor changes: - refreshed locale list (as suggested by the ebuild check) - moved from EAPI=5 to EAPI=6 - dropped removed WxWidgets UI - added depends on more bundled libraries Closes: https://bugs.gentoo.org/561914 Closes: https://bugs.gentoo.org/598625 Closes: https://bugs.gentoo.org/632882 Package-Manager: Portage-2.3.43, Repoman-2.3.10 games-emulation/dolphin/dolphin-9999.ebuild | 90 ++++++++++++++++------------- games-emulation/dolphin/metadata.xml | 5 +- 2 files changed, 54 insertions(+), 41 deletions(-)
*** Bug 638632 has been marked as a duplicate of this bug. ***