1 |
commit: 0c06dec36acae7fa390460376aff96bdef21ab03 |
2 |
Author: Ionen Wolkens <ionen <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Oct 1 12:50:08 2022 +0000 |
4 |
Commit: Ionen Wolkens <ionen <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Oct 1 13:17:42 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0c06dec3 |
7 |
|
8 |
games-emulation/pcsx2: live temporary quick fixes |
9 |
|
10 |
PCSX2 upstream has replaced the cubeb submodule by hard-including |
11 |
it in its source /and/ modified them. Meaning unbundling is not |
12 |
reasonable anymore without non-modified system copy. |
13 |
|
14 |
New unbundling patch now omits cubeb, however this "fix" is partial |
15 |
given cubeb will do automagic for its backends. Still need to |
16 |
implement IUSE="jack alsa sndio ...". There's also a rust backend |
17 |
full with crates but may not bother with that one in pcsx2's ebuild |
18 |
(will explore how to handle these when do another nightly release). |
19 |
|
20 |
Also need a new submodule (rcheevos), which may be possible to |
21 |
force-unbundle (not looked at yet). |
22 |
|
23 |
Users having problems with any of the above are advised to stick |
24 |
to non-live =pcsx2-1.7*, or at least for now. |
25 |
|
26 |
Signed-off-by: Ionen Wolkens <ionen <AT> gentoo.org> |
27 |
|
28 |
.../pcsx2/files/pcsx2-1.7.3351-unbundle.patch | 34 ++++++++++++++++++++++ |
29 |
games-emulation/pcsx2/pcsx2-9999.ebuild | 10 +++++-- |
30 |
2 files changed, 41 insertions(+), 3 deletions(-) |
31 |
|
32 |
diff --git a/games-emulation/pcsx2/files/pcsx2-1.7.3351-unbundle.patch b/games-emulation/pcsx2/files/pcsx2-1.7.3351-unbundle.patch |
33 |
new file mode 100644 |
34 |
index 000000000000..014548ae9882 |
35 |
--- /dev/null |
36 |
+++ b/games-emulation/pcsx2/files/pcsx2-1.7.3351-unbundle.patch |
37 |
@@ -0,0 +1,34 @@ |
38 |
+Adjust to unbundle a few extras. |
39 |
+ |
40 |
+zstd changes only needed because of https://bugs.gentoo.org/872254 |
41 |
+--- a/CMakeLists.txt |
42 |
++++ b/CMakeLists.txt |
43 |
+@@ -54,3 +54,4 @@ |
44 |
+ set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) |
45 |
+- add_subdirectory(3rdparty/gtest EXCLUDE_FROM_ALL) |
46 |
++ find_package(GTest REQUIRED) |
47 |
++ alias_library(gtest_main GTest::gtest_main) |
48 |
+ add_subdirectory(tests/ctest) |
49 |
+--- a/cmake/SearchForStuff.cmake |
50 |
++++ b/cmake/SearchForStuff.cmake |
51 |
+@@ -177,3 +177,3 @@ |
52 |
+ set(ACTUALLY_ENABLE_TESTS ${ENABLE_TESTS}) |
53 |
+-if(ENABLE_TESTS) |
54 |
++if(0) |
55 |
+ if(NOT EXISTS "${CMAKE_SOURCE_DIR}/3rdparty/gtest/CMakeLists.txt") |
56 |
+@@ -210,7 +210,4 @@ |
57 |
+ find_optional_system_library(ryml 3rdparty/rapidyaml/rapidyaml 0.4.0) |
58 |
+-find_optional_system_library(zstd 3rdparty/zstd 1.4.5) |
59 |
+-if (${zstd_TYPE} STREQUAL System) |
60 |
+- alias_library(Zstd::Zstd zstd::libzstd_shared) |
61 |
+- alias_library(pcsx2-zstd zstd::libzstd_shared) |
62 |
+-endif() |
63 |
++pkg_check_modules(zstd REQUIRED IMPORTED_TARGET libzstd) |
64 |
++alias_library(Zstd::Zstd PkgConfig::zstd) |
65 |
+ find_optional_system_library(libzip 3rdparty/libzip 1.8.0) |
66 |
+@@ -248,3 +245,4 @@ |
67 |
+ add_subdirectory(3rdparty/lzma EXCLUDE_FROM_ALL) |
68 |
+-add_subdirectory(3rdparty/libchdr EXCLUDE_FROM_ALL) |
69 |
++pkg_check_modules(chdr REQUIRED IMPORTED_TARGET libchdr) |
70 |
++alias_library(chdr-static PkgConfig::chdr) |
71 |
+ |
72 |
|
73 |
diff --git a/games-emulation/pcsx2/pcsx2-9999.ebuild b/games-emulation/pcsx2/pcsx2-9999.ebuild |
74 |
index f84ec7bab70e..36b8e5ccf0b7 100644 |
75 |
--- a/games-emulation/pcsx2/pcsx2-9999.ebuild |
76 |
+++ b/games-emulation/pcsx2/pcsx2-9999.ebuild |
77 |
@@ -25,9 +25,10 @@ DESCRIPTION="PlayStation 2 emulator" |
78 |
HOMEPAGE="https://pcsx2.net/" |
79 |
|
80 |
LICENSE=" |
81 |
- GPL-3+ Apache-2.0 BSD BSD-2 BSD-4 Boost-1.0 GPL-2+ LGPL-2.1+ |
82 |
+ GPL-3+ Apache-2.0 BSD BSD-2 BSD-4 Boost-1.0 GPL-2+ ISC LGPL-2.1+ |
83 |
LGPL-3+ MIT OFL-1.1 ZLIB public-domain" |
84 |
SLOT="0" |
85 |
+# TODO: proper IUSE to handle cubeb backends with the now-required bundled copy |
86 |
IUSE="cpu_flags_x86_sse4_1 pulseaudio qt6 test vulkan wayland" |
87 |
REQUIRED_USE="cpu_flags_x86_sse4_1" # dies at runtime if no support |
88 |
RESTRICT="!test? ( test )" |
89 |
@@ -40,7 +41,6 @@ RDEPEND=" |
90 |
dev-libs/libchdr |
91 |
>=dev-libs/libfmt-7.1.3:= |
92 |
dev-libs/libzip:=[zstd] |
93 |
- media-libs/cubeb |
94 |
media-libs/harfbuzz |
95 |
media-libs/libglvnd |
96 |
media-libs/libpng:= |
97 |
@@ -84,8 +84,8 @@ PATCHES=( |
98 |
"${FILESDIR}"/${PN}-1.7.3329-lto.patch |
99 |
"${FILESDIR}"/${PN}-1.7.3329-musl.patch |
100 |
"${FILESDIR}"/${PN}-1.7.3329-qt6.patch |
101 |
- "${FILESDIR}"/${PN}-1.7.3329-unbundle.patch |
102 |
"${FILESDIR}"/${PN}-1.7.3329-wx-vs-sdl.patch |
103 |
+ "${FILESDIR}"/${PN}-1.7.3351-unbundle.patch |
104 |
) |
105 |
|
106 |
src_unpack() { |
107 |
@@ -102,6 +102,10 @@ src_unpack() { |
108 |
3rdparty/rapidyaml/rapidyaml |
109 |
3rdparty/rapidyaml/rapidyaml/extern/c4core |
110 |
3rdparty/rapidyaml/rapidyaml/ext/c4core/src/c4/ext/fast_float |
111 |
+ |
112 |
+ # TODO?: check if easy to unbundle when look at next nightly bump |
113 |
+ # (there is a -DUSE_ACHIVEMENTS to be optional too) |
114 |
+ 3rdparty/rcheevos/rcheevos |
115 |
) |
116 |
fi |
117 |
git-r3_src_unpack |