blob: 72b9bcc3eaab2743ad122508e6a0e80b203f1b64 (
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
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit autotools desktop flag-o-matic optfeature toolchain-funcs xdg
MY_PV=${PV//./-}
MY_PAK_64="simupak64-123-0.zip"
# Required for network games, published in release announcement.
MY_SVN_REVISION="10421"
DESCRIPTION="A free Transport Tycoon clone"
HOMEPAGE="https://www.simutrans.com/"
SRC_URI="
mirror://sourceforge/simutrans/simutrans-src-${MY_PV}.zip
!minimal? ( mirror://sourceforge/simutrans/${MY_PAK_64} -> simutrans_${MY_PAK_64} )
https://tastytea.de/files/simutrans_language_pack-Base+texts-${PV}.zip
https://github.com/aburch/simutrans/raw/9c84822/simutrans.svg
"
S=${WORKDIR}
# NOTE: Get the latest language pack from:
# https://simutrans-germany.com/translator/data/tab/language_pack-Base+texts.zip
LICENSE="Artistic"
SLOT="0"
KEYWORDS="~amd64 ~arm64 ~x86"
IUSE="minimal truetype upnp zstd"
DEPEND="
app-arch/bzip2
media-libs/libpng:0
media-libs/libsdl2[sound,video]
media-sound/fluidsynth[sdl]
sys-libs/zlib
truetype? ( media-libs/freetype )
upnp? ( net-libs/miniupnpc:= )
zstd? ( app-arch/zstd )
"
RDEPEND="
${DEPEND}
media-sound/fluid-soundfont
"
BDEPEND="
app-arch/unzip
virtual/pkgconfig
"
RESTRICT="test" # Opens the program and doesn't close it.
PATCHES=( "${FILESDIR}"/${PN}-123.0.1-silence-svn-and-git-errors.patch )
src_unpack() {
unpack "simutrans-src-${MY_PV}.zip"
use minimal || unpack "simutrans_${MY_PAK_64}"
# Bundled text files are incomplete, bug #580948
cd "${S}/simutrans/text" || die
unpack "simutrans_language_pack-Base+texts-${PV}.zip"
}
src_prepare() {
default
xdg_environment_reset
strip-flags # bug #293927
append-flags -fno-strict-aliasing # bug #859229
eautoreconf
# Make it look for the data in the right directory.
sed -i -e "s:argv\[0\]:\"/usr/share/${PN}/\":" simmain.cc || die
}
src_configure() {
default
cat > config.default <<-EOF || die
BACKEND=sdl2
OSTYPE=linux
OPTIMISE=0
STATIC=0
MULTI_THREAD=1
USE_UPNP=$(usex upnp 1 0)
USE_FREETYPE=$(usex truetype 1 0)
USE_ZSTD=$(usex zstd 1 0)
USE_FLUIDSYNTH_MIDI=1
VERBOSE=1
FLAGS := -DREVISION="${MY_SVN_REVISION}"
HOSTCC = $(tc-getCC)
HOSTCXX = $(tc-getCXX)
EOF
}
src_install() {
newbin build/default/sim ${PN}
insinto usr/share/${PN}
doins -r simutrans/*
doicon "${DISTDIR}"/${PN}.svg
domenu "${FILESDIR}"/${PN}.desktop
}
pkg_postinst() {
xdg_pkg_postinst
optfeature_header "Since 123.0 this ebuild only installs the Pak64 PakSet. You can install"
optfeature "other PakSets" games-simulation/simutrans-paksets
}
|