summaryrefslogtreecommitdiff
blob: 0ec9601e183502fc61f3fd363827811b896cef73 (plain)
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
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=5
PYTHON_COMPAT=( python2_7 )
inherit eutils toolchain-funcs cmake-utils python-single-r1 games

DESCRIPTION="Atari ST emulator"
HOMEPAGE="http://hatari.tuxfamily.org/"
SRC_URI="http://download.tuxfamily.org/hatari/${PV}/${P}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE=""
REQUIRED_USE="${PYTHON_REQUIRED_USE}"

RDEPEND="${PYTHON_DEPS}
	media-libs/libsdl[X,sound,video]
	sys-libs/readline:0
	media-libs/libpng:0
	sys-libs/zlib"
DEPEND="${RDEPEND}
	virtual/pkgconfig"
RDEPEND="${RDEPEND}
	dev-python/pygtk[${PYTHON_USEDEP}]
	games-emulation/emutos"

PATCHES=(
	"${FILESDIR}"/${P}-gentoo.patch
	"${FILESDIR}"/${P}-gentoo-docdir.patch
)

pkg_setup() {
	games_pkg_setup
	python-single-r1_pkg_setup
}

src_prepare() {
	cmake-utils_src_prepare

	# build with newer zlib (bug #387829)
	sed -i -e '1i#define OF(x) x' src/includes/unzip.h || die
	sed -i -e '/Encoding/d' ./python-ui/hatariui.desktop || die
	sed -i -e "s/python/${EPYTHON}/" tools/atari-hd-image.sh || die
	sed -i \
		-e "s%conf=.*$%conf=\"${GAMES_SYSCONFDIR}\"%" \
		-e "s%path=.*$%path=\"${GAMES_DATADIR}/${PN}/hatariui\"%" \
		python-ui/hatariui || die
	sed -i -e "s#@DOCDIR@#/usr/share/doc/${PF}/html/#" python-ui/uihelpers.py || die
	rm -f doc/CMakeLists.txt
}

src_configure() {
	mycmakeargs=(
		"-DCMAKE_VERBOSE_MAKEFILE=TRUE"
		"-DCMAKE_BUILD_TYPE:STRING=Release"
		"-DDATADIR=${GAMES_DATADIR}/${PN}"
		"-DBIN2DATADIR=${GAMES_DATADIR}/${PN}"
		"-DBINDIR=${GAMES_BINDIR}"
		"-DICONDIR=/usr/share/pixmaps"
		"-DDESKTOPDIR=/usr/share/applications"
		"-DMANDIR=/usr/share/man/man1"
		"-DDOCDIR=/usr/share/doc/${PF}"
		)
	cmake-utils_src_configure
}

src_install() {
	DOCS="readme.txt doc/*.txt" cmake-utils_src_install
	dohtml -r doc/
	python_fix_shebang "${ED%/}"/usr/share/games/hatari/{hatariui,hconsole}/
	prepgamesdirs
}

pkg_postinst() {
	games_pkg_postinst
	echo
	elog "You need a TOS ROM to run hatari. EmuTOS, a free TOS implementation,"
	elog "has been installed in $(games_get_libdir) with a .img extension (there"
	elog "are several from which to choose)."
	elog
	elog "Another option is to go to http://www.atari.st/ and get a real TOS:"
	elog "  http://www.atari.st/"
	elog
	elog "The first time you run hatari, you should configure it to find the"
	elog "TOS you prefer to use.  Be sure to save your settings."
	echo
}