diff options
author | 2008-04-24 20:26:29 +0000 | |
---|---|---|
committer | 2008-04-24 20:26:29 +0000 | |
commit | faf23e679c5ac162a7da8af2e88507585dddd755 (patch) | |
tree | a7c22c4f73bed72fcef20818f8970883004b3ae4 /games-emulation/sdlmame/sdlmame-0.124.ebuild | |
parent | Stable for HPPA (bug #214285). (diff) | |
download | historical-faf23e679c5ac162a7da8af2e88507585dddd755.tar.gz historical-faf23e679c5ac162a7da8af2e88507585dddd755.tar.bz2 historical-faf23e679c5ac162a7da8af2e88507585dddd755.zip |
Initial release
Package-Manager: portage-2.1.4.4
Diffstat (limited to 'games-emulation/sdlmame/sdlmame-0.124.ebuild')
-rw-r--r-- | games-emulation/sdlmame/sdlmame-0.124.ebuild | 155 |
1 files changed, 155 insertions, 0 deletions
diff --git a/games-emulation/sdlmame/sdlmame-0.124.ebuild b/games-emulation/sdlmame/sdlmame-0.124.ebuild new file mode 100644 index 000000000000..a482e301c750 --- /dev/null +++ b/games-emulation/sdlmame/sdlmame-0.124.ebuild @@ -0,0 +1,155 @@ +# Copyright 1999-2008 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/games-emulation/sdlmame/sdlmame-0.124.ebuild,v 1.1 2008/04/24 20:26:29 joker Exp $ + +inherit eutils flag-o-matic games + +DESCRIPTION="Multiple Arcade Machine Emulator (SDL)" +HOMEPAGE="http://rbelmont.mameworld.info/?page_id=163" + +MY_PV=${PV/.} +MY_PV=${MY_PV/_p/u} +MY_P=${PN}${MY_PV} + +# Upstream doesn't allow fetching with unknown User-Agent such as wget +SRC_URI="mirror://gentoo/${MY_P}.zip + mirror://gentoo/${PN}-manpages.tar.gz" + +# Same as xmame. Should it be renamed to MAME? +LICENSE="XMAME" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="debug opengl" + +RDEPEND=">=media-libs/libsdl-1.2.10 + sys-libs/zlib + dev-libs/expat + x11-libs/libXinerama + debug? ( + >gnome-base/gconf-2 + >=x11-libs/gtk+-2 )" + +DEPEND="${RDEPEND} + app-arch/unzip + x11-proto/xineramaproto" + +S="${WORKDIR}/${MY_P}" + +# Function to disable a makefile option +disable_feature() { + sed -i \ + -e "/$1.*=/s:^:# :" \ + "${S}"/makefile \ + || die "sed failed" +} + +# Function to enable a makefile option +enable_feature() { + sed -i \ + -e "/^#.*$1.*=/s:^# ::" \ + "${S}"/makefile \ + || die "sed failed" +} + +pkg_setup() { + if use opengl && ! built_with_use media-libs/libsdl opengl ; then + die "Please emerge media-libs/libsdl with USE=opengl" + fi + games_pkg_setup +} + +src_unpack() { + unpack ${A} + sed -i \ + -e '/CFLAGS += -O$(OPTIMIZE)/s:^:# :' \ + -e '/CFLAGS += -pipe/s:^:# :' \ + -e '/LDFLAGS += -s/s:^:# :' \ + "${S}"/makefile \ + || die "sed failed" + + # CFLAGS and build debugging help + #sed -i \ + # -e "/^\(AR\|CC\|LD\|RM\) =/s:@::" \ + # -i "${S}"/makefile +} + +src_compile() { + local make_opts + + # Don't compile zlib and expat + einfo "Disabling embedded libraries: zlib and expat" + disable_feature BUILD_ZLIB + disable_feature BUILD_EXPAT + + if use amd64; then + einfo "Enabling 64-bit support" + enable_feature PTR64 + fi + + if use ppc; then + einfo "Enabling PPC support" + enable_feature BIGENDIAN + fi + + if use debug ; then + ewarn "Building with DEBUG support is not recommended for normal use" + enable_feature DEBUG + enable_feature PROFILE + enable_feature SYMBOLS + make_opts="${make_opts} DEBUGGER=1" + fi + + use opengl || make_opts="${make_opts} NO_OPENGL=1" + + emake \ + NAME="${PN}" \ + OPT_FLAGS='-DINI_PATH=\"\$$HOME/.sdlmame\;'"${GAMES_SYSCONFDIR}/${PN}"'\"'" ${CFLAGS}" \ + SUFFIX="" \ + ${make_opts} \ + || die "emake failed" +} + +src_install() { + dogamesbin "${PN}" || die "dogamesbin "${PN}" failed" + + # Follows xmame ebuild, avoiding collision on /usr/games/bin/jedutil + exeinto "$(games_get_libdir)/${PN}" + local f + for f in chdman makemeta jedutil romcmp testkeys; do + doexe "${f}" || die "doexe ${f} failed" + done + + insinto "${GAMES_DATADIR}/${PN}" + doins ui.bdf || die "doins ui.bdf failed" + doins -r keymaps || die "doins -r keymaps failed" + + insinto "${GAMES_SYSCONFDIR}/${PN}" + doins "${FILESDIR}"/{joymap.dat,vector.ini} || die "doins joymap.dat vector.ini failed" + + sed \ + -e "s:@GAMES_SYSCONFDIR@:${GAMES_SYSCONFDIR}:" \ + -e "s:@GAMES_DATADIR@:${GAMES_DATADIR}:" \ + "${FILESDIR}"/mame.ini.in > "${D}/${GAMES_SYSCONFDIR}/${PN}/"mame.ini \ + || die "sed failed" + + dodoc docs/{config,mame,newvideo}.txt *.txt + doman "${WORKDIR}/${PN}-manpages"/* + + keepdir "${GAMES_DATADIR}/${PN}"/{roms,samples,artwork} + keepdir "${GAMES_SYSCONFDIR}/${PN}"/ctrlr + + prepgamesdirs +} + +pkg_postinst() { + games_pkg_postinst + + elog "It's strongly recommended that you change either the system-wide" + elog "mame.ini at ${GAMES_SYSCONFDIR}/${PN} or use a per-user setup at \$HOME/.${PN}" + + if use opengl; then + echo + elog "You built ${PN} with opengl support and should set" + elog "\"video\" to \"opengl\" in mame.ini to take advantage of that" + fi +} |