commit:     2d146a595a2db14073fa48561d3620b4dbdd701f
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Nov  6 21:15:48 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Nov  6 21:15:48 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2d146a59

games-emulation/vbam: Security bump to version 2.1.0

Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 games-emulation/vbam/Manifest                      |  1 +
 .../vbam/files/vbam-2.1.0-performance_fixup.patch  | 43 ++++++++++
 games-emulation/vbam/vbam-2.1.0.ebuild             | 96 ++++++++++++++++++++++
 3 files changed, 140 insertions(+)

diff --git a/games-emulation/vbam/Manifest b/games-emulation/vbam/Manifest
index 6376ae4ae7d..03eb7c47000 100644
--- a/games-emulation/vbam/Manifest
+++ b/games-emulation/vbam/Manifest
@@ -1 +1,2 @@
 DIST vbam-2.0.2.tar.gz 2959204 BLAKE2B 
79b288e59a843d2065eac63e74984bf134d9f5dadbc687da245030ad16b138125baab0fe1fb19acac9c117e30b95e57f1880b43817f75361600fb62efd1d5272
 SHA512 
9aafb8ef307fbbfbc5ae6dc35bc3042934e25a30069a71949e4c8e777fd862d94ec60c189823f4acdea4cb1338098fa85a55e090fa6023c07368cbb7638dd910
+DIST vbam-2.1.0.tar.gz 2977888 BLAKE2B 
48884b10d13cdeddfae1dc5a94a4576ebfd7aab263225650a7d4f7138854da3c8bbffa4a8f08e9da001cd967f0e85a7beb82f86350031264a66bfdd5403d36dd
 SHA512 
e4489c84880a7a70e7e94104ffbbdd805e9f15d5c962c0c13a7470496d2fdad8e21c1ddb161b776eb0b1a0c7583182df5838da5a523ce31dac620aa2a7842321

diff --git a/games-emulation/vbam/files/vbam-2.1.0-performance_fixup.patch 
b/games-emulation/vbam/files/vbam-2.1.0-performance_fixup.patch
new file mode 100644
index 00000000000..c99f829bdc0
--- /dev/null
+++ b/games-emulation/vbam/files/vbam-2.1.0-performance_fixup.patch
@@ -0,0 +1,43 @@
+From a8d0508cf299a58b2a659d6017b049db121de8ba Mon Sep 17 00:00:00 2001
+From: Rafael Kitover <rkito...@gmail.com>
+Date: Mon, 2 Jul 2018 18:32:18 -0700
+Subject: [PATCH] use GetWindow()->Refresh() in Wayland only
+
+Some people are reporting stuttering, and @retro-wertz tested both
+DrawArea() and Refresh() on wxgtk3 under xorg and found that the
+Refresh() method produces more stuttering.
+
+Change the compile check for wxgtk2 to a runtime check for wayland, and
+use Refresh() under Wayland only.
+---
+ src/wx/panel.cpp | 11 ++++-------
+ 1 file changed, 4 insertions(+), 7 deletions(-)
+
+diff --git a/src/wx/panel.cpp b/src/wx/panel.cpp
+index e4b86301..faaf6e4d 100644
+--- a/src/wx/panel.cpp
++++ b/src/wx/panel.cpp
+@@ -1817,19 +1817,16 @@ void DrawingPanelBase::DrawArea(uint8_t** data)
+     }
+ 
+     // next, draw the frame (queue a PaintEv) Refresh must be used under
+-    // Wayland or nothing is drawn, however it causes high CPU usage with 
GTK2,
+-    // so use the old method in that case
+-#if !defined(__WXGTK__) || defined(__WXGTK3__)
+-    GetWindow()->Refresh();
+-#else
+-    {
++    // Wayland or nothing is drawn.
++    if (wxGetApp().UsingWayland())
++        GetWindow()->Refresh();
++    else {
+         DrawingPanelBase* panel = wxGetApp().frame->GetPanel()->panel;
+         if (panel) {
+             wxClientDC dc(panel->GetWindow());
+             panel->DrawArea(dc);
+         }
+     }
+-#endif
+ 
+     // finally, draw on-screen text using wx method, if possible
+     // this method flickers too much right now

diff --git a/games-emulation/vbam/vbam-2.1.0.ebuild 
b/games-emulation/vbam/vbam-2.1.0.ebuild
new file mode 100644
index 00000000000..3d0c2496b2e
--- /dev/null
+++ b/games-emulation/vbam/vbam-2.1.0.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+WX_GTK_VER="3.0-gtk3"
+inherit gnome2-utils wxwidgets xdg-utils cmake-utils
+
+if [[ ${PV} == 9999 ]]; then
+       
EGIT_REPO_URI="https://github.com/visualboyadvance-m/visualboyadvance-m.git";
+       inherit git-r3
+else
+       
SRC_URI="https://github.com/visualboyadvance-m/visualboyadvance-m/archive/v${PV}.tar.gz
 -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~x86"
+       S="${WORKDIR}/visualboyadvance-m-${PV}"
+fi
+
+DESCRIPTION="Game Boy, GBC, and GBA emulator forked from VisualBoyAdvance"
+HOMEPAGE="https://github.com/visualboyadvance-m/visualboyadvance-m";
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="ffmpeg link lirc nls openal +sdl wxwidgets"
+REQUIRED_USE="openal? ( wxwidgets ) || ( sdl wxwidgets )"
+
+RDEPEND="
+       >=media-libs/libpng-1.4:0=
+       media-libs/libsdl2[joystick]
+       link? ( >=media-libs/libsfml-2.0:= )
+       sys-libs/zlib:=
+       virtual/glu
+       virtual/opengl
+       ffmpeg? ( =media-video/ffmpeg-3*:= )
+       lirc? ( app-misc/lirc )
+       nls? ( virtual/libintl )
+       wxwidgets? (
+               openal? ( media-libs/openal )
+               x11-libs/wxGTK:${WX_GTK_VER}[X,opengl]
+       )"
+DEPEND="${RDEPEND}
+       app-arch/zip
+       wxwidgets? ( virtual/imagemagick-tools )
+       x86? ( || ( dev-lang/nasm dev-lang/yasm ) )
+       nls? ( sys-devel/gettext )
+       virtual/pkgconfig"
+
+PATCHES=(
+       "${FILESDIR}/${P}-performance_fixup.patch"
+)
+
+src_configure() {
+       use wxwidgets && setup-wxwidgets
+       local mycmakeargs=(
+               -DENABLE_FFMPEG=$(usex ffmpeg)
+               -DENABLE_LINK=$(usex link)
+               -DENABLE_LIRC=$(usex lirc)
+               -DENABLE_NLS=$(usex nls)
+               -DENABLE_OPENAL=$(usex openal)
+               -DENABLE_SDL=$(usex sdl)
+               -DENABLE_WX=$(usex wxwidgets)
+               -DENABLE_ASM_CORE=$(usex x86)
+               -DENABLE_ASM_SCALERS=$(usex x86)
+               -DCMAKE_SKIP_RPATH=ON
+       )
+       cmake-utils_src_configure
+}
+
+src_install() {
+       cmake-utils_src_install
+
+       if use sdl ; then
+               dodoc doc/ReadMe.SDL.txt
+               doman src/debian/vbam.6
+       fi
+       use wxwidgets && doman src/debian/visualboyadvance-m.6
+}
+
+pkg_preinst() {
+       if use wxwidgets ; then
+               gnome2_icon_savelist
+       fi
+}
+
+pkg_postinst() {
+       if use wxwidgets ; then
+               gnome2_icon_cache_update
+               xdg_desktop_database_update
+       fi
+}
+
+pkg_postrm() {
+       if use wxwidgets ; then
+               gnome2_icon_cache_update
+               xdg_desktop_database_update
+       fi
+}

Reply via email to