diff options
Diffstat (limited to 'games-action/supermariowar')
-rw-r--r-- | games-action/supermariowar/files/smwd.initd | 8 | ||||
-rw-r--r-- | games-action/supermariowar/supermariowar-2.0_beta1-r1.ebuild | 110 |
2 files changed, 114 insertions, 4 deletions
diff --git a/games-action/supermariowar/files/smwd.initd b/games-action/supermariowar/files/smwd.initd index 6aa83cc3e1b2..da4fa9a87ee4 100644 --- a/games-action/supermariowar/files/smwd.initd +++ b/games-action/supermariowar/files/smwd.initd @@ -7,7 +7,7 @@ command_background="true" pidfile="/var/run/${RC_SVCNAME}.pid" name="Super Mario War server" description="The Super Mario War server process is in charge of hosting Super Mario War games" -smw_server_dir="/usr/share/supermariowar-2.0_beta1/server" +smw_serverdir="@SMW_SERVERDIR@" depend() { use net @@ -15,11 +15,11 @@ depend() { } start() { - if [[ ! -d "${smw_server_dir}" ]]; then - eerror "Cannot cd into ${smw_server_dir}" + if [[ ! -d "${smw_serverdir}" ]]; then + eerror "Cannot cd into ${smw_serverdir}" return 1 fi - cd "${smw_server_dir}" || return 1 + cd "${smw_serverdir}" || return 1 ebegin "Starting ${name}" start-stop-daemon \ --start \ diff --git a/games-action/supermariowar/supermariowar-2.0_beta1-r1.ebuild b/games-action/supermariowar/supermariowar-2.0_beta1-r1.ebuild new file mode 100644 index 000000000000..c42de90ce2a0 --- /dev/null +++ b/games-action/supermariowar/supermariowar-2.0_beta1-r1.ebuild @@ -0,0 +1,110 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils cmake-utils versionator + +MY_PV=$(replace_version_separator 2 '-') +MY_PV="${MY_PV/beta1/beta.1}" +MY_PN="smw" + +DESCRIPTION="Fan-made multiplayer Super Mario Bros. style deathmatch game" +HOMEPAGE="https://github.com/mmatyas/supermariowar" +SRC_URI="https://github.com/mmatyas/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz" + +KEYWORDS="~amd64 ~x86" +LICENSE="GPL-2" +SLOT="0" + +IUSE="+server" + +RDEPEND=" + sys-libs/zlib + dev-cpp/yaml-cpp + net-libs/enet:1.3= + media-libs/sdl-mixer[vorbis] + media-libs/sdl-image[png,jpeg]" + +DEPEND=" + ${RDEPEND} + app-arch/unzip + virtual/pkgconfig" + +S="${WORKDIR}/${PN}-${MY_PV}" + +src_unpack() { + unpack ${A} + cd "${S}" || die + unpack ./data.zip +} + +src_prepare() { + default + einfo "Copying Findyaml-cpp.cmake" + cp "${FILESDIR}/${P}-yaml-cpp-config.cmake" cmake/Findyaml-cpp.cmake || die + eend $? +} + +src_configure() { + local mycmakeargs=( + -DBUILD_STATIC_LIBS=OFF + -DCMAKE_INSTALL_PREFIX="${EPREFIX%/}/usr" + -DSMW_BINDIR="${EPREFIX%/}/usr/bin" + -DSMW_DATADIR="${EPREFIX%/}/usr/share/${PF}" + ) + + cmake-utils_src_configure +} + +src_install() { + cmake-utils_src_install + + local bin + for bin in "${ED}/usr/bin"/*; do + chmod 0755 "${bin}" || die + done + + local smw_datadir="usr/share/${PF}" + local smw_bindir="${smw_datadir}/bin" + mkdir -p "${ED}/${smw_bindir}" || die + + einfo "Moving ${PN} binary files to /${smw_bindir}" + mv "${ED}/usr/bin"/* "${ED}/${smw_bindir}" || die + eend $? + + local base_bin + for bin in "${ED}/${smw_bindir}"/*; do + base_bin=$(basename "${bin}") + einfo "Creating ${base_bin} launcher in /usr/bin" + cat << EOF > "${base_bin}" || die +#!/usr/bin/env bash +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# ${PF} launcher: ${base_bin} +exec /${smw_bindir}/${base_bin} /${smw_datadir} +EOF + dobin "${base_bin}" + eend $? + done + + if use server; then + local smw_server="${BUILD_DIR}/Binaries/Release/${MY_PN}-server" + local smw_serverdir="/${smw_datadir}/server" + + einfo "Installing ${MY_PN}-server files" + dosbin "${smw_server}" + + dodir "${smw_serverdir}" + insinto "${smw_serverdir}" + doins "${S}/src/server/serverconfig" + + dosym "${smw_serverdir}/serverconfig" "/etc/${MY_PN}d.conf" + + newinitd "${FILESDIR}/smwd.initd" "${MY_PN}d" + sed -i -e \ + "s#@SMW_SERVERDIR@#${smw_serverdir}#g;" \ + "${ED}/etc/init.d/${MY_PN}d" || die + eend $? + fi +} |