Gentoo Archives: gentoo-commits

From: David Seifert <soap@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: games-emulation/mednafen/
Date: Sun, 13 Aug 2017 12:36:19
Message-Id: 1502627755.4c63abe9dafbe211dfc940bc06dfe9df77b83482.soap@gentoo
1 commit: 4c63abe9dafbe211dfc940bc06dfe9df77b83482
2 Author: David Seifert <soap <AT> gentoo <DOT> org>
3 AuthorDate: Sun Aug 13 12:35:55 2017 +0000
4 Commit: David Seifert <soap <AT> gentoo <DOT> org>
5 CommitDate: Sun Aug 13 12:35:55 2017 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4c63abe9
7
8 games-emulation/mednafen: Version bump to 0.9.46
9
10 * Also remove the annoying PIC checks
11
12 Bug: https://bugs.gentoo.org/show_bug.cgi?id=624482
13 Package-Manager: Portage-2.3.6, Repoman-2.3.3
14
15 games-emulation/mednafen/Manifest | 1 +
16 games-emulation/mednafen/mednafen-0.9.46.ebuild | 115 ++++++++++++++++++++++++
17 2 files changed, 116 insertions(+)
18
19 diff --git a/games-emulation/mednafen/Manifest b/games-emulation/mednafen/Manifest
20 index f2335b196f6..ee6acd5c26a 100644
21 --- a/games-emulation/mednafen/Manifest
22 +++ b/games-emulation/mednafen/Manifest
23 @@ -1,3 +1,4 @@
24 DIST mednafen-0.9.41.tar.xz 3148348 SHA256 74736b9b52a7ba6270b67ae8e6c876a887e0e26a00a7d96bdd49af17992aac47 SHA512 d3c7707874eabbec41e5b725813d16e599f3ad89ecbd9c8e1264184d74ab2bf7a21a3f6fe177b6bc429f7bd56f9eea17a9a6fefce8e70b82e87a93d75f5d39c9 WHIRLPOOL f754a45f46a5cd18117b1b710dd7fed5ebcfb311bf4ed4b7961c99636c13559db75f83cf7b34122fb403b7794ddeec6af79469bb7743cb60a7840ffe807fa2d7
25 DIST mednafen-0.9.45.1.tar.xz 3183380 SHA256 f95f68acc14f9b30b201e15b8205d85ac9dc7e581ea6b61e225e990491f01e69 SHA512 b49b7638166dfb20d43c3278e7084e99e535dc9c2c1e3ecad82ebf41a1dddbeca9350dfcc26eb43d1661cbe5aa3ba4cde3010ca5680ae9398dc160cbe11d6726 WHIRLPOOL b63568d3a6a4aa055c6a1a576ad74d9bdd4ffcb8fdb41a44dedf390a591eb2f21a382d638df7343927b1a95f236ef9ab505cbc7cb0bb2f1c25406730252223bc
26 DIST mednafen-0.9.45.tar.xz 3184340 SHA256 49715544a5eb7a678f7f01994f38aa14e2192f00d201684184665665073a600e SHA512 d2d61eef0a5ab2c3109fb3c4fbdb2509504c61ffaab14a51e413204f08a622e47c116c7333866a3406a1fa7ac4bf68349c0212bc9fcb544d4953898b03a2fb71 WHIRLPOOL 3e8466852d8c04207a307ac2d74c5d9b76b51d0f9cd2c0ae16f59d57ae884dec8fd8d62454996c574f25a530ac568f7a2c884657b2f6b85d0810dc1fb51ad9e0
27 +DIST mednafen-0.9.46.tar.xz 3187988 SHA256 674faf42bdb0ad5649aea65da266b0be3428995caaa7be183fc6d3ed7732467a SHA512 ea624f076922570001393d5d04cc1b20b3d005d31de4095ee5c7a985be2b61e8d3aa5e78c64e751e8233adc89a31be955372caeb2818d0a5cc71ba9380931620 WHIRLPOOL f3e02ea2c4511206987c7c1d500d573ec4e166a03db1c35ae12ddadffb5644ce2e26e336b6c27d3a3a7fc4edbbd5b0c34aa3ce5d941d222afb16ab2601701578
28
29 diff --git a/games-emulation/mednafen/mednafen-0.9.46.ebuild b/games-emulation/mednafen/mednafen-0.9.46.ebuild
30 new file mode 100644
31 index 00000000000..a42d9936b35
32 --- /dev/null
33 +++ b/games-emulation/mednafen/mednafen-0.9.46.ebuild
34 @@ -0,0 +1,115 @@
35 +# Copyright 1999-2017 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +
38 +EAPI=6
39 +
40 +inherit autotools flag-o-matic pax-utils
41 +
42 +DESCRIPTION="Argument-driven multi-system emulator utilizing OpenGL and SDL"
43 +HOMEPAGE="https://mednafen.github.io/"
44 +SRC_URI="https://mednafen.github.io/releases/files/${P}.tar.xz"
45 +
46 +LICENSE="GPL-2"
47 +SLOT="0"
48 +KEYWORDS="~amd64 ~x86"
49 +IUSE="alsa altivec cjk debugger jack nls pax_kernel"
50 +
51 +RDEPEND="
52 + dev-libs/libcdio
53 + >=dev-libs/lzo-2.10
54 + media-libs/libsdl[sound,joystick,opengl,video]
55 + media-libs/libsndfile
56 + sys-libs/zlib[minizip]
57 + virtual/opengl
58 + alsa? ( media-libs/alsa-lib )
59 + jack? ( media-sound/jack-audio-connection-kit )
60 + nls? ( virtual/libintl )"
61 +DEPEND="${RDEPEND}
62 + virtual/pkgconfig
63 + nls? ( sys-devel/gettext )"
64 +
65 +S=${WORKDIR}/${PN}
66 +
67 +pkg_pretend() {
68 + if has ccache ${FEATURES}; then
69 + ewarn
70 + ewarn "If you experience build failure, try turning off ccache in FEATURES."
71 + ewarn
72 + fi
73 +}
74 +
75 +src_prepare() {
76 + default
77 +
78 + # Unfortunately, upstream is insane and thinks mucking with CFLAGS is okay, if
79 + # it prevents "users who don't understand the consequences of what they're doing".
80 + # We use sed's here, as they're more forward-compatible than patches which need to
81 + # be constantly rebased. DO NOT REPLACE THEM UNLESS YOU HAVE PERMISSION FROM GAMES.
82 + sed -e '/-fno-fast-math/d' \
83 + -e '/-fno-unsafe-math-optimizations/d' \
84 + -e '/-fno-aggressive-loop-optimizations/d' \
85 + -e '/-fno-ipa-icf/d' \
86 + -e '/-fno-printf-return-value/d' \
87 + -e '/-fomit-frame-pointer/d' \
88 + -e '/-fno-pic/d' \
89 + -e '/-fno-pie/d' \
90 + -e '/-fno-PIC/d' \
91 + -e '/-fno-PIE/d' \
92 + -e '/-nopie/d' \
93 + -e '/-no-pie/d' \
94 + -e '/-fno-stack-protector/d' \
95 + -e '/-fno-stack-protector-all/d' \
96 + -e '/-fno-stack-protector-strong/d' \
97 + -e '/-mtune=haswell/d' \
98 + -i configure.ac || die
99 +
100 + # Furthermore, upstream is also insane about bundling libraries and considers it
101 + # "an aesthetics issue" and is even unwilling to make unbundling optional.
102 + # Libs to unbundle: minilzo, minizip
103 + sed -e '/PKG_PROG_PKG_CONFIG/a PKG_CHECK_MODULES([LZO], [lzo2])' \
104 + -i configure.ac || die
105 + sed -e '/bin_PROGRAMS/a mednafen_CPPFLAGS = \$(LZO_CFLAGS)' \
106 + -i src/Makefile.am || die
107 + sed -e 's:"compress/minilzo.h":<lzo1x.h>:' \
108 + -i src/{mednafen,qtrecord}.cpp || die
109 + sed -e 's:compress/ioapi.c::' \
110 + -e 's:compress/unzip.c::' \
111 + -e 's:compress/minilzo.c::' \
112 + -i src/compress/Makefile.am.inc || die
113 + sed -e 's:"compress/unzip.h":<minizip/unzip.h>:' \
114 + -i src/file.cpp || die
115 + sed -e 's:\(mednafen_LDADD.*trio/libtrio\.a\):\1 -lminizip \$(LZO_LIBS):' \
116 + -i src/Makefile.am || die
117 + # delete bundled files just to be sure...
118 + rm src/compress/{ioapi.?,*lzo*,unzip.?} || die
119 +
120 + # The insanity continues... upstream now believes it needs to
121 + # warn users when compiling with -fPIC/-fPIE enabled
122 + sed -e '/Compiling with position-independent code generation enabled is not recommended, for performance reasons/d' \
123 + -i src/types.h || die
124 +
125 + eautoreconf
126 +}
127 +
128 +src_configure() {
129 + # very dodgy code (bug #539992)
130 + strip-flags
131 + append-flags -fomit-frame-pointer -fwrapv
132 +
133 + econf \
134 + $(use_enable alsa) \
135 + $(use_enable altivec) \
136 + $(use_enable cjk cjk-fonts) \
137 + $(use_enable debugger) \
138 + $(use_enable jack) \
139 + $(use_enable nls)
140 +}
141 +
142 +src_install() {
143 + default
144 + dodoc Documentation/cheats.txt
145 +
146 + if use pax_kernel; then
147 + pax-mark m "${ED%/}"/usr/bin/mednafen || die
148 + fi
149 +}