diff options
Diffstat (limited to 'games-action/minetest/minetest-0.4.10-r2.ebuild')
-rw-r--r-- | games-action/minetest/minetest-0.4.10-r2.ebuild | 147 |
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 +} |