You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
105 lines
3.1 KiB
105 lines
3.1 KiB
3 years ago
|
# Copyright 1999-2021 Gentoo Authors
|
||
|
# Distributed under the terms of the GNU General Public License v2
|
||
|
|
||
|
EAPI=8
|
||
|
|
||
|
inherit cmake
|
||
|
|
||
|
DESCRIPTION="A clone of Transport Tycoon Deluxe"
|
||
|
HOMEPAGE="https://www.openttd.org/"
|
||
|
SRC_URI="https://cdn.openttd.org/openttd-releases/${PV}/${P}-source.tar.xz"
|
||
|
|
||
|
LICENSE="GPL-2"
|
||
|
SLOT="0"
|
||
|
KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
|
||
|
|
||
|
IUSE="allegro cpu_flags_x86_sse dedicated +fluidsynth icu +lzma lzo +openmedia +png +sdl timidity +truetype +zlib"
|
||
|
REQUIRED_USE="!dedicated? ( || ( allegro sdl ) )"
|
||
|
|
||
|
RESTRICT="test" # needs a graphics set in order to test
|
||
|
|
||
|
RDEPEND="
|
||
|
!dedicated? (
|
||
|
allegro? ( media-libs/allegro:5 )
|
||
|
fluidsynth? ( media-sound/fluidsynth )
|
||
|
icu? (
|
||
|
dev-libs/icu-layoutex:=
|
||
|
dev-libs/icu-le-hb
|
||
|
>=dev-libs/icu-58.1:=
|
||
|
)
|
||
|
sdl? ( media-libs/libsdl2[sound,video] )
|
||
|
truetype? (
|
||
|
media-libs/fontconfig
|
||
|
media-libs/freetype:2
|
||
|
sys-libs/zlib:=
|
||
|
)
|
||
|
)
|
||
|
lzma? ( app-arch/xz-utils )
|
||
|
lzo? ( dev-libs/lzo:2 )
|
||
|
png? ( media-libs/libpng:0= )
|
||
|
zlib? ( sys-libs/zlib:= )"
|
||
|
DEPEND="${RDEPEND}"
|
||
|
BDEPEND=">=games-util/grfcodec-6.0.6_p20210310
|
||
|
virtual/pkgconfig"
|
||
|
PDEPEND="
|
||
|
!dedicated? (
|
||
|
openmedia? (
|
||
|
>=games-misc/openmsx-0.4.0
|
||
|
>=games-misc/opensfx-1.0.1
|
||
|
)
|
||
|
)
|
||
|
openmedia? ( >=games-misc/opengfx-0.6.1 )
|
||
|
timidity? ( media-sound/timidity++ )"
|
||
|
|
||
|
DOCS=( docs/directory_structure.md )
|
||
|
PATCHES=(
|
||
|
"${FILESDIR}/${PN}-1.11.2_dont_compress_man.patch"
|
||
|
)
|
||
|
|
||
|
src_configure() {
|
||
|
local mycmakeargs=(
|
||
|
-DCMAKE_INSTALL_BINDIR=bin
|
||
|
-DCMAKE_INSTALL_DATADIR=share
|
||
|
-DOPTION_DEDICATED=$(usex dedicated)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_Allegro=$(usex !allegro)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_Freetype=$(usex !truetype)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_Fontconfig=$(usex !truetype)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_Fluidsynth=$(usex !fluidsynth)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_ICU=$(usex !icu)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_LibLZMA=$(usex !lzma)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_LZO=$(usex !lzo)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_PNG=$(usex !png)
|
||
|
# N.B. regarding #807364: CMAKE_DISABLE_FIND_PACKAGE_SDL is used only
|
||
|
# with USE="allegro -sdl" combination flags. There no other way to
|
||
|
# completely disable SDL1 support.
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_SDL=ON
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_SDL2=$(usex !sdl)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_SSE=$(usex !cpu_flags_x86_sse)
|
||
|
-DCMAKE_DISABLE_FIND_PACKAGE_ZLIB=$(usex !zlib)
|
||
|
)
|
||
|
cmake_src_configure
|
||
|
}
|
||
|
|
||
|
src_install() {
|
||
|
cmake_src_install
|
||
|
newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN}
|
||
|
}
|
||
|
|
||
|
pkg_postinst() {
|
||
|
if ! use openmedia ; then
|
||
|
elog
|
||
|
elog "OpenTTD was compiled without the 'openmedia' USE flag."
|
||
|
elog
|
||
|
elog "In order to play, you must at least install"
|
||
|
elog "games-misc/opengfx, and games-misc/opensfx, or copy the "
|
||
|
elog "following 6 files from a version of Transport Tycoon Deluxe"
|
||
|
elog "(Windows or DOS) to shared or personal location."
|
||
|
elog "See /usr/share/doc/${PF}/directory_structure.md for more info."
|
||
|
elog
|
||
|
elog "From the Windows version you need: "
|
||
|
elog "sample.cat trg1r.grf trgcr.grf trghr.grf trgir.grf trgtr.grf"
|
||
|
elog "OR from the DOS version you need: "
|
||
|
elog "SAMPLE.CAT TRG1.GRF TRGC.GRF TRGH.GRF TRGI.GRF TRGT.GRF"
|
||
|
fi
|
||
|
}
|