commit:     1e485b1e96c060fd46cd02337575f49e59eb40db
Author:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 18 19:38:38 2017 +0000
Commit:     Patrice Clement <monsieurp <AT> gentoo <DOT> org>
CommitDate: Mon Sep 18 19:42:37 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e485b1e

games-action/supermariowar: improvements.

This commit:
* enables png and jpeg USE flags on media-libs/sdl-image
* enables vorbis USE flag on media-libs/sdl-mixer
* modifies dynamically the smw_serverdir variable in swmd init script.

Package-Manager: Portage-2.3.6, Repoman-2.3.1

 games-action/supermariowar/files/smwd.initd        |   8 +-
 .../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 6aa83cc3e1b..da4fa9a87ee 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 00000000000..c42de90ce2a
--- /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
+}

Reply via email to