forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
gambatte-0.5.0_p20131102.ebuild
98 lines (83 loc) · 2.04 KB
/
gambatte-0.5.0_p20131102.ebuild
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit scons-utils qt4-r2 games
DESCRIPTION="An accuracy-focused Gameboy / Gameboy Color emulator"
HOMEPAGE="http://sourceforge.net/projects/gambatte"
SRC_URI="https://dev.gentoo.org/~hasufell/distfiles/${P}.tar.xz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="qt4 +sdl"
REQUIRED_USE="|| ( qt4 sdl )"
RDEPEND="
sys-libs/zlib
qt4? (
dev-qt/qtcore:4
dev-qt/qtgui:4
dev-qt/qtopengl:4
media-libs/alsa-lib
x11-libs/libX11
x11-libs/libXext
x11-libs/libXrandr
x11-libs/libXv
)
sdl? ( media-libs/libsdl[X,sound,joystick,video] )"
DEPEND="${RDEPEND}
app-arch/xz-utils"
fix_scons() {
local i
for i; do
cat >> $i << END
import os
import SCons.Util
if os.environ.has_key('AR'):
env['AR'] = os.environ['AR']
if os.environ.has_key('RANLIB'):
env['RANLIB'] = os.environ['RANLIB']
if os.environ.has_key('CC'):
env['CC'] = os.environ['CC']
if os.environ.has_key('CFLAGS'):
env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CFLAGS'])
if os.environ.has_key('CXX'):
env['CXX'] = os.environ['CXX']
if os.environ.has_key('CXXFLAGS'):
env['CXXFLAGS'] += SCons.Util.CLVar(os.environ['CXXFLAGS'])
if os.environ.has_key('CPPFLAGS'):
env['CCFLAGS'] += SCons.Util.CLVar(os.environ['CPPFLAGS'])
if os.environ.has_key('LDFLAGS'):
env['LINKFLAGS'] += SCons.Util.CLVar(os.environ['LDFLAGS'])
END
done
}
src_prepare() {
# Fix zlib/minizip build error
sed -i \
-e '1i#define OF(x) x' \
libgambatte/src/file/unzip/{unzip,ioapi}.h \
|| die "sed iompi.h failed"
fix_scons {gambatte_sdl,libgambatte}/SConstruct
}
src_compile() {
# build core library
cd "${S}"/libgambatte || die
escons
# build sdl frontend
if use sdl; then
cd "${S}"/gambatte_sdl || die
escons
fi
# build qt frontend
if use qt4; then
cd "${S}"/gambatte_qt || die
eqmake4 ${PN}_qt.pro
emake
fi
}
src_install() {
use sdl && dogamesbin gambatte_sdl/gambatte_sdl
use qt4 && dogamesbin gambatte_qt/bin/gambatte_qt
dodoc README changelog
prepgamesdirs
}