# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 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 flac jack" RDEPEND=" app-arch/zstd:= 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 ) flac? ( media-libs/flac:= ) jack? ( virtual/jack )" 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.*NOPICPIE_FLAGS/d' \ -e '/CC_OPT.*NO_STACK_PROTECTOR_FLAGS/d' \ -e '/CC_OPT.*OPTIMIZER_FLAGS/c\:' \ -e '/CC_OPT.*-mtune.*SS_EXTRA_FLAGS/d' \ -e '/LINK_FLAG.*NOPICPIE_LDFLAGS/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 flac libflac) --with-external-{libzstd,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 }