summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Sterrett <mr_bones_@gentoo.org>2011-09-11 06:10:42 +0000
committerMichael Sterrett <mr_bones_@gentoo.org>2011-09-11 06:10:42 +0000
commit741c13b9dc0bff905879a550590deb45c49344b0 (patch)
treefaf94688d64b563910cfd981d69a17731b11a5d6 /games-emulation/sdlmame
parentVersion bump. (diff)
downloadgentoo-2-741c13b9dc0bff905879a550590deb45c49344b0.tar.gz
gentoo-2-741c13b9dc0bff905879a550590deb45c49344b0.tar.bz2
gentoo-2-741c13b9dc0bff905879a550590deb45c49344b0.zip
version bump (bug #382529)
(Portage version: 2.1.10.11/cvs/Linux i686)
Diffstat (limited to 'games-emulation/sdlmame')
-rw-r--r--games-emulation/sdlmame/ChangeLog9
-rw-r--r--games-emulation/sdlmame/files/sdlmame-0.143_p5-makefile.patch67
-rw-r--r--games-emulation/sdlmame/files/sdlmame-0.143_p5-no-opengl.patch11
-rw-r--r--games-emulation/sdlmame/sdlmame-0.143_p5.ebuild151
4 files changed, 237 insertions, 1 deletions
diff --git a/games-emulation/sdlmame/ChangeLog b/games-emulation/sdlmame/ChangeLog
index eb6adf2f3d57..95a352b2038b 100644
--- a/games-emulation/sdlmame/ChangeLog
+++ b/games-emulation/sdlmame/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for games-emulation/sdlmame
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/sdlmame/ChangeLog,v 1.52 2011/09/04 17:35:36 phajdan.jr Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/sdlmame/ChangeLog,v 1.53 2011/09/11 06:10:42 mr_bones_ Exp $
+
+*sdlmame-0.143_p5 (11 Sep 2011)
+
+ 11 Sep 2011; Michael Sterrett <mr_bones_@gentoo.org>
+ +sdlmame-0.143_p5.ebuild, +files/sdlmame-0.143_p5-makefile.patch,
+ +files/sdlmame-0.143_p5-no-opengl.patch:
+ version bump (bug #382529)
04 Sep 2011; Pawel Hajdan jr <phajdan.jr@gentoo.org> sdlmame-0.142_p5.ebuild:
x86 stable wrt bug #380183
diff --git a/games-emulation/sdlmame/files/sdlmame-0.143_p5-makefile.patch b/games-emulation/sdlmame/files/sdlmame-0.143_p5-makefile.patch
new file mode 100644
index 000000000000..444c5e9688b2
--- /dev/null
+++ b/games-emulation/sdlmame/files/sdlmame-0.143_p5-makefile.patch
@@ -0,0 +1,67 @@
+--- work.orig/makefile
++++ work/makefile
+@@ -431,9 +431,6 @@
+ CPPONLYFLAGS += -x c++ -std=gnu++98
+ COBJFLAGS += -x objective-c++
+
+-# this speeds it up a bit by piping between the preprocessor/compiler/assembler
+-CCOMFLAGS += -pipe
+-
+ # add -g if we need symbols, and ensure we have frame pointers
+ ifdef SYMBOLS
+ CCOMFLAGS += -g$(SYMLEVEL) -fno-omit-frame-pointer
+@@ -449,23 +446,6 @@
+ CCOMFLAGS += -pg
+ endif
+
+-# add the optimization flag
+-CCOMFLAGS += -O$(OPTIMIZE)
+-
+-# if we are optimizing, include optimization options
+-# and make all errors into warnings
+-ifneq ($(OPTIMIZE),0)
+-ifneq ($(TARGETOS),os2)
+-ifndef NOWERROR
+-CCOMFLAGS += -Werror -fno-strict-aliasing $(ARCHOPTS)
+-else
+-CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
+-endif
+-else
+-CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
+-endif
+-endif
+-
+ # add a basic set of warnings
+ CCOMFLAGS += \
+ -Wall \
+@@ -524,16 +504,6 @@
+ # linking flags
+ #-------------------------------------------------
+
+-# LDFLAGS are used generally; LDFLAGSEMULATOR are additional
+-# flags only used when linking the core emulator
+-LDFLAGS =
+-ifneq ($(TARGETOS),macosx)
+-ifneq ($(TARGETOS),os2)
+-ifneq ($(TARGETOS),solaris)
+-LDFLAGS = -Wl,--warn-common
+-endif
+-endif
+-endif
+ LDFLAGSEMULATOR =
+
+ # add profiling information for the linker
+@@ -541,13 +511,6 @@
+ LDFLAGS += -pg
+ endif
+
+-# strip symbols and other metadata in non-symbols and non profiling builds
+-ifndef SYMBOLS
+-ifneq ($(TARGETOS),macosx)
+-LDFLAGS += -s
+-endif
+-endif
+-
+ # output a map file (emulator only)
+ ifdef MAP
+ LDFLAGSEMULATOR += -Wl,-Map,$(FULLNAME).map
diff --git a/games-emulation/sdlmame/files/sdlmame-0.143_p5-no-opengl.patch b/games-emulation/sdlmame/files/sdlmame-0.143_p5-no-opengl.patch
new file mode 100644
index 000000000000..87eeae5b50c7
--- /dev/null
+++ b/games-emulation/sdlmame/files/sdlmame-0.143_p5-no-opengl.patch
@@ -0,0 +1,11 @@
+--- ./src/osd/sdl/osdsdl.h.orig
++++ ./src/osd/sdl/osdsdl.h
+@@ -225,6 +225,8 @@
+ const char *audio_driver() const { return value(SDLOPTION_AUDIODRIVER); }
+ #if USE_OPENGL
+ const char *gl_lib() const { return value(SDLOPTION_GL_LIB); }
++#else
++ const char *gl_lib() const { return NULL; }
+ #endif
+
+ private:
diff --git a/games-emulation/sdlmame/sdlmame-0.143_p5.ebuild b/games-emulation/sdlmame/sdlmame-0.143_p5.ebuild
new file mode 100644
index 000000000000..5727ee86996b
--- /dev/null
+++ b/games-emulation/sdlmame/sdlmame-0.143_p5.ebuild
@@ -0,0 +1,151 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/sdlmame/sdlmame-0.143_p5.ebuild,v 1.1 2011/09/11 06:10:42 mr_bones_ Exp $
+
+EAPI=2
+inherit eutils flag-o-matic games
+
+MY_PV=${PV/.}
+MY_CONF_PN=${PN/sdl}
+MY_P=${PN}${MY_PV}
+MY_P=${MY_P%%_p*}
+MY_CONF_VER="0.139"
+DESCRIPTION="Multiple Arcade Machine Emulator (SDL)"
+HOMEPAGE="http://mamedev.org/"
+UPDATES="$(for PATCH_VER in $(seq 1 ${PV##*_p}) ; do echo "mirror://gentoo/${MY_P}u${PATCH_VER}_diff.zip"; done)"
+# Upstream doesn't allow fetching with unknown User-Agent such as wget
+SRC_URI="mirror://gentoo/${MY_P/sdl}s.zip $UPDATES
+ http://www.netswarm.net/misc/sdlmame-ui.bdf.gz"
+
+LICENSE="XMAME"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="debug opengl"
+
+RDEPEND=">=media-libs/libsdl-1.2.10[audio,joystick,opengl?,video]
+ media-libs/sdl-ttf
+ dev-libs/expat
+ debug? (
+ x11-libs/gtk+:2
+ gnome-base/gconf
+ x11-libs/libXinerama
+ )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ debug? ( x11-proto/xineramaproto )"
+
+S=${WORKDIR}
+
+# 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}"/${2:-makefile} \
+ || die "sed failed"
+}
+
+src_unpack() {
+ base_src_unpack
+ unpack ./mame.zip
+ rm -f mame.zip
+}
+
+src_prepare() {
+ if [[ $PV == *_p* ]] ; then
+ edos2unix $(grep +++ *diff | awk '{ print $2 }' | sort -u) *diff 2> /dev/null
+ einfo "Patching release with source updates"
+ epatch ${MY_PV%%_p*}*.diff
+ fi
+ edos2unix src/osd/sdl/osdsdl.h
+ epatch \
+ "${FILESDIR}"/${P}-makefile.patch \
+ "${FILESDIR}"/${P}-no-opengl.patch
+
+ # 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
+ einfo "Enabling debug support"
+ enable_feature DEBUG
+ else
+ einfo "Disabling debug support"
+ enable_feature NO_X11 src/osd/sdl/sdl.mak
+ fi
+
+ if ! use opengl ; then
+ einfo "Disabling opengl support"
+ enable_feature NO_OPENGL src/osd/sdl/sdl.mak
+ fi
+}
+
+src_compile() {
+ emake \
+ NAME="${PN}" \
+ OPT_FLAGS='-DINI_PATH=\"\$$HOME/.'${PN}'\;'"${GAMES_SYSCONFDIR}/${PN}"'\"'" ${CXXFLAGS}" \
+ CC="${CXX}" \
+ all || die
+}
+
+src_install() {
+ newgamesbin ${PN}$(use amd64 && echo 64)$(use debug && echo d) ${PN} || die
+
+ # Avoid collision on /usr/games/bin/jedutil
+ exeinto "$(games_get_libdir)/${PN}"
+ doexe chdman jedutil ldverify romcmp testkeys || die
+ doman src/osd/sdl/man/{chdman,jedutil,ldverify,romcmp,testkeys}.1
+ newman src/osd/sdl/man/mame.1 ${PN}.1
+
+ insinto "${GAMES_DATADIR}/${PN}"
+ doins -r src/osd/sdl/keymaps || die "doins -r keymaps failed"
+ newins sdlmame-ui.bdf ui.bdf || die "newins ui.bdf failed"
+
+ insinto "${GAMES_SYSCONFDIR}/${PN}"
+ doins "${FILESDIR}"/vector.ini || die "doins vector.ini failed"
+
+ sed \
+ -e "s:@GAMES_SYSCONFDIR@:${GAMES_SYSCONFDIR}:" \
+ -e "s:@GAMES_DATADIR@:${GAMES_DATADIR}:" \
+ "${FILESDIR}/${MY_CONF_PN}-${MY_CONF_VER}".ini.in > "${D}/${GAMES_SYSCONFDIR}/${PN}/${MY_CONF_PN}".ini \
+ || die "sed failed"
+
+ dodoc docs/{config,mame,newvideo}.txt whatsnew*.txt
+
+ keepdir \
+ "${GAMES_DATADIR}/${PN}"/{ctrlr,cheats,roms,samples,artwork,crosshair} \
+ "${GAMES_SYSCONFDIR}/${PN}"/{ctrlr,cheats}
+
+ prepgamesdirs
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+
+ elog "It's strongly recommended that you change either the system-wide"
+ elog "${MY_CONF_PN}.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 ${MY_CONF_PN}.ini to take advantage of that"
+ fi
+}