diff --git a/games-fps/yamagi-quake2/metadata.xml b/games-fps/yamagi-quake2/metadata.xml
index c573477de061f..d965a72ff5948 100644
--- a/games-fps/yamagi-quake2/metadata.xml
+++ b/games-fps/yamagi-quake2/metadata.xml
@@ -16,6 +16,7 @@
Build client
Build support for the 'Capture The Flag' addon
Build support for the 'Ground Zero' Mission Pack
+ Build software renderer
Build support for the 'The Reckoning' Mission Pack
diff --git a/games-fps/yamagi-quake2/yamagi-quake2-7.21.ebuild b/games-fps/yamagi-quake2/yamagi-quake2-7.21.ebuild
index 779346e191f73..70d7287529094 100644
--- a/games-fps/yamagi-quake2/yamagi-quake2-7.21.ebuild
+++ b/games-fps/yamagi-quake2/yamagi-quake2-7.21.ebuild
@@ -19,19 +19,22 @@ SRC_URI="https://deponie.yamagi.org/quake2/quake2-${PV}.tar.xz
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
-IUSE="+client ctf dedicated ogg openal rogue xatrix"
-REQUIRED_USE="|| ( client dedicated )"
+IUSE="+client ctf dedicated ogg openal +opengl rogue softrender xatrix"
+REQUIRED_USE="|| ( client dedicated ) client? ( || ( opengl softrender ) )"
RDEPEND="sys-libs/zlib:0=
client? (
- media-libs/libsdl2[opengl,video]
- virtual/opengl
+ media-libs/libsdl2[video]
ogg? (
media-libs/libogg
media-libs/libvorbis
)
openal? ( media-libs/openal )
!openal? ( media-libs/libsdl2[sound] )
+ opengl? (
+ media-libs/libsdl2[opengl]
+ virtual/opengl
+ )
)
"
@@ -73,8 +76,10 @@ src_prepare() {
src_compile() {
local targets=( game )
- use client && targets+=( client ref_gl1 ref_gl3 )
+ use client && targets+=( client )
use dedicated && targets+=( server )
+ use opengl && targets+=( ref_gl1 ref_gl3 )
+ use softrender && targets+=( ref_soft )
mymake config
mymake "${targets[@]}"