summaryrefslogtreecommitdiff
blob: def5b5f87a2408c045d9d133cf527cbeec2a8e4d (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
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

inherit desktop toolchain-funcs xdg

DESCRIPTION="A Panzer General clone written in SDL"
HOMEPAGE="http://lgames.sourceforge.net/LGeneral/"
SRC_URI="
	mirror://sourceforge/${PN}/${P}.tar.gz
	mirror://sourceforge/${PN}/pg-data.tar.gz"

LICENSE="GPL-2+"
SLOT="0"
KEYWORDS="~amd64 ~x86"
IUSE="nls"

RDEPEND="
	media-libs/libsdl[sound,video]
	media-libs/sdl-mixer
	nls? ( virtual/libintl )"
DEPEND="${RDEPEND}"
BDEPEND="sys-devel/gettext"

PATCHES=( "${FILESDIR}"/${PN}-1.4.3-fix-utf8.patch )

src_prepare() {
	default

	# Build a temporary lgc-pg that knows about ${WORKDIR}:
	cp -pPR "${S}" "${WORKDIR}"/tmp-build || die
	sed -i \
		-e "s:@GENTOO_DATADIR@:/usr/share:" \
		-e "s:@D@::" \
		{lgc-pg,src}/misc.c || die

	cd "${WORKDIR}"/tmp-build || die
	sed -i \
		-e "s:@GENTOO_DATADIR@:/usr/share:" \
		-e "s:@D@:${D}:" \
		{lgc-pg,src}/misc.c || die
}

src_configure() {
	econf $(use_enable nls)

	# Build the temporary lgc-pg:
	cd "${WORKDIR}"/tmp-build || die
	econf \
		--disable-nls \
		--datadir="${D}/usr/share"
}

src_compile() {
	emake AR="$(tc-getAR)"

	# Build the temporary lgc-pg:
	emake -C "${WORKDIR}"/tmp-build AR="$(tc-getAR)"
}

src_install() {
	default
	keepdir /usr/share/${PN}/{ai_modules,music,terrain}

	# Generate scenario data:
	dodir /usr/share/${PN}/gfx/{flags,units,terrain} #413901
	SDL_VIDEODRIVER=dummy "${WORKDIR}"/tmp-build/lgc-pg/lgc-pg --separate-bridges \
		-s "${WORKDIR}"/pg-data \
		-d "${D}"/usr/share/${PN} || die

	doicon -s 48 lgeneral.png
	make_desktop_entry ${PN} LGeneral
}