commit:     2383e92ad2432f5f67efd97675c7c34709b71a76
Author:     Ionen Wolkens <sudinave <AT> gmail <DOT> com>
AuthorDate: Sun Apr 25 06:31:30 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun May  9 04:42:11 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2383e92a

games-emulation/mednafen: add 1.26.1 with reworked ebuild

Notable ebuild changes:
- EAPI-7
- libsdl -> libsdl2
- finally use virtual/jack (jack2 tested fine)
- use more aggressive sed for configure.ac's CFLAGS given upstream
  been adding yet more unnecessary compiler options such as attempts
  to disable spectre mitigation
- tentatively removed strip-flags (referenced bug #539992 was only
  because of lacking -fwrapv, but strip was added with it)
- tentatively removed ccache check (no explanation found, seems fine)
- use new --with-external-{lzo,mpcdec,tremor,trio} to unbundle
- pic/pie warning is now non-fatal but is repeated so much that used
  the new defines to disable anyway
- IUSE changes:
  > altivec: converted to cpu_flags_ppc_altivec (untested)
  > sndfile: added for libsndfile to be optional
  > cjk/debugger: removed (these are enabled by default, have
    no dependencies, and don't have a big impact on size)
- install html docs, the only viable source of usage information
 (README(s) are just build instructions)

Closes: https://bugs.gentoo.org/670672
Closes: https://bugs.gentoo.org/684088
Signed-off-by: Ionen Wolkens <sudinave <AT> gmail.com>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 games-emulation/mednafen/Manifest               |  1 +
 games-emulation/mednafen/mednafen-1.26.1.ebuild | 74 +++++++++++++++++++++++++
 2 files changed, 75 insertions(+)

diff --git a/games-emulation/mednafen/Manifest 
b/games-emulation/mednafen/Manifest
index 5f30b0b2339..73bc534957c 100644
--- a/games-emulation/mednafen/Manifest
+++ b/games-emulation/mednafen/Manifest
@@ -1 +1,2 @@
 DIST mednafen-0.9.46.tar.xz 3187988 BLAKE2B 
c33da02bfb0cce37e9029efc98d11e233686c41c7ecb51110a3fe805b3a13f2fef293dd86b7bc7a3ff172f7f0f507e07804a2927e5b41c1927ca52673f068dfb
 SHA512 
ea624f076922570001393d5d04cc1b20b3d005d31de4095ee5c7a985be2b61e8d3aa5e78c64e751e8233adc89a31be955372caeb2818d0a5cc71ba9380931620
+DIST mednafen-1.26.1.tar.xz 3319756 BLAKE2B 
d306a0754ed0c64a99cee4eacfa47f5f46ca059026bfc2ef6bfff4be82e914a2882a864538c8cb6bb948cdb9bd53651d931b033446015ad06be309893a2bfef7
 SHA512 
c91db3967c09a475fcd3410eb6892a99f3cf2ca2c5a78173669aa52c2e588819595d1d140e0c1888f48885327a9381c64cfb8f2074be8067984a4414c6f282bf

diff --git a/games-emulation/mednafen/mednafen-1.26.1.ebuild 
b/games-emulation/mednafen/mednafen-1.26.1.ebuild
new file mode 100644
index 00000000000..1fb74cdae5e
--- /dev/null
+++ b/games-emulation/mednafen/mednafen-1.26.1.ebuild
@@ -0,0 +1,74 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic pax-utils toolchain-funcs
+
+DESCRIPTION="Argument-driven multi-system emulator utilizing OpenGL and SDL"
+HOMEPAGE="https://mednafen.github.io/";
+SRC_URI="https://mednafen.github.io/releases/files/${P}.tar.xz";
+S="${WORKDIR}/${PN}"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="alsa cpu_flags_ppc_altivec jack +sndfile"
+
+RDEPEND="
+       dev-libs/lzo:2
+       dev-libs/trio
+       media-libs/libsdl2[joystick,opengl,video]
+       media-libs/tremor
+       media-sound/musepack-tools
+       sys-libs/zlib:=[minizip]
+       virtual/libintl
+       alsa? ( media-libs/alsa-lib )
+       jack? ( virtual/jack )
+       sndfile? ( media-libs/libsndfile )"
+DEPEND="${RDEPEND}"
+BDEPEND="
+       sys-devel/gettext
+       virtual/pkgconfig"
+
+src_prepare() {
+       default
+
+       # don't let the build system mess with CFLAGS more than necessary,
+       # most are questionable (see README.PORTING/configure.ac comments)
+       # -fwrapv: kept for bug #539992
+       sed -e '/CC_OPT.*CODEGEN_FLAGS/{/-fwrapv/!d}' \
+               -e '/CC_OPT.*NO_STACK_PROTECTOR_FLAGS/d' \
+               -e '/CC_OPT.*OPTIMIZER_FLAGS/c\:' \
+               -e '/CC_OPT.*-mtune.*SS_EXTRA_FLAGS/d' \
+               -i configure.ac || die
+       eautoreconf
+}
+
+src_configure() {
+       # disable unnecessary warnings not to confuse users (see src/types.h)
+       append-cppflags -DMDFN_DISABLE_{NO_OPT,PICPIE}_ERRWARN
+
+       local myeconfargs=(
+               $(use_enable alsa)
+               $(use_enable cpu_flags_ppc_altivec altivec)
+               $(use_enable jack)
+               $(use_with sndfile libsndfile)
+               --with-external-{lzo,mpcdec,tremor,trio}
+       )
+       econf "${myeconfargs[@]}"
+}
+
+src_compile() {
+       emake AR="$(tc-getAR)"
+}
+
+src_install() {
+       local DOCS=(
+               ChangeLog
+               
Documentation/{cheats.txt,fname_format.txt,modules.def,settings.def}
+       )
+       local HTML_DOCS=( Documentation/*.{css,html,png} )
+       default
+       pax-mark m "${ED}"/usr/bin/mednafen
+}

Reply via email to