commit:     245ec6adbd16742786282dd6a06814a24d1a7567
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 10 19:56:32 2016 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sun Jan 10 20:37:26 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=245ec6ad

Revbump, include patch for miniUPnPc API breakage

Package-Manager: portage-2.2.26

 .../files/s25rttr-0.8.1-miniupnpc-api-14.patch     |  36 +++++++
 games-strategy/s25rttr/s25rttr-0.8.1-r1.ebuild     | 110 +++++++++++++++++++++
 2 files changed, 146 insertions(+)

diff --git a/games-strategy/s25rttr/files/s25rttr-0.8.1-miniupnpc-api-14.patch 
b/games-strategy/s25rttr/files/s25rttr-0.8.1-miniupnpc-api-14.patch
new file mode 100644
index 0000000..d2ff0ee
--- /dev/null
+++ b/games-strategy/s25rttr/files/s25rttr-0.8.1-miniupnpc-api-14.patch
@@ -0,0 +1,36 @@
+From 3b08b907235c09ab84e3bb23d1e05fe5a1d1c00e Mon Sep 17 00:00:00 2001
+From: Manuel Zeise <[email protected]>
+Date: Sun, 3 Jan 2016 16:54:05 +0100
+Subject: [PATCH] Switch for miniUPnPc API version 14 and above
+
+API version 14 of miniUPnPc has introduced a new TTL argument to
+upnpDiscover() with a recommended default value of 2. A new preprocessor
+statement evaluates the API version and selects the correct version of
+upnpDiscover() based on the API version.
+
+--- s25rttr-0.8.1/libutil/src/UPnP.cpp
++++ s25rttr-0.8.1/libutil/src/UPnP.cpp
+@@ -210,7 +210,11 @@
+       UPNPDev* devicelist = NULL;
+ #ifdef UPNPDISCOVER_SUCCESS
+       int upnperror = 0;
++#if (MINIUPNPC_API_VERSION >= 14) /* miniUPnPc API version 14 adds TTL 
parameter */
++      devicelist = upnpDiscover(2000, NULL, NULL, 0, 0 /* ipv6 */, 2, 
&upnperror);
++#else
+       devicelist = upnpDiscover(2000, NULL, NULL, 0, 0 /* ipv6 */, 
&upnperror);
++#endif
+ #else
+       devicelist = upnpDiscover(2000, NULL, NULL, 0);
+ #endif
+@@ -276,7 +280,11 @@
+       UPNPDev* devicelist = NULL;
+ #ifdef UPNPDISCOVER_SUCCESS
+       int upnperror = 0;
++#if (MINIUPNPC_API_VERSION >= 14) /* miniUPnPc API version 14 adds TTL 
parameter */
++      devicelist = upnpDiscover(2000, NULL, NULL, 0, 0 /* ipv6 */, 2, 
&upnperror);
++#else
+       devicelist = upnpDiscover(2000, NULL, NULL, 0, 0 /* ipv6 */, 
&upnperror);
++#endif
+ #else
+       devicelist = upnpDiscover(2000, NULL, NULL, 0);
+ #endif

diff --git a/games-strategy/s25rttr/s25rttr-0.8.1-r1.ebuild 
b/games-strategy/s25rttr/s25rttr-0.8.1-r1.ebuild
new file mode 100644
index 0000000..9f39e6b
--- /dev/null
+++ b/games-strategy/s25rttr/s25rttr-0.8.1-r1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+inherit eutils cmake-utils gnome2-utils games
+
+DESCRIPTION="Open Source remake of The Settlers II game (needs original game 
files)"
+HOMEPAGE="http://www.siedler25.org/";
+# no upstream source tarball yet
+# https://bugs.launchpad.net/s25rttr/+bug/1069546
+SRC_URI="https://dev.gentoo.org/~hasufell/distfiles/${P}.tar.xz";
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug glfw"
+
+RDEPEND="app-arch/bzip2
+       media-libs/libsamplerate
+       media-libs/libsdl[X,sound,opengl,video]
+       media-libs/libsndfile
+       media-libs/sdl-mixer[vorbis]
+       net-libs/miniupnpc
+       virtual/libiconv
+       virtual/opengl
+       glfw? ( <media-libs/glfw-3 )"
+DEPEND="${RDEPEND}
+       sys-devel/gettext"
+
+src_prepare() {
+       epatch "${FILESDIR}"/${P}-cmake.patch \
+               "${FILESDIR}"/${P}-soundconverter.patch \
+               "${FILESDIR}"/${P}-fpic.patch \
+               "${FILESDIR}"/${P}-miniupnpc-api-14.patch
+}
+
+src_configure() {
+       local arch
+       case ${ARCH} in
+               amd64)
+                       arch="x86_64" ;;
+               x86)
+                       arch="i386" ;;
+               *) die "Architecture ${ARCH} not yet supported" ;;
+       esac
+
+       local mycmakeargs=(
+               -DCOMPILEFOR="linux"
+               -DCOMPILEARCH="${arch}"
+               -DCMAKE_SKIP_RPATH=YES
+               -DPREFIX="${GAMES_PREFIX}"
+               -DBINDIR="${GAMES_BINDIR}"
+               -DDATADIR="${GAMES_DATADIR}"
+               -DLIBDIR="$(games_get_libdir)/${PN}"
+               -DDRIVERDIR="$(games_get_libdir)/${PN}"
+               -DGAMEDIR="~/.${PN}/S2"
+               $(cmake-utils_use_build glfw GLFW_DRIVER)
+       )
+
+       cmake-utils_src_configure
+}
+
+src_compile() {
+       # work around some relative paths (CMAKE_IN_SOURCE_BUILD not supported)
+       ln -s "${CMAKE_USE_DIR}"/RTTR "${CMAKE_BUILD_DIR}"/RTTR || die
+
+       cmake-utils_src_compile
+
+       mv "${CMAKE_USE_DIR}"/RTTR/{sound-convert,s-c_resample} "${T}"/ || die
+}
+
+src_install() {
+       cd "${CMAKE_BUILD_DIR}" || die
+
+       exeinto "$(games_get_libdir)"/${PN}
+       doexe "${T}"/{sound-convert,s-c_resample}
+       exeinto "$(games_get_libdir)"/${PN}/video
+       doexe driver/video/SDL/src/libvideoSDL.so
+       use glfw && doexe driver/video/GLFW/src/libvideoGLFW.so
+       exeinto "$(games_get_libdir)"/${PN}/audio
+       doexe driver/audio/SDL/src/libaudioSDL.so
+
+       insinto "${GAMES_DATADIR}"
+       doins -r "${CMAKE_USE_DIR}"/RTTR
+       dosym ./LSTS/splash.bmp "${GAMES_DATADIR}"/RTTR/splash.bmp
+
+       doicon -s 64 "${CMAKE_USE_DIR}"/debian/${PN}.png
+       dogamesbin src/s25client
+       make_desktop_entry "s25client" "Settlers RTTR" "${PN}"
+       dodoc RTTR/texte/{keyboardlayout.txt,readme.txt}
+
+       prepgamesdirs
+}
+
+pkg_preinst() {
+       games_pkg_preinst
+       gnome2_icon_savelist
+}
+
+pkg_postinst() {
+       games_pkg_postinst
+       elog "Copy your Settlers2 game files into ~/.${PN}/S2"
+
+       gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+       gnome2_icon_cache_update
+}

Reply via email to