commit:     a9e29982478d9c4479e66cbf94edc1b19b3724e5
Author:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 25 16:35:11 2015 +0000
Commit:     Pacho Ramos <pacho <AT> gentoo <DOT> org>
CommitDate: Fri Dec 25 16:36:37 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a9e29982

games-emulation/visualboyadvance: Fix building with latest glibmm/libsigc++ 
(#566694)

Package-Manager: portage-2.2.26

 .../files/visualboyadvance-1.7.2-libsigc26.patch   | 17 +++++
 .../visualboyadvance-1.7.2-r4.ebuild               | 86 ++++++++++++++++++++++
 2 files changed, 103 insertions(+)

diff --git 
a/games-emulation/visualboyadvance/files/visualboyadvance-1.7.2-libsigc26.patch 
b/games-emulation/visualboyadvance/files/visualboyadvance-1.7.2-libsigc26.patch
new file mode 100644
index 0000000..bd98676
--- /dev/null
+++ 
b/games-emulation/visualboyadvance/files/visualboyadvance-1.7.2-libsigc26.patch
@@ -0,0 +1,17 @@
+From: Etienne Millon <[email protected]>
+Subject: Remove deprecated header in sigccompat.h
+
+libsigc++ 2.5.2 removed the <sigc++/object.h> header as it was useless.
+Removing the #include directive makes the build succeed with later versions of
+libsigc++.
+
+--- a/src/gtk/sigccompat.h
++++ b/src/gtk/sigccompat.h
+@@ -25,7 +25,6 @@
+ #include <sigc++/connection.h>
+ 
+ #include <sigc++/slot.h>
+-#include <sigc++/object.h>
+ #include <sigc++/functors/mem_fun.h>
+ 
+ 

diff --git a/games-emulation/visualboyadvance/visualboyadvance-1.7.2-r4.ebuild 
b/games-emulation/visualboyadvance/visualboyadvance-1.7.2-r4.ebuild
new file mode 100644
index 0000000..a2090db
--- /dev/null
+++ b/games-emulation/visualboyadvance/visualboyadvance-1.7.2-r4.ebuild
@@ -0,0 +1,86 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils flag-o-matic autotools games
+
+DESCRIPTION="gameboy, gameboy color, and gameboy advance emulator"
+HOMEPAGE="http://vba.ngemu.com/";
+SRC_URI="mirror://sourceforge/vba/VisualBoyAdvance-src-${PV}.tar.gz
+       mirror://gentoo/${P}-deprecatedsigc++.patch.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-fbsd"
+IUSE="gtk cpu_flags_x86_mmx nls"
+
+RDEPEND="media-libs/libpng:0
+       media-libs/libsdl[sound,video]
+       sys-libs/zlib[minizip]
+       gtk? (
+               >=x11-libs/gtk+-2.4:2
+               >=dev-cpp/gtkmm-2.4:2.4
+               >=dev-cpp/libglademm-2.4:2.4
+               >=dev-libs/libsigc++-2.6:2
+       )
+       nls? ( virtual/libintl )"
+DEPEND="${RDEPEND}
+       virtual/pkgconfig
+       cpu_flags_x86_mmx? ( dev-lang/nasm )
+       nls? ( sys-devel/gettext )"
+
+S=${WORKDIR}/VisualBoyAdvance-${PV}
+
+src_prepare() {
+       cat >> src/i386/2xSaImmx.asm <<-EOF
+               %ifidn __OUTPUT_FORMAT__,elf
+               section .note.GNU-stack noalloc noexec nowrite progbits
+               %endif
+       EOF
+
+       epatch \
+               "${FILESDIR}"/${PV}-homedir.patch \
+               "${FILESDIR}"/${PV}-gcc34.patch \
+               "${FILESDIR}"/${PV}-gcc41.patch \
+               "${FILESDIR}"/${P}-gcc47.patch \
+               "${WORKDIR}"/${P}-deprecatedsigc++.patch \
+               "${FILESDIR}"/${P}-uninit.patch \
+               "${FILESDIR}"/${P}-glibc2.10.patch \
+               "${FILESDIR}"/${P}-ovflfix.patch \
+               "${FILESDIR}"/${P}-libpng15.patch \
+               "${FILESDIR}"/${P}-zlib.patch \
+               "${FILESDIR}"/${P}-zlib-1.2.6.patch \
+               "${FILESDIR}"/${P}-sys-types.patch \
+               "${FILESDIR}"/${P}-libsigc26.patch
+
+       mv configure.in configure.ac || die
+       eautoreconf
+
+       sed -i \
+               -e 's:$(localedir):/usr/share/locale:' \
+               -e 's:$(datadir)/locale:/usr/share/locale:' \
+               $(find . -name 'Makefile.in*') || die
+}
+
+src_configure() {
+       # -O3 causes GCC to behave badly and hog memory, bug #64670.
+       replace-flags -O3 -O2
+
+       append-cxxflags -std=c++11
+
+       # Removed --enable-c-core as it *should* determine this based on arch
+       egamesconf \
+               $(use_with cpu_flags_x86_mmx mmx) \
+               $(use_enable gtk gtk 2.4) \
+               $(use_enable nls)
+}
+
+src_install() {
+       default
+       if use gtk ; then
+               newicon src/gtk/images/vba-64.png ${PN}.png
+               make_desktop_entry gvba VisualBoyAdvance
+       fi
+       prepgamesdirs
+}

Reply via email to