# Copyright 2016 Julian Ospald <hasufell@posteo.de> # Distributed under the terms of the GNU General Public License v2 EDITION="collect_edition" require desktop-utils gtk-icon-cache \ sourceforge [ pnv=sauerbraten_${PV//./_}_${EDITION}_linux ] require openrc-service [ openrc_confd_files=[ "${FILES}"/openrc/confd ] ] SUMMARY="Cube 2: Sauerbraten is an open source game engine (Cube 2) with freeware game data (Sauerbraten)" HOMEPAGE="http://sauerbraten.org/" LICENCES="ZLIB freedist" SLOT="0" PLATFORMS="~amd64 ~x86" MYOPTIONS="" DEPENDENCIES=" build+run: media-libs/SDL:0[X] media-libs/SDL_image:1 media-libs/SDL_mixer:0[ogg] x11-libs/libX11 sys-libs/zlib x11-dri/glu x11-dri/mesa run: group/sauerbraten [[ note = [ for server ] ]] user/sauerbraten [[ note = [ for server ] ]] " WORK=${WORKBASE}/${PN} src_prepare() { edo rm -r sauerbraten_unix bin_unix src/{include,lib,vcpp} default # Fix links so they point to the correct directory edo sed -i -e 's:docs/::' README.html } src_compile() { emake -C src master server client } src_install() { local LIBEXECDIR="/usr/$(exhost --target)/libexec/${PN}" local DATADIR="/usr/share/${PN}" local STATEDIR="/var/lib/${PN}" # Install the game data insinto "${DATADIR}" doins -r data packages # Install the client executable exeinto "${LIBEXECDIR}" doexe src/sauer_client # Install the client wrapper herebin ${PN}-client <<EOF #!/bin/sh cd ${DATADIR} exec "${LIBEXECDIR}/sauer_client" -q \$HOME/.${PN} -r "\$@" EOF # Create menu entry insinto /usr/share/icons/hicolor/256x256/apps newins data/cube.png ${PN}.png install_desktop_entry "Name=Cube 2: Sauerbraten" "Exec=${PN}-client" # Install the server config files insinto "${STATEDIR}" doins "server-init.cfg" # Install the server executables exeinto "${LIBEXECDIR}" doexe src/sauer_master doexe src/sauer_server herebin ${PN}-server <<EOF #!/bin/sh exec "${LIBEXECDIR}/sauer_server" -k${DATADIR} -q${STATEDIR} "\$@" EOF herebin ${PN}-master <<EOF #!/bin/sh exec "${LIBEXECDIR}/sauer_master" ${STATEDIR} "\$@" EOF dodoc src/*.txt docs/dev/*.txt insinto /usr/share/doc/${PNVR}/html doins -r README.html docs/* edo chown sauerbraten:sauerbraten "${IMAGE%/}/${STATEDIR}" install_openrc_files } pkg_postinst() { elog "If you plan to use map editor feature copy all map data from ${DATADIR}" elog "to corresponding folder in your HOME/.${PN}" gtk-icon-cache_pkg_postinst }