diff options
author | Ionen Wolkens <ionen@gentoo.org> | 2024-07-02 00:48:07 -0400 |
---|---|---|
committer | Ionen Wolkens <ionen@gentoo.org> | 2024-07-02 01:17:04 -0400 |
commit | 1109347a0b07161d08e96bf82608361d24a18a3f (patch) | |
tree | 37382f466ac2b5b45010de72f9a3a43ecb1dfcba /games-emulation | |
parent | dev-python/tornado: Remove old (diff) | |
download | gentoo-1109347a0b07161d08e96bf82608361d24a18a3f.tar.gz gentoo-1109347a0b07161d08e96bf82608361d24a18a3f.tar.bz2 gentoo-1109347a0b07161d08e96bf82608361d24a18a3f.zip |
games-emulation/pcsx2: fix build with musl
Originally thought would only need _GNU_SOURCE, but there is a bit
more to the fix 7zip upstream did in bug #928730. Could still patch
but can go for the easy solution which will use neither cpu_set_t
nor (more importantly) pthread_attr_setaffinity_np that musl lacks.
Also fix a different musl issue only affecting >=pcsx2-1.7.5913,
workaround imported from Chimera Linux.
Closes: https://bugs.gentoo.org/935298
Signed-off-by: Ionen Wolkens <ionen@gentoo.org>
Diffstat (limited to 'games-emulation')
-rw-r--r-- | games-emulation/pcsx2/files/pcsx2-1.7.5913-musl-cache.patch | 20 | ||||
-rw-r--r-- | games-emulation/pcsx2/pcsx2-1.7.5835.ebuild | 4 | ||||
-rw-r--r-- | games-emulation/pcsx2/pcsx2-1.7.5913.ebuild | 5 | ||||
-rw-r--r-- | games-emulation/pcsx2/pcsx2-9999.ebuild | 5 |
4 files changed, 34 insertions, 0 deletions
diff --git a/games-emulation/pcsx2/files/pcsx2-1.7.5913-musl-cache.patch b/games-emulation/pcsx2/files/pcsx2-1.7.5913-musl-cache.patch new file mode 100644 index 000000000000..3383904fee48 --- /dev/null +++ b/games-emulation/pcsx2/files/pcsx2-1.7.5913-musl-cache.patch @@ -0,0 +1,20 @@ +Patch adapted from [1]: + + musl doesn't expose these sysconf values, so just use the loop + below that reads them out of sysfs coherency_line_size only + +[1] https://github.com/chimera-linux/cports/blob/114b576aee3ebc25b48ac120da1a1093dcc4365f/user/pcsx2/patches/cache.patch +--- a/common/Linux/LnxHostSys.cpp ++++ b/common/Linux/LnxHostSys.cpp +@@ -143,7 +143,11 @@ + size_t HostSys::GetRuntimeCacheLineSize() + { ++ #if defined(__GLIBC__) + int l1i = sysconf(_SC_LEVEL1_DCACHE_LINESIZE); + int l1d = sysconf(_SC_LEVEL1_ICACHE_LINESIZE); + int res = (l1i > l1d) ? l1i : l1d; ++ #else ++ int res = 0; ++ #endif + for (int index = 0; index < 16; index++) + { diff --git a/games-emulation/pcsx2/pcsx2-1.7.5835.ebuild b/games-emulation/pcsx2/pcsx2-1.7.5835.ebuild index 87e19f866161..ece5dfc93cc5 100644 --- a/games-emulation/pcsx2/pcsx2-1.7.5835.ebuild +++ b/games-emulation/pcsx2/pcsx2-1.7.5835.ebuild @@ -105,6 +105,10 @@ src_configure() { strip-unsupported-flags fi + # pthread_attr_setaffinity_np is not supported on musl, may be possible + # to remove if bundled lzma code is updated like 7zip did (bug #935298) + use elibc_musl && append-cppflags -DZ7_AFFINITY_DISABLE + local mycmakeargs=( -DBUILD_SHARED_LIBS=no -DDISABLE_ADVANCE_SIMD=yes diff --git a/games-emulation/pcsx2/pcsx2-1.7.5913.ebuild b/games-emulation/pcsx2/pcsx2-1.7.5913.ebuild index f8d4b9f5a3aa..deabb28cc4af 100644 --- a/games-emulation/pcsx2/pcsx2-1.7.5913.ebuild +++ b/games-emulation/pcsx2/pcsx2-1.7.5913.ebuild @@ -81,6 +81,7 @@ PATCHES=( "${FILESDIR}"/${PN}-1.7.5232-cubeb-automagic.patch "${FILESDIR}"/${PN}-1.7.5835-vanilla-shaderc.patch "${FILESDIR}"/${PN}-1.7.5855-no-libbacktrace.patch + "${FILESDIR}"/${PN}-1.7.5913-musl-cache.patch ) src_prepare() { @@ -107,6 +108,10 @@ src_configure() { strip-unsupported-flags fi + # pthread_attr_setaffinity_np is not supported on musl, may be possible + # to remove if bundled lzma code is updated like 7zip did (bug #935298) + use elibc_musl && append-cppflags -DZ7_AFFINITY_DISABLE + local mycmakeargs=( -DBUILD_SHARED_LIBS=no -DDISABLE_ADVANCE_SIMD=yes diff --git a/games-emulation/pcsx2/pcsx2-9999.ebuild b/games-emulation/pcsx2/pcsx2-9999.ebuild index f8d4b9f5a3aa..deabb28cc4af 100644 --- a/games-emulation/pcsx2/pcsx2-9999.ebuild +++ b/games-emulation/pcsx2/pcsx2-9999.ebuild @@ -81,6 +81,7 @@ PATCHES=( "${FILESDIR}"/${PN}-1.7.5232-cubeb-automagic.patch "${FILESDIR}"/${PN}-1.7.5835-vanilla-shaderc.patch "${FILESDIR}"/${PN}-1.7.5855-no-libbacktrace.patch + "${FILESDIR}"/${PN}-1.7.5913-musl-cache.patch ) src_prepare() { @@ -107,6 +108,10 @@ src_configure() { strip-unsupported-flags fi + # pthread_attr_setaffinity_np is not supported on musl, may be possible + # to remove if bundled lzma code is updated like 7zip did (bug #935298) + use elibc_musl && append-cppflags -DZ7_AFFINITY_DISABLE + local mycmakeargs=( -DBUILD_SHARED_LIBS=no -DDISABLE_ADVANCE_SIMD=yes |