summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'games-action/minetest/minetest-0.4.10-r2.ebuild')
-rw-r--r--games-action/minetest/minetest-0.4.10-r2.ebuild147
1 files changed, 147 insertions, 0 deletions
diff --git a/games-action/minetest/minetest-0.4.10-r2.ebuild b/games-action/minetest/minetest-0.4.10-r2.ebuild
new file mode 100644
index 000000000000..9e15dd4c6eac
--- /dev/null
+++ b/games-action/minetest/minetest-0.4.10-r2.ebuild
@@ -0,0 +1,147 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils cmake-utils gnome2-utils vcs-snapshot user games
+
+DESCRIPTION="An InfiniMiner/Minecraft inspired game"
+HOMEPAGE="http://minetest.net/"
+SRC_URI="http://github.com/minetest/minetest/tarball/${PV} -> ${P}.tar.gz"
+
+LICENSE="LGPL-2.1+ CC-BY-SA-3.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="+curl dedicated leveldb luajit nls redis +server +sound +truetype"
+
+RDEPEND="dev-db/sqlite:3
+ sys-libs/zlib
+ curl? ( net-misc/curl )
+ !dedicated? (
+ app-arch/bzip2
+ >=dev-games/irrlicht-1.8-r2
+ media-libs/libpng:0
+ virtual/jpeg
+ virtual/opengl
+ x11-libs/libX11
+ x11-libs/libXxf86vm
+ sound? (
+ media-libs/libogg
+ media-libs/libvorbis
+ media-libs/openal
+ )
+ truetype? ( media-libs/freetype:2 )
+ )
+ leveldb? ( dev-libs/leveldb )
+ luajit? ( dev-lang/luajit:2 )
+ nls? ( virtual/libintl )
+ redis? ( dev-libs/hiredis )"
+DEPEND="${RDEPEND}
+ >=dev-games/irrlicht-1.8-r2
+ nls? ( sys-devel/gettext )"
+
+pkg_setup() {
+ games_pkg_setup
+
+ if use server || use dedicated ; then
+ enewuser ${PN} -1 -1 /var/lib/${PN} ${GAMES_GROUP}
+ fi
+}
+
+src_unpack() {
+ vcs-snapshot_src_unpack
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/${P}-shared-irrlicht.patch \
+ "${FILESDIR}"/${P}-as-needed.patch
+
+ # correct gettext behavior
+ if [[ -n "${LINGUAS+x}" ]] ; then
+ for i in $(cd po ; echo *) ; do
+ if ! has ${i} ${LINGUAS} ; then
+ rm -r po/${i} || die
+ fi
+ done
+ fi
+
+ # jthread is modified
+ # json is modified
+ rm -r src/sqlite || die
+
+ # set paths
+ sed \
+ -e "s#@BINDIR@#${GAMES_BINDIR}#g" \
+ -e "s#@GROUP@#${GAMES_GROUP}#g" \
+ "${FILESDIR}"/minetestserver.confd > "${T}"/minetestserver.confd || die
+}
+
+src_configure() {
+ local mycmakeargs=(
+ $(usex dedicated "-DBUILD_SERVER=ON -DBUILD_CLIENT=OFF" "$(cmake-utils_use_build server SERVER) -DBUILD_CLIENT=ON")
+ -DCUSTOM_BINDIR="${GAMES_BINDIR}"
+ -DCUSTOM_DOCDIR="/usr/share/doc/${PF}"
+ -DCUSTOM_LOCALEDIR="/usr/share/locale"
+ -DCUSTOM_SHAREDIR="${GAMES_DATADIR}/${PN}"
+ $(cmake-utils_use_enable curl CURL)
+ $(cmake-utils_use_enable truetype FREETYPE)
+ $(cmake-utils_use_enable nls GETTEXT)
+ -DENABLE_GLES=0
+ $(cmake-utils_use_enable leveldb LEVELDB)
+ $(cmake-utils_use_enable redis REDIS)
+ $(cmake-utils_use_enable sound SOUND)
+ $(cmake-utils_use !luajit DISABLE_LUAJIT)
+ -DRUN_IN_PLACE=0
+ $(use dedicated && {
+ echo "-DIRRLICHT_SOURCE_DIR=/the/irrlicht/source"
+ echo "-DIRRLICHT_INCLUDE_DIR=/usr/include/irrlicht"
+ })
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ if use server || use dedicated ; then
+ newinitd "${FILESDIR}"/minetestserver.initd minetest-server
+ newconfd "${T}"/minetestserver.confd minetest-server
+ fi
+
+ prepgamesdirs
+}
+
+pkg_preinst() {
+ games_pkg_preinst
+ gnome2_icon_savelist
+}
+
+pkg_postinst() {
+ games_pkg_postinst
+ gnome2_icon_cache_update
+
+ if ! use dedicated ; then
+ elog
+ elog "optional dependencies:"
+ elog " games-action/minetest_game (official mod)"
+ elog
+ fi
+
+ if use server || use dedicated ; then
+ elog
+ elog "Configure your server via /etc/conf.d/minetest-server"
+ elog "The user \"minetest\" is created with /var/lib/${PN} homedir."
+ elog "Default logfile is ~/minetest-server.log"
+ elog
+ fi
+}
+
+pkg_postrm() {
+ gnome2_icon_cache_update
+}