# Copyright 1999-2015 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Id$ EAPI=5 inherit cmake-utils eutils multilib toolchain-funcs flag-o-matic games git-r3 DESCRIPTION="Battle for Wesnoth - A fantasy turn-based strategy game" HOMEPAGE="http://www.wesnoth.org/" SRC_URI="" EGIT_REPO_URI="https://github.com/wesnoth/wesnoth.git" LICENSE="GPL-2" SLOT="0" KEYWORDS="" IUSE="dbus dedicated doc fribidi nls server" RDEPEND=">=media-libs/libsdl-1.2.7:0[joystick,video,X] media-libs/sdl2-net !dedicated? ( media-libs/sdl2-mixer[vorbis] media-libs/sdl2-image[jpeg,png] media-libs/sdl2-ttf fribidi? ( dev-libs/fribidi ) dbus? ( sys-apps/dbus ) sys-libs/zlib x11-libs/pango dev-lang/lua media-libs/fontconfig ) >=dev-libs/boost-1.48:=[nls,threads] virtual/libintl" DEPEND="${RDEPEND} virtual/pkgconfig sys-devel/gettext" src_prepare() { if use dedicated || use server ; then sed \ -e "s:GAMES_BINDIR:${GAMES_BINDIR}:" \ -e "s:GAMES_STATEDIR:${GAMES_STATEDIR}:" \ -e "s/GAMES_USER_DED/${GAMES_USER_DED}/" \ -e "s/GAMES_GROUP/${GAMES_GROUP}/" "${FILESDIR}"/wesnothd.rc \ > "${T}"/wesnothd || die fi if ! use doc ; then sed -i \ -e '/manual/d' \ doc/CMakeLists.txt || die fi # bug #472994 # mv icons/wesnoth-icon-Mac.png icons/wesnoth-icon.png || die # mv icons/map-editor-icon-Mac.png icons/wesnoth_editor-icon.png || die # respect LINGUAS (bug #483316) if [[ ${LINGUAS+set} ]] ; then local langs for lang in $(cat po/LINGUAS) do has $lang $LINGUAS && langs+="$lang " done echo "$langs" > po/LINGUAS || die fi } src_configure() { filter-flags -ftracer -fomit-frame-pointer if [[ $(gcc-major-version) -eq 3 ]] ; then filter-flags -fstack-protector append-flags -fno-stack-protector fi # Work around eclass append-flags -UNDEBUG if use dedicated || use server ; then mycmakeargs=( "-DENABLE_CAMPAIGN_SERVER=TRUE" "-DENABLE_SERVER=TRUE" "-DSERVER_UID=${GAMES_USER_DED}" "-DSERVER_GID=${GAMES_GROUP}" "-DFIFO_DIR=${GAMES_STATEDIR}/run/wesnothd" ) else mycmakeargs=( $(cmake-utils_use_enable fribidi FRIBIDI) "-DENABLE_CAMPAIGN_SERVER=FALSE" "-DENABLE_SERVER=FALSE" ) fi mycmakeargs+=( $(cmake-utils_use_enable !dedicated GAME) $(cmake-utils_use_enable !dedicated ENABLE_DESKTOP_ENTRY) $(cmake-utils_use_enable nls NLS) $(cmake-utils_use_enable dbus NOTIFICATIONS) "-DCMAKE_VERBOSE_MAKEFILE=TRUE" "-DENABLE_STRICT_COMPILATION=FALSE" "-DCMAKE_INSTALL_PREFIX=${GAMES_PREFIX}" "-DDATAROOTDIR=${GAMES_DATADIR}" "-DBINDIR=${GAMES_BINDIR}" "-DICONDIR=/usr/share/pixmaps" "-DDESKTOPDIR=/usr/share/applications" "-DLOCALEDIR=/usr/share/locale" "-DMANDIR=/usr/share/man" "-DDOCDIR=/usr/share/doc/${PF}" ) cmake-utils_src_configure } src_compile() { cmake-utils_src_compile } src_install() { DOCS="README.md changelog players_changelog" cmake-utils_src_install if use dedicated || use server; then keepdir "${GAMES_STATEDIR}/run/wesnothd" doinitd "${T}"/wesnothd fi prepgamesdirs }