commit:     97aca905d70e7ea2e4d5b9e045c3b42201cc9d6c
Author:     Lino Bigatti <linobigatti <AT> protonmail <DOT> com>
AuthorDate: Thu Apr 15 21:22:53 2021 +0000
Commit:     Andrew Ammerlaan <andrewammerlaan <AT> riseup <DOT> net>
CommitDate: Thu Apr 15 21:23:17 2021 +0000
URL:        https://gitweb.gentoo.org/repo/proj/guru.git/commit/?id=97aca905

games-emulation/np2kai: ebuild QA fixes

Package-Manager: Portage-3.0.17, Repoman-3.0.2
Signed-off-by: Lino Bigatti <linobigatti <AT> protonmail.com>

 games-emulation/np2kai/metadata.xml     |  9 ++--
 games-emulation/np2kai/np2kai-22.ebuild | 86 ++++++++++++++++++---------------
 2 files changed, 52 insertions(+), 43 deletions(-)

diff --git a/games-emulation/np2kai/metadata.xml 
b/games-emulation/np2kai/metadata.xml
index c8c54e1d0..7dcbc8858 100644
--- a/games-emulation/np2kai/metadata.xml
+++ b/games-emulation/np2kai/metadata.xml
@@ -11,12 +11,11 @@
                It is based on Neko project II.
        </longdescription>
        <use>
-               <flag name="sdl">
-                       Use <pkg>media-libs/libsdl</pkg> over 
<pkg>media-libs/libsdl2</pkg>
-               </flag>
+               <flag name="sdl">Use <pkg>media-libs/libsdl</pkg></flag>
+               <flag name="sdl2">Use <pkg>media-libs/libsdl2</pkg></flag>
                <flag name="i286">
-                       Enable i286 emulation.
-                       USE="ia32" or USE="haxm" will disable it, 
+                       Enable i286 emulation
+                       USE="ia32" or USE="haxm" will disable it,
                        unless all 3 emulation USE flags are set
                </flag>
                <flag name="ia32">Enable ia32 emulation</flag>

diff --git a/games-emulation/np2kai/np2kai-22.ebuild 
b/games-emulation/np2kai/np2kai-22.ebuild
index 22a7116ff..035962b57 100644
--- a/games-emulation/np2kai/np2kai-22.ebuild
+++ b/games-emulation/np2kai/np2kai-22.ebuild
@@ -3,66 +3,76 @@
 
 EAPI=7
 
-DESCRIPTION="NP2kai is an emulator for the japanese PC-98 series of computers."
+DESCRIPTION="NP2kai is an emulator for the japanese PC-98 series of computers"
 HOMEPAGE="https://domisan.sakura.ne.jp/article/np2kai/np2kai.html";
 SRC_URI="https://github.com/AZO234/NP2kai/archive/refs/tags/rev.${PV}.tar.gz 
-> ${P}.tar.gz"
 
-PATCHES=(
-       "${FILESDIR}/${P}-autogen.patch"
-)
-
 LICENSE="MIT"
 SLOT="0"
 KEYWORDS="~amd64"
-
-IUSE="sdl +i286 ia32 haxm"
+IUSE="sdl +sdl2 +i286 ia32 haxm"
+REQUIRED_USE="^^ ( sdl sdl2 )"
 
 # Configure crashes if sdl AND sdl2 are not present, even if the options are 
off
 # It also requires sdl2-ttf even when building for sdl
-DEPEND="sys-libs/glibc
-       media-libs/libsdl
-       sdl? ( media-libs/sdl-mixer )
-       sdl? ( media-libs/sdl-ttf )
+# TODO: test musl
+# TODO: migrate from gtk2 to gtk3
+DEPEND="media-libs/libsdl
        media-libs/libsdl2
-       !sdl? ( media-libs/sdl2-mixer )
+       sdl? (
+               media-libs/sdl-mixer
+               media-libs/sdl-ttf
+       )
+       sdl2? (
+               media-libs/sdl2-mixer
+       )
        media-libs/sdl2-ttf
        virtual/libusb:1
        x11-base/xorg-server
        x11-libs/gtk+:2"
-
 RDEPEND="${DEPEND}"
-BDEPEND="sys-devel/gcc
-       sys-devel/automake
-       dev-util/cmake"
+BDEPEND="sys-devel/automake"
 
-S=${WORKDIR}/NP2kai-rev.${PV}/x11
+S="${WORKDIR}/NP2kai-rev.${PV}/x11"
 
+PATCHES=(
+       "${FILESDIR}/${P}-autogen.patch"
+)
+
+# TODO: add a die statement to autogen
 src_configure() {
        bash "${S}/autogen.sh"
-       sdlconf=$(usex sdl "--enable-sdl --enable-sdlmixer --enable-sdlttf
-                                               --disable-sdl2 
--disable-sdl2mixer --disable-sdl2ttf" \
-                                               "--enable-sdl2 
--enable-sdl2mixer --enable-sdl2ttf
-                                               --disable-sdl 
--disable-sdlmixer --disable-sdlttf" )
-       features=$(     if use i286 && use ia32 && use haxm ; \
-                                       then echo --enable-build-all ; \
-                                       else echo $(use_enable ia32) 
$(use_enable haxm) ; \
-                               fi )
-       econf ${sdlconf} ${features}
+       if use i286 && use ia32 && use haxm ; then
+               features=("--enable-build-all")
+       else
+               features=($(use_enable ia32) $(use_enable haxm))
+       fi
+       local myeconfargs=(
+               $(use_enable sdl)
+               $(use_enable sdl sdlmixer)
+               $(use_enable sdl sdlttf)
+               $(use_enable sdl2)
+               $(use_enable sdl2 sdl2mixer)
+               $(use_enable sdl2 sdl2ttf)
+       )
+       econf "${myeconfargs[@]}" "${features}"
 }
 
 pkg_postinst() {
-       if [ "${features}" = "--enable-build-all" ] ; then
-               cfgname="{xnp2kai, xnp21kai}"
-       elif ! use ia32 && ! use haxm ; then
-               cfgname="xnp2kai"
-       else
-               cfgname="xnp21kai"
-       fi
+       if [[ -z ${REPLACING_VERSIONS} ]] ; then
+               if [ use i286 && use ia32 && use haxm ] ; then
+                       cfgname="{xnp2kai, xnp21kai}"
+               elif [ ! use ia32 && ! use haxm ] ; then
+                       cfgname="xnp2kai"
+               else
+                       cfgname="xnp21kai"
+               fi
 
-       elog    "Japanese fonts are needed to use the emulator."
-       elog    "Please run the following command to configure them:"
-       elog    "mkdir -p ~/.config/${cfgname} && ln -s /path/to/font.ttf 
~/.config/${cfgname}/default.ttf && rm ~/.config/${cfgname}/font.tmp"
+               elog    "Japanese fonts are needed to use the emulator."
+               elog    "Please run the following command to configure them:"
+               elog    "mkdir -p ~/.config/${cfgname} && ln -s 
/path/to/font.ttf ~/.config/${cfgname}/default.ttf && rm 
~/.config/${cfgname}/font.tmp"
 
-       elog    "Neko project 2 requires a BIOS dump to work."
-       elog    "Please dump the BIOS from your device and put the files under 
~/.config/${cfgname}"
+               elog    "Neko project 2 requires a BIOS dump to work."
+               elog    "Please dump the BIOS from your device and put the 
files under ~/.config/${cfgname}"
+       fi
 }

Reply via email to