games-emulation/RetroArch: add 1.22.2

Closes: https://bugs.gentoo.org/967331
Signed-off-by: Takuya Wakazono <pastalian46@gmail.com>
This commit is contained in:
Takuya Wakazono
2026-01-06 12:32:32 +09:00
parent a9a068b80b
commit 264b759cba
2 changed files with 195 additions and 0 deletions

View File

@@ -1,3 +1,4 @@
DIST RetroArch-1.19.1.tar.gz 63298569 BLAKE2B 66acbd32117704f543d3dfe94906d89b4500d51b56f57d1d236ce65e4e78c0c17a830b7c1dd4683f940423cfa88c65956a57bd5fa47591713a5c4d987c928161 SHA512 35e44ffc776cbc7f58fa76c686d3c3693d125fccf482c8f3b66378058b8400ada37ebf2549e9bd362e46c3bfb586971a217cc3142dcf7a7468c95ec78638ee23
DIST RetroArch-1.20.0.tar.gz 65438985 BLAKE2B 15dddec3057db2c710e08d4892ea8088f1ee53fe17b2125f6c9528dd80d6a852a140e06eeb3b6f1ddd4ef86da84798235394fcfc5157e998185b584ffb77f603 SHA512 9d286ab6c4bfa479aa792f3c970c5c0ea598a78f027ad78c4272524dd4217322f78454e40ec326a857339a2fe1152c8fa9713a1a936818c0915c6dcb3b2f0a25
DIST RetroArch-1.21.0.tar.gz 70961877 BLAKE2B 14354bf20bbe453d195443320921718403123f68548d1d7242145d955627960958dcdad92b6484a06b888832a5cb4bfdf463ff21460aa209089d849a6d45d4f3 SHA512 8f6b2cf61687ec534b06aa8c9188df60e56eeeff9fe67e0b266df8e2fe4c1fbdb4cd64a0795202d7c6b20573e49aa4cc60fec7f34209ae4736cc2347df488255
DIST RetroArch-1.22.2.tar.gz 71629881 BLAKE2B b0349a7d65fd6e42a154098ccb7635eb47618cb4fe2e36807170663ec03466ad733a0b1117e8a008a8f6462412544f2059209ae95208ec4d365cd6c013bd0645 SHA512 59057d3fff3bec3bcb01143a270c3b9e74d148a2f1caa413d52f3533af94564576d2fce6f6273b5c79d11904ef670a6bf7c2c328fe3534a05d160e8a49b9daa1

View File

@@ -0,0 +1,194 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit edo flag-o-matic toolchain-funcs xdg
DESCRIPTION="RetroArch is a frontend for emulators, game engines and media players"
HOMEPAGE="https://www.retroarch.com"
SRC_URI="https://github.com/libretro/RetroArch/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-3"
SLOT="0"
KEYWORDS="~amd64"
IUSE="7zip alsa cg cpu_flags_arm_neon cpu_flags_arm_vfp cpu_flags_x86_sse2 cheevos debug dispmanx +egl filters ffmpeg gles2 gles3 hid jack kms libass libusb materialui network openal +opengl oss +ozone pipewire pulseaudio +rgui sdl +truetype +threads udev v4l2 videocore vulkan wayland X xinerama xmb xv zlib"
REQUIRED_USE="
|| ( opengl sdl vulkan dispmanx )
|| ( materialui ozone rgui xmb )
alsa? ( threads )
arm? ( gles2? ( egl ) )
!arm? (
egl? ( opengl )
gles2? ( opengl )
)
cg? ( opengl )
dispmanx? ( videocore arm )
gles2? ( !cg )
gles3? ( gles2 )
kms? ( egl )
libass? ( ffmpeg )
libusb? ( hid )
videocore? ( arm )
vulkan? ( amd64 )
wayland? ( egl )
xinerama? ( X )
xv? ( X )
"
RDEPEND="
app-arch/xz-utils
x11-libs/libxkbcommon
x11-libs/libXScrnSaver
alsa? ( media-libs/alsa-lib )
cg? ( media-gfx/nvidia-cg-toolkit:0= )
arm? ( dispmanx? ( || ( media-libs/raspberrypi-userland:0 media-libs/raspberrypi-userland-bin:0 ) ) )
ffmpeg? ( >=media-video/ffmpeg-2.1.3:0= )
jack? ( virtual/jack:= )
libass? ( media-libs/libass:0= )
libusb? ( virtual/libusb:1= )
openal? ( media-libs/openal )
opengl? ( media-libs/libglvnd )
pulseaudio? ( media-libs/libpulse )
pipewire? ( media-video/pipewire:= )
sdl? ( media-libs/libsdl2[joystick] )
truetype? (
media-libs/fontconfig
media-libs/freetype:2
)
udev? ( virtual/udev
X? ( x11-drivers/xf86-input-evdev:0= )
)
v4l2? ( media-libs/libv4l:0= )
wayland? (
dev-libs/wayland
dev-libs/wayland-protocols
)
X? (
x11-libs/libX11
x11-libs/libXext
x11-libs/libXi
x11-libs/libXrandr
x11-libs/libXxf86vm
x11-libs/libxcb:=
)
xinerama? ( x11-libs/libXinerama:0= )
xv? ( x11-libs/libXv )
zlib? ( virtual/zlib:= )
"
DEPEND="${RDEPEND}"
BDEPEND="
virtual/pkgconfig
wayland? ( dev-util/wayland-scanner )
"
src_configure() {
if use cg; then
append-ldflags -L"${EPREFIX}/"opt/nvidia-cg-toolkit/$(get_libdir)
append-cflags -I"${EPREFIX}/"opt/nvidia-cg-toolkit/include
fi
# Absolute path of the directory containing Retroarch shared libraries.
export RETROARCH_LIB_DIR="${EPREFIX}/usr/$(get_libdir)/retroarch"
if use filters; then
# Replace stock defaults with Gentoo-specific defaults.
sed -i retroarch.cfg \
-e 's:# \(video_filter_dir =\):\1 "/'${RETROARCH_LIB_DIR}'/filters/video/":' \
-e 's:# \(audio_filter_dir =\):\1 "/'${RETROARCH_LIB_DIR}'/filters/audio/":' \
|| die '"sed" failed.'
fi
tc-export CC CXX
# Note that OpenVG support is hard-disabled. (See ${RDEPEND} above.)
local myconf=(
--prefix="${EPREFIX}/usr"
--docdir="${EPREFIX}/usr/share/doc/${PF}"
--enable-dynamic
--disable-builtinzlib
--disable-qt
--disable-sdl
--disable-vg
--disable-osmesa
$(use_enable 7zip)
$(use_enable alsa)
$(use_enable cheevos)
$(use_enable cg)
$(use_enable cpu_flags_arm_neon neon)
$(use_enable cpu_flags_arm_vfp floathard)
$(use_enable cpu_flags_x86_sse2 sse)
$(use_enable dispmanx)
$(use_enable egl)
$(use_enable ffmpeg)
$(use_enable gles2 opengles)
$(use_enable gles3 opengles3)
$(use_enable hid)
$(use_enable jack)
$(use_enable kms)
$(use_enable libass ssa)
$(use_enable libusb)
$(use_enable materialui)
$(use_enable network networking)
$(use_enable openal al)
$(use_enable opengl)
$(use_enable oss)
$(use_enable ozone)
$(use_enable pulseaudio pulse)
$(use_enable pipewire)
$(use_enable rgui)
$(use_enable sdl sdl2)
$(use_enable threads)
$(use_enable truetype freetype)
$(use_enable udev)
$(use_enable v4l2)
$(use_enable videocore)
$(use_enable vulkan)
$(use_enable wayland)
$(use_enable X x11)
$(use_enable xinerama)
$(use_enable xmb)
$(use_enable xv xvideo)
$(use_enable zlib)
)
edo ./configure "${myconf[@]}"
}
src_compile() {
emake V=1 $(usex debug "DEBUG=1" "")
if use filters; then
emake $(usex debug "build=debug" "build=release") -C gfx/video_filters/
emake $(usex debug "build=debug" "build=release") -C libretro-common/audio/dsp_filters/
fi
}
src_install() {
# Install core files and directories.
emake DESTDIR="${D}" install
# Install documentation.
dodoc README.md
if use filters; then
# Install video filters.
insinto ${RETROARCH_LIB_DIR}/filters/video/
doins "${S}"/gfx/video_filters/*.so
doins "${S}"/gfx/video_filters/*.filt
# Install audio filters.
insinto ${RETROARCH_LIB_DIR}/filters/audio/
doins "${S}"/libretro-common/audio/dsp_filters/*.dsp
fi
}
pkg_postinst() {
if use oss; then
ewarn ""
ewarn "OSS support is enabled, however it is not installed as a dependency."
ewarn "Make sure you have OSS installed in your system."
ewarn ""
fi
}