summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Harder <radhermit@gentoo.org>2013-06-15 23:39:11 +0000
committerTim Harder <radhermit@gentoo.org>2013-06-15 23:39:11 +0000
commita2f8ce66ceb5d3932045617f1e05711077e2ceda (patch)
tree47bf844a85fe2a2fa8a5c3071eba126ae5364acf /games-emulation/vbam
parentCorrected version bump justification to list correct package and additional r... (diff)
downloadgentoo-2-a2f8ce66ceb5d3932045617f1e05711077e2ceda.tar.gz
gentoo-2-a2f8ce66ceb5d3932045617f1e05711077e2ceda.tar.bz2
gentoo-2-a2f8ce66ceb5d3932045617f1e05711077e2ceda.zip
Version bump, fix build with newer versions of libav/ffmpeg (bug #466854).
(Portage version: 2.2.0_alpha179/cvs/Linux x86_64, signed Manifest commit with key 4AB3E85B4F064CA3)
Diffstat (limited to 'games-emulation/vbam')
-rw-r--r--games-emulation/vbam/ChangeLog8
-rw-r--r--games-emulation/vbam/files/vbam-1.8.0.1197-desktop.patch8
-rw-r--r--games-emulation/vbam/files/vbam-1.8.0.1197-libav-9.patch50
-rw-r--r--games-emulation/vbam/vbam-1.8.0.1197.ebuild114
4 files changed, 179 insertions, 1 deletions
diff --git a/games-emulation/vbam/ChangeLog b/games-emulation/vbam/ChangeLog
index 6f09cf128892..6606ec38f44b 100644
--- a/games-emulation/vbam/ChangeLog
+++ b/games-emulation/vbam/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for games-emulation/vbam
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/games-emulation/vbam/ChangeLog,v 1.20 2013/06/15 09:27:03 radhermit Exp $
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/vbam/ChangeLog,v 1.21 2013/06/15 23:39:10 radhermit Exp $
+
+*vbam-1.8.0.1197 (15 Jun 2013)
+
+ 15 Jun 2013; Tim Harder <radhermit@gentoo.org> +vbam-1.8.0.1197.ebuild,
+ +files/vbam-1.8.0.1197-desktop.patch, +files/vbam-1.8.0.1197-libav-9.patch:
+ Version bump, fix build with newer versions of libav/ffmpeg (bug #466854).
15 Jun 2013; Tim Harder <radhermit@gentoo.org> -vbam-1.8.0.1090.ebuild,
-files/vbam-1.8.0.1009-zlib-1.2.6.patch, -files/vbam-1.8.0.1090-ffmpeg.patch:
diff --git a/games-emulation/vbam/files/vbam-1.8.0.1197-desktop.patch b/games-emulation/vbam/files/vbam-1.8.0.1197-desktop.patch
new file mode 100644
index 000000000000..17f73bf25548
--- /dev/null
+++ b/games-emulation/vbam/files/vbam-1.8.0.1197-desktop.patch
@@ -0,0 +1,8 @@
+--- vbam-1.8.0.1197/src/wx/wxvbam.desktop
++++ vbam-1.8.0.1197/src/wx/wxvbam.desktop
+@@ -7,4 +7,4 @@
+ Comment=Nindendo GameBoy Advance Emulator
+ Exec=wxvbam
+ Icon=vbam
+-Categories=Application;Game;Emulator
++Categories=Game;Emulator;
diff --git a/games-emulation/vbam/files/vbam-1.8.0.1197-libav-9.patch b/games-emulation/vbam/files/vbam-1.8.0.1197-libav-9.patch
new file mode 100644
index 000000000000..b954514dbe2f
--- /dev/null
+++ b/games-emulation/vbam/files/vbam-1.8.0.1197-libav-9.patch
@@ -0,0 +1,50 @@
+--- vbam-1.8.0.1197/src/common/ffmpeg.cpp
++++ vbam-1.8.0.1197/src/common/ffmpeg.cpp
+@@ -93,7 +93,11 @@
+ return MRET_OK;
+
+ AVCodecContext *ctx;
++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(53,10,0)
+ aud_st = av_new_stream(oc, 1);
++#else
++ aud_st = avformat_new_stream(oc, NULL);
++#endif
+ if(!aud_st) {
+ avformat_free_context(oc);
+ oc = NULL;
+@@ -112,7 +116,11 @@
+ ctx->flags |= CODEC_FLAG_GLOBAL_HEADER;
+
+ AVCodec *codec = avcodec_find_encoder(fmt->audio_codec);
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(53,6,0)
+ if(!codec || avcodec_open(ctx, codec)) {
++#else
++ if(!codec || avcodec_open2(ctx, codec, NULL)) {
++#endif
+ avformat_free_context(oc);
+ oc = NULL;
+ return MRET_ERR_NOCODEC;
+@@ -124,7 +132,11 @@
+ MediaRet MediaRecorder::setup_video_stream(const char *fname, int w, int h, int d)
+ {
+ AVCodecContext *ctx;
++#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(53,10,0)
+ vid_st = av_new_stream(oc, 0);
++#else
++ vid_st = avformat_new_stream(oc, NULL);
++#endif
+ if(!vid_st) {
+ avformat_free_context(oc);
+ oc = NULL;
+@@ -203,7 +215,11 @@
+ ctx->pix_fmt = dp;
+ }
+ }
++#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(53,6,0)
+ if(!codec || avcodec_open(ctx, codec)) {
++#else
++ if(!codec || avcodec_open2(ctx, codec, NULL)) {
++#endif
+ avformat_free_context(oc);
+ oc = NULL;
+ return MRET_ERR_NOCODEC;
diff --git a/games-emulation/vbam/vbam-1.8.0.1197.ebuild b/games-emulation/vbam/vbam-1.8.0.1197.ebuild
new file mode 100644
index 000000000000..614cd204a037
--- /dev/null
+++ b/games-emulation/vbam/vbam-1.8.0.1197.ebuild
@@ -0,0 +1,114 @@
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/games-emulation/vbam/vbam-1.8.0.1197.ebuild,v 1.1 2013/06/15 23:39:10 radhermit Exp $
+
+EAPI=5
+WX_GTK_VER="2.8"
+
+inherit eutils cmake-utils wxwidgets gnome2-utils fdo-mime games
+
+ESVN_REPO_URI="https://vbam.svn.sourceforge.net/svnroot/vbam/trunk"
+
+DESCRIPTION="Game Boy, GBC, and GBA emulator forked from VisualBoyAdvance"
+HOMEPAGE="http://vba-m.ngemu.com"
+SRC_URI="http://dev.gentoo.org/~radhermit/distfiles/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="cairo ffmpeg gtk link lirc nls openal +sdl wxwidgets"
+REQUIRED_USE="|| ( sdl gtk wxwidgets )"
+
+RDEPEND=">=media-libs/libpng-1.4
+ media-libs/libsdl[joystick]
+ link? ( media-libs/libsfml )
+ sys-libs/zlib
+ virtual/glu
+ virtual/opengl
+ ffmpeg? ( virtual/ffmpeg )
+ gtk? ( >=dev-cpp/glibmm-2.4.0:2
+ >=dev-cpp/gtkmm-2.4.0:2.4
+ >=dev-cpp/gtkglextmm-1.2.0 )
+ lirc? ( app-misc/lirc )
+ nls? ( virtual/libintl )
+ wxwidgets? (
+ cairo? ( x11-libs/cairo )
+ openal? ( media-libs/openal )
+ x11-libs/wxGTK:2.8[X,opengl]
+ )"
+DEPEND="${RDEPEND}
+ wxwidgets? ( || ( media-gfx/imagemagick media-gfx/graphicsmagick[imagemagick] ) )
+ x86? ( || ( dev-lang/nasm dev-lang/yasm ) )
+ nls? ( sys-devel/gettext )
+ app-arch/xz-utils
+ virtual/pkgconfig"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-libav-9.patch
+ epatch "${FILESDIR}"/${P}-desktop.patch
+
+ # fix issue with zlib-1.2.5.1 macros (bug #383179)
+ sed -i '1i#define OF(x) x' src/common/memgzio.c || die
+
+ sed -i "s:\(DESTINATION\) bin:\1 ${GAMES_BINDIR}:" \
+ CMakeLists.txt src/wx/CMakeLists.txt || die
+
+ # fix desktop file QA warnings
+ edos2unix src/gtk/gvbam.desktop src/wx/wxvbam.desktop || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake-utils_use_enable cairo CAIRO)
+ $(cmake-utils_use_enable ffmpeg FFMPEG)
+ $(cmake-utils_use_enable gtk GTK)
+ $(cmake-utils_use_enable link LINK)
+ $(cmake-utils_use_enable lirc LIRC)
+ $(cmake-utils_use_enable nls NLS)
+ $(cmake-utils_use_enable openal OPENAL)
+ $(cmake-utils_use_enable sdl SDL)
+ $(cmake-utils_use_enable wxwidgets WX)
+ $(cmake-utils_use_enable x86 ASM_CORE)
+ $(cmake-utils_use_enable x86 ASM_SCALERS)
+ -DCMAKE_SKIP_RPATH=ON
+ -DDATA_INSTALL_DIR=share/games/${PN}
+ )
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use sdl ; then
+ dodoc doc/ReadMe.SDL.txt || die
+ doman debian/vbam.1 || die
+ fi
+
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ if use gtk || use wxwidgets ; then
+ gnome2_icon_savelist
+ fi
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ if use gtk || use wxwidgets ; then
+ gnome2_icon_cache_update
+ fi
+ use gtk && fdo-mime_desktop_database_update
+}
+
+pkg_postrm() {
+ if use gtk || use wxwidgets ; then
+ gnome2_icon_cache_update
+ fi
+ use gtk && fdo-mime_desktop_database_update
+}