Gentoo Archives: gentoo-commits

From: Michael Sterrett <mr_bones_@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: games-emulation/sdlmame/
Date: Sat, 12 Dec 2015 02:46:28
Message-Id: 1449888370.338cdf4d35e1e7a6965949e63a3f92b6300936a1.mr_bones_@gentoo
1 commit: 338cdf4d35e1e7a6965949e63a3f92b6300936a1
2 Author: Michael Sterrett <mr_bones_ <AT> gentoo <DOT> org>
3 AuthorDate: Sat Dec 12 02:45:46 2015 +0000
4 Commit: Michael Sterrett <mr_bones_ <AT> gentoo <DOT> org>
5 CommitDate: Sat Dec 12 02:46:10 2015 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=338cdf4d
7
8 version bump
9
10 Package-Manager: portage-2.2.24
11
12 games-emulation/sdlmame/Manifest | 1 +
13 games-emulation/sdlmame/sdlmame-0.168.ebuild | 233 +++++++++++++++++++++++++++
14 2 files changed, 234 insertions(+)
15
16 diff --git a/games-emulation/sdlmame/Manifest b/games-emulation/sdlmame/Manifest
17 index 643a4db..86cf58d 100644
18 --- a/games-emulation/sdlmame/Manifest
19 +++ b/games-emulation/sdlmame/Manifest
20 @@ -1,4 +1,5 @@
21 DIST mame-0.167.zip 82926991 SHA256 9457dd6e56b508ace7d3ce3d4fa3407639b953bf2a2893bd47efa30ad8432a99 SHA512 0929ecfb8f63b15d35001a5a2aba4f9c845dab50f7d0de36af3243c2c4b2c541c923166e1b222e1958c092538d88511e70ae2c4c75632556d2b8864e859cee0b WHIRLPOOL eaa77124a8a7f6bb41f1265d8b1d8df54f077d0702621c7b125ddcc1702c4fe71d556a3079ee09e433cfa06cb5c663b8ddcc3f33e0b1279db3878cebfb737da0
22 +DIST mame-0.168.zip 82770536 SHA256 f91e014c3d3bf3da790284a25437f231a84228a6adbf42db35ca34a57f8a3092 SHA512 14b0519682f8aeb2379cd29b9e0ad8f3c54866296ac158876435425b79c3bf19a2dc520df7a44fe301a8e8cbbc335185602f4998edf6e95324f527c50c72411e WHIRLPOOL 41ddbe191423e3653a52f7734cc85088f1c663fd9aefdbd00ceefbe86f27bde190d14505be7fa69f76c7a39c6bbb5ab196685c2e001c8517cb90f4f7f27e8a51
23 DIST mame0148s.zip 33822494 SHA256 78d8a68ba53934fdfc895f450c08682dada81f7ec3e74a98fb042539506d9321 SHA512 a520115e2e82b2da3200ffa1fa56f668f95c3e26a927bcdb30a34e73053e55d26a6a6c1ec95eae1237bce1d2d0cd276b84466705fd5f53ac77827d06ea04bc03 WHIRLPOOL c6de71c198396977475110ab5840b7eaa6e5074519adffc286dd539ab916ea951fa1c307218b0d144cdc8aeeb096216106a3c21a6d53b42c04dc75e8103be04a
24 DIST mame0149s.zip 35160585 SHA256 0e41b5773bea217d3ca04002903ac5ef569e6f5b67c05c72496d2cd7993b0a6b SHA512 4b8bd72e93f71fdb52c643776ecefb87fe605effe3f8c1724156cf7fafb8107330d92914eb14208a170cd5a0ee2775e7ea8d8edd0b525a35bbb0d5514172c1c3 WHIRLPOOL c5821ffc0f640e93986cd88f9e530be36e5ba0405a5dbc69a5021c828248dc74541340d5d9d49ece19635b5239bbaeeeb93bad2800fc46e9f441d8ffd3751ca5
25 DIST sdlmame-ui.bdf.gz 114727 SHA256 f2ec11dd926bbeae8647e68607107516a30790239464939f3e99a0f62fc7f17e SHA512 67ba1bc632c1ac51b97acf8c1061477edd3519fea3d1233951723741c926ff72e259c274babb036abf4db92f217db507c58a6fc6e438db4b14c5fe5789b2ed64 WHIRLPOOL 2150053b38d8318804bf40cdcd9cdefdd2976c4cfab563c90021f0d9be0a0a57174166ece8b51658d9f2192e07343f198358299667a1db32f146c9fb9c528956
26
27 diff --git a/games-emulation/sdlmame/sdlmame-0.168.ebuild b/games-emulation/sdlmame/sdlmame-0.168.ebuild
28 new file mode 100644
29 index 0000000..346fdc4
30 --- /dev/null
31 +++ b/games-emulation/sdlmame/sdlmame-0.168.ebuild
32 @@ -0,0 +1,233 @@
33 +# Copyright 1999-2015 Gentoo Foundation
34 +# Distributed under the terms of the GNU General Public License v2
35 +# $Id$
36 +
37 +EAPI=5
38 +PYTHON_COMPAT=( python2_7 )
39 +inherit eutils python-any-r1 toolchain-funcs games
40 +
41 +MY_PV="${PV/.}"
42 +
43 +DESCRIPTION="Multiple Arcade Machine Emulator + Multi Emulator Super System (MESS)"
44 +HOMEPAGE="http://mamedev.org/"
45 +SRC_URI="https://github.com/mamedev/mame/releases/download/mame${MY_PV}/mame${MY_PV}s.zip -> mame-${PV}.zip"
46 +
47 +LICENSE="XMAME"
48 +SLOT="0"
49 +KEYWORDS="~amd64 ~x86"
50 +IUSE="X alsa +arcade debug +mess opengl tools"
51 +REQUIRED_USE="|| ( arcade mess )
52 + debug? ( X )"
53 +
54 +# MESS (games-emulation/sdlmess) has been merged into MAME upstream since mame-0.162 (see below)
55 +# MAME/MESS build combined (default) +arcade +mess (mame)
56 +# MAME build only +arcade -mess (mamearcade)
57 +# MESS build only -arcade +mess (mess)
58 +# games-emulation/sdlmametools is dropped and enabled instead by the 'tools' useflag
59 +RDEPEND="!games-emulation/sdlmametools
60 + !games-emulation/sdlmess
61 + dev-db/sqlite:3
62 + dev-libs/expat
63 + media-libs/fontconfig
64 + media-libs/flac
65 + media-libs/libsdl2[joystick,opengl?,sound,video]
66 + media-libs/portaudio
67 + media-libs/sdl2-ttf
68 + sys-libs/zlib
69 + virtual/jpeg:0
70 + alsa? ( media-libs/alsa-lib
71 + media-libs/portmidi )
72 + debug? ( dev-qt/qtcore:4
73 + dev-qt/qtgui:4 )
74 + X? ( x11-libs/libX11
75 + x11-libs/libXinerama )
76 + ${PYTHON_DEPS}"
77 +DEPEND="${RDEPEND}
78 + ${PYTHON_DEPS}
79 + app-arch/unzip
80 + virtual/pkgconfig
81 + X? ( x11-proto/xineramaproto )"
82 +
83 +S=${WORKDIR}
84 +
85 +# Function to disable a makefile option
86 +disable_feature() {
87 + sed -i -e "/$1.*=/s:^:# :" makefile || die
88 +}
89 +
90 +# Function to enable a makefile option
91 +enable_feature() {
92 + sed -i -e "/^#.*$1.*=/s:^#::" makefile || die
93 +}
94 +
95 +pkg_setup() {
96 + games_pkg_setup
97 + python-any-r1_pkg_setup
98 +}
99 +
100 +src_unpack() {
101 + default
102 + unpack ./mame.zip
103 + rm -f mame.zip || die
104 +}
105 +
106 +src_prepare() {
107 + # Disable using bundled libraries
108 + enable_feature USE_SYSTEM_LIB_EXPAT
109 + enable_feature USE_SYSTEM_LIB_FLAC
110 + enable_feature USE_SYSTEM_LIB_JPEG
111 +# Use bundled lua for now to ensure correct compilation (ref. b.g.o #407091)
112 +# enable_feature USE_SYSTEM_LIB_LUA
113 + enable_feature USE_SYSTEM_LIB_PORTAUDIO
114 + enable_feature USE_SYSTEM_LIB_SQLITE3
115 + enable_feature USE_SYSTEM_LIB_ZLIB
116 +
117 + # Disable warnings being treated as errors and enable verbose build output
118 + enable_feature NOWERROR
119 + enable_feature VERBOSE
120 +
121 + use amd64 && enable_feature PTR64
122 + use ppc && enable_feature BIGENDIAN
123 + use debug && enable_feature DEBUG
124 + use opengl || enable_feature NO_OPENGL
125 + use tools && enable_feature TOOLS
126 + use X || enable_feature NO_X11
127 +
128 + if use alsa ; then
129 + enable_feature USE_SYSTEM_LIB_PORTMIDI
130 + else
131 + enable_feature NO_USE_MIDI
132 + fi
133 +
134 + sed -i \
135 + -e 's/-Os//' \
136 + -e '/^\(CC\|CXX\|AR\) /s/=/?=/' \
137 + 3rdparty/genie/build/gmake.linux/genie.make || die
138 +}
139 +
140 +src_compile() {
141 + local targetargs
142 + local qtdebug=$(usex debug 1 0)
143 +
144 + use arcade && ! use mess && targetargs="SUBTARGET=arcade"
145 + ! use arcade && use mess && targetargs="SUBTARGET=mess"
146 +
147 + function my_emake() {
148 + # Workaround conflicting $ARCH variable used by both Gentoo's
149 + # portage and by Mame's build scripts
150 + # turn off bgfx for now since it's an embedded library (bug #556642)
151 + PYTHON_EXECUTABLE=${PYTHON} \
152 + OVERRIDE_CC=$(tc-getCC) \
153 + OVERRIDE_CXX=$(tc-getCXX) \
154 + OVERRIDE_LD=$(tc-getCXX) \
155 + USE_BGFX= \
156 + ARCH= \
157 + emake "$@" \
158 + AR=$(tc-getAR)
159 + }
160 + my_emake -j1 generate
161 +
162 + my_emake ${targetargs} \
163 + SDL_INI_PATH="\$\$\$\$HOME/.sdlmame;${GAMES_SYSCONFDIR}/${PN}" \
164 + USE_QTDEBUG=${qtdebug}
165 +
166 + if use tools ; then
167 + my_emake -j1 TARGET=ldplayer USE_QTDEBUG=${qtdebug}
168 + fi
169 +}
170 +
171 +src_install() {
172 + local MAMEBIN
173 + local suffix="$(use amd64 && echo 64)$(use debug && echo d)"
174 + local f
175 +
176 + function mess_install() {
177 + dosym ${MAMEBIN} "${GAMES_BINDIR}"/mess${suffix}
178 + dosym ${MAMEBIN} "${GAMES_BINDIR}"/sdlmess
179 + newman src/osd/sdl/man/mess.6 sdlmess.6
180 + doman src/osd/sdl/man/mess.6
181 + }
182 + if use arcade ; then
183 + if use mess ; then
184 + MAMEBIN="mame${suffix}"
185 + mess_install
186 + else
187 + MAMEBIN="mamearcade${suffix}"
188 + fi
189 + doman src/osd/sdl/man/mame.6
190 + newman src/osd/sdl/man/mame.6 ${PN}.6
191 + elif use mess ; then
192 + MAMEBIN="mess${suffix}"
193 + mess_install
194 + fi
195 + dogamesbin ${MAMEBIN}
196 + dosym ${MAMEBIN} "${GAMES_BINDIR}/${PN}"
197 +
198 + insinto "${GAMES_DATADIR}/${PN}"
199 + doins -r src/osd/sdl/keymaps $(use mess && echo hash)
200 +
201 + # Create default mame.ini and inject Gentoo settings into it
202 + # Note that '~' does not work and '$HOME' must be used
203 + ./${MAMEBIN} -noreadconfig -showconfig > "${T}/mame.ini" || die
204 + # -- Paths --
205 + for f in {rom,hash,sample,art,font,crosshair} ; do
206 + sed -i \
207 + -e "s:\(${f}path\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2;${GAMES_DATADIR}/${PN}/\2:" \
208 + "${T}/mame.ini" || die
209 + done
210 + for f in {ctrlr,cheat} ; do
211 + sed -i \
212 + -e "s:\(${f}path\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2;${GAMES_SYSCONFDIR}/${PN}/\2;${GAMES_DATADIR}/${PN}/\2:" \
213 + "${T}/mame.ini" || die
214 + done
215 + # -- Directories
216 + for f in {cfg,nvram,memcard,input,state,snapshot,diff,comment} ; do
217 + sed -i \
218 + -e "s:\(${f}_directory\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2:" \
219 + "${T}/mame.ini" || die
220 + done
221 + # -- Keymaps --
222 + sed -i \
223 + -e "s:\(keymap_file\)[ \t]*\(.*\):\1 \t\t\$HOME/.${PN}/\2:" \
224 + "${T}/mame.ini" || die
225 + for f in src/osd/sdl/keymaps/km*.txt ; do
226 + sed -i \
227 + -e "/^keymap_file/a \#keymap_file \t\t${GAMES_DATADIR}/${PN}/keymaps/${f##*/}" \
228 + "${T}/mame.ini" || die
229 + done
230 + insinto "${GAMES_SYSCONFDIR}/${PN}"
231 + doins "${T}/mame.ini"
232 +
233 + insinto "${GAMES_SYSCONFDIR}/${PN}"
234 + doins "${FILESDIR}/vector.ini"
235 +
236 + dodoc docs/{config,mame,newvideo}.txt
237 + keepdir \
238 + "${GAMES_DATADIR}/${PN}"/{ctrlr,cheat,roms,samples,artwork,crosshair} \
239 + "${GAMES_SYSCONFDIR}/${PN}"/{ctrlr,cheat}
240 +
241 + if use tools ; then
242 + for f in castool chdman floptool imgtool jedutil ldresample ldverify romcmp testkeys ; do
243 + newgamesbin ${f} ${PN}-${f}
244 + newman src/osd/sdl/man/${f}.1 ${PN}-${f}.1
245 + done
246 + newgamesbin ldplayer${suffix} ${PN}-ldplayer
247 + newman src/osd/sdl/man/ldplayer.1 ${PN}-ldplayer.1
248 + fi
249 +
250 + prepgamesdirs
251 +}
252 +
253 +pkg_postinst() {
254 + games_pkg_postinst
255 +
256 + elog "It is strongly recommended to change either the system-wide"
257 + elog " ${GAMES_SYSCONFDIR}/${PN}/mame.ini or use a per-user setup at ~/.${PN}/mame.ini"
258 + elog
259 + if use opengl ; then
260 + elog "You built ${PN} with opengl support and should set"
261 + elog "\"video\" to \"opengl\" in mame.ini to take advantage of that"
262 + elog
263 + elog "For more info see http://wiki.mamedev.org"
264 + fi
265 +}