# Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: $ inherit games DESCRIPTION="Crossover between Quake and Worms." HOMEPAGE="http://www.teewars.com" SRC_URI="http://www.${PN}.com/files/${P}-src.tar.gz http://www.teewars.com/files/bam.zip racemod? ( http://lan-corps.no-ip.org/${PN}/packs/race_mod.rar http://oerngott.ugms.se/${PN}/race_mod.rar )" # see license.txt LICENSE="as-is" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="debug racemod server serveronly" # this should be ok now RDEPEND="!serveronly? ( media-libs/alsa-lib media-libs/mesa x11-libs/libX11 ) !games-action/teewars-bin" DEPEND="${RDEPEND} app-arch/zip" SB="${WORKDIR}/bam" S="${WORKDIR}/${P}-src" #diropt=${GAMES_PREFIX_OPT}/${PN} dir="${GAMES_DATADIR}/${PN}" pkg_setup() { if use server && use serveronly; then einfo "Can't build with \"server\" and \"serveronly\" USE flags." einfo "Disable one of them and restart the merge" die "\"server\" and \"serveronly\" USE flags enabled." fi } src_unpack() { unpack ${A} # fix bam default optimisation cd ${SB} sed -i \ -e "s|0 then f = f .. \"-O2 \"|0 then f = f .. \" \"|" \ src/base.bam || die "sed base.bam failed" cd ${S} sed -i \ -e "s:data/:${dir}/data/:g" \ datasrc/teewars.ds \ src/engine/client/ec_gfx.c \ src/editor/editor.cpp \ src/game/client/gc_skin.cpp \ src/engine/e_map.c \ src/engine/server/es_server.c \ src/engine/client/ec_client.c || die "sed-ing default datadir location failed" if use racemod; then mv ../"guide to moving.txt" ${S}/guide_to_moving.txt mv ../"race mod.txt" ${S}/race_mod.txt mv ../*.map ${S}/data/maps/ fi } src_compile() { cd ${SB} ./make_unix.sh || die "make_unix.sh failed" cd ${S} # set optimisation sed -i \ -e "s|flags = \"-Wall\"|flags = \"${CXXFLAGS}\"|" \ -e "s|linker.flags = \"\"|linker.flags = \"${LDFLAGS}\"|" \ default.bam || die "sed failed" if use debug && use server; then ../bam/src/bam -v debug || die "bam failed" elif use debug && use serveronly; then ../bam/src/bam -v server_debug || die "bam failed" elif use !debug && use serveronly; then ../bam/src/bam -v server_release || die "bam failed" else ../bam/src/bam -v release || die "bam failed" fi } src_install() { # if use serveronly, we don't need some garbage if use serveronly; then insinto "${dir}"/data/maps doins data/maps/* || die "doins failed" else insinto "${dir}" doins -r data || die "doins failed" fi exeinto "${dir}" # if use debug, the binary names are different if use debug && use server; then # doexe ${PN}_srv_d || die "doexe ${PN}_srv_d" # doexe ${PN}_d || die "doexe ${PN}_d" # games_make_wrapper ${PN}_srv ./${PN}_srv_d "${dir}" # games_make_wrapper ${PN} ./${PN}_d "${dir}" dogamesbin ${PN}_srv_d dogamesbin ${PN}_d make_desktop_entry ${PN} "Teewars" elif use !debug && use server; then # doexe ${PN}_srv || die "doexe ${PN}_srv" # doexe ${PN} || die "doexe ${PN}" # games_make_wrapper ${PN}_srv ./${PN}_srv "${dir}" # games_make_wrapper ${PN} ./${PN} "${dir}" dogamesbin ${PN}_srv dogamesbin ${PN} make_desktop_entry ${PN} "Teewars" elif use debug && use serveronly; then # doexe ${PN}_srv_d || die "doexe ${PN}_srv_d" # games_make_wrapper ${PN}_srv ./${PN}_srv_d "${dir}" dogamesbin ${PN}_srv_d elif use !debug && use serveronly; then # doexe ${PN}_srv || die "doexe ${PN}_srv" # games_make_wrapper ${PN}_srv ./${PN}_srv "${dir}" dogamesbin ${PN}_srv else # doexe ${PN} || die "doexe ${PN}" # games_make_wrapper ${PN} ./${PN} "${dir}" dogamesbin ${PN} make_desktop_entry ${PN} "Teewars" fi dodoc *.txt prepgamesdirs } pkg_postinst() { if use server || use serveronly; then einfo "For more information about server setup read:" einfo "http://www.teewars.com/?page=docs" fi if use racemod && use server; then einfo "Read about server setup for racemod in race_mod.txt" fi }