From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- games-strategy/megaglest/Manifest | 6 + .../megaglest/files/megaglest-3.11.1-cmake.patch | 28 ++++ .../files/megaglest-3.11.1-miniupnpc.patch | 21 +++ .../files/megaglest-3.11.1-static-build.patch | 63 ++++++++ .../megaglest/megaglest-3.11.1-r1.ebuild | 164 +++++++++++++++++++++ games-strategy/megaglest/metadata.xml | 34 +++++ 6 files changed, 316 insertions(+) create mode 100644 games-strategy/megaglest/Manifest create mode 100644 games-strategy/megaglest/files/megaglest-3.11.1-cmake.patch create mode 100644 games-strategy/megaglest/files/megaglest-3.11.1-miniupnpc.patch create mode 100644 games-strategy/megaglest/files/megaglest-3.11.1-static-build.patch create mode 100644 games-strategy/megaglest/megaglest-3.11.1-r1.ebuild create mode 100644 games-strategy/megaglest/metadata.xml (limited to 'games-strategy/megaglest') diff --git a/games-strategy/megaglest/Manifest b/games-strategy/megaglest/Manifest new file mode 100644 index 000000000000..dc77bd19f530 --- /dev/null +++ b/games-strategy/megaglest/Manifest @@ -0,0 +1,6 @@ +AUX megaglest-3.11.1-cmake.patch 897 BLAKE2B 3076a11cbb18263aabfabdaadb4e201d26b7db6e55e32278c0f37ebd938ae8a41cccb906bcf30ff99a32f6ecb35d77512fd3904610443847d1e3bb3212122902 SHA512 f49580a2b87fbc1e9aa3bec7313bdff36f78404aa97ac9f0cef790202c7d92439ad3fd8a9bdc991540048adb771e22f36c946f44a967cacae5157ef98b41c6cc +AUX megaglest-3.11.1-miniupnpc.patch 1299 BLAKE2B e56123ca017cf7b244c449e7b77385d9adc5066873e2ff220eed0344752405019abb13a7dfd0ade027dedd7064e65cf4d6e0509b44986aa5692d7af73b701f7f SHA512 62bf0ff8fa167cecae9f7bf65e5295d609afcdb9fdcb3bf502366eb775fa8d3d39c12001d320a9dc42e12075004c86b7d118eb517d6a57473e03aa26944f8bd4 +AUX megaglest-3.11.1-static-build.patch 1939 BLAKE2B 6d71cdc521f3bcf519a3f98bee00bf45951c26f895c3fe74cd03f3ea74c7a28f370726e82385ce6e6af46a81fa77999b28ae266bdbb8b34cf9d1a5e66abb8bef SHA512 c83c8ed2700cd951516d497ac2a2cadbbb9fe56634e368a252ea7186266ada0bb744edb05fc2d8f1483a5f968854e46606f54926b50677cf424503b6c496dee5 +DIST megaglest-source-3.11.1.tar.xz 2863180 BLAKE2B 01923ad4b29cc7042f0a26ba44a6a023020cbe2071b26b40c3332d763430dd559eb9eb7041182e154a0f1832866c759e08f21a677fcb5f2dba134127b0624b30 SHA512 9e1d8eccff1889199ff0e4b0f1cc3d0193306cd9271a2c98f12a49d61a09789d0813d5f3dadfe7701d2446976992834c63287f0227d660dc9cc9d2ecef65e225 +EBUILD megaglest-3.11.1-r1.ebuild 4505 BLAKE2B 4740e92ac4cc3159ee3e52500a089cad5ebfa530196989737711bdd0fbd86a6fcede17a59190f02450a3b834f502f8b3f263af0325c1ad0d47c091a2dce7735e SHA512 7df2fe631b17a88fead0cd758bcbd8cc7b4f94bf5f5cd4bc541ab527d204c3e769929e573c4ee586a614ff4ccc90ca99cf1bccc73a7b512c7fe119ee93455a87 +MISC metadata.xml 1649 BLAKE2B 92291055582673bdb4c067a42b6f6c599e205e9f8e98a00311d603921a64ce94f2c7b58a2cfbb0b0c9cd7214fd9f3aab3f6d4f9464b77133287638d743ec55a6 SHA512 65e705850828566bafc3b87638613574245039d91da5a39b7d79296c2eeb8701ef04c3bd520686c2dc73d65baa58f1ecb61ee2ce188204a5e704bf15261d34c3 diff --git a/games-strategy/megaglest/files/megaglest-3.11.1-cmake.patch b/games-strategy/megaglest/files/megaglest-3.11.1-cmake.patch new file mode 100644 index 000000000000..527671246e98 --- /dev/null +++ b/games-strategy/megaglest/files/megaglest-3.11.1-cmake.patch @@ -0,0 +1,28 @@ +From e463986ba1f40210b40eff34c4aac727c7f2e571 Mon Sep 17 00:00:00 2001 +From: Michael Palimaka +Date: Wed, 13 May 2015 04:22:45 +1000 +Subject: [PATCH] Fix build with >=cmake-3.2. + +The FindOpenGL module no longer pulls in X11 libraries. +--- + source/shared_lib/CMakeLists.txt | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/source/shared_lib/CMakeLists.txt b/source/shared_lib/CMakeLists.txt +index 3da563e..e5a06fc 100644 +--- a/source/shared_lib/CMakeLists.txt ++++ b/source/shared_lib/CMakeLists.txt +@@ -95,6 +95,10 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST + SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${OPENGL_LIBRARY}) + ENDIF() + ++ IF(UNIX) ++ FIND_PACKAGE(X11 REQUIRED) ++ SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${X11_LIBRARIES}) ++ ENDIF() + + IF(WANT_XERCES) + FIND_PACKAGE(XercesC REQUIRED) +-- +2.3.6 + diff --git a/games-strategy/megaglest/files/megaglest-3.11.1-miniupnpc.patch b/games-strategy/megaglest/files/megaglest-3.11.1-miniupnpc.patch new file mode 100644 index 000000000000..112e734c6efb --- /dev/null +++ b/games-strategy/megaglest/files/megaglest-3.11.1-miniupnpc.patch @@ -0,0 +1,21 @@ +diff --git a/source/shared_lib/sources/platform/posix/socket.cpp b/source/shared_lib/sources/platform/posix/socket.cpp +index a5d4b92..cb8ceb4 100644 +--- a/source/shared_lib/sources/platform/posix/socket.cpp ++++ b/source/shared_lib/sources/platform/posix/socket.cpp +@@ -2563,9 +2563,15 @@ int UPNP_Tools::upnp_init(void *param) { + const char *upnp_minissdpdsock = NULL; + int upnp_sameport = 0; + int upnp_ipv6 = 0; ++ unsigned char upnp_ttl = 2; + int upnp_error = 0; + +-#ifndef MINIUPNPC_VERSION_PRE1_6 ++#if (MINIUPNPC_API_VERSION >= 14) ++ devlist = upnpDiscover(upnp_delay, upnp_multicastif, upnp_minissdpdsock, upnp_sameport, upnp_ipv6, upnp_ttl, &upnp_error); ++ ++ if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"UPnP discover returned upnp_error = %d.\n",upnp_error); ++ if(SystemFlags::VERBOSE_MODE_ENABLED) printf("UPnP discover returned upnp_error = %d.\n",upnp_error); ++#elif (MINIUPNPC_API_VERSION >= 8) + devlist = upnpDiscover(upnp_delay, upnp_multicastif, upnp_minissdpdsock, upnp_sameport, upnp_ipv6, &upnp_error); + + if(SystemFlags::getSystemSettingType(SystemFlags::debugNetwork).enabled) SystemFlags::OutputDebug(SystemFlags::debugNetwork,"UPnP discover returned upnp_error = %d.\n",upnp_error); diff --git a/games-strategy/megaglest/files/megaglest-3.11.1-static-build.patch b/games-strategy/megaglest/files/megaglest-3.11.1-static-build.patch new file mode 100644 index 000000000000..2586a561956b --- /dev/null +++ b/games-strategy/megaglest/files/megaglest-3.11.1-static-build.patch @@ -0,0 +1,63 @@ +commit 754a6eb9f81a4a40a2a0102ffe1bfdbba734b36a +Author: hasufell +Date: Mon Nov 18 21:54:54 2013 +0100 + + fix static build + +diff --git a/mk/cmake/Modules/FindOGG.cmake b/mk/cmake/Modules/FindOGG.cmake +index 2a026cc..8ca8a23 100644 +--- a/mk/cmake/Modules/FindOGG.cmake ++++ b/mk/cmake/Modules/FindOGG.cmake +@@ -19,11 +19,11 @@ + + FIND_PATH(OGG_INCLUDE_DIR ogg/ogg.h) + +-#IF (OGG_STATIC AND NOT OGG_LIBRARY) +-# FIND_LIBRARY(OGG_LIBRARY NAMES libogg.a ogg) +-#ELSE() +- FIND_LIBRARY(OGG_LIBRARY NAMES ogg) +-#ENDIF() ++IF (OGG_STATIC AND NOT OGG_LIBRARY) ++ FIND_LIBRARY(OGG_LIBRARY NAMES libogg.a) ++ELSE() ++ FIND_LIBRARY(OGG_LIBRARY NAMES libogg.so) ++ENDIF() + + #IF (OGG_STATIC AND NOT VORBIS_LIBRARY) + # FIND_LIBRARY(VORBIS_LIBRARY NAMES libvorbis.a vorbis) +--- a/mk/cmake/Modules/FindXercesC.cmake ++++ b/mk/cmake/Modules/FindXercesC.cmake +@@ -83,6 +83,9 @@ + /usr/lib + /usr/local/lib + ) ++ ++ FIND_LIBRARY(ICUUC_LIBRARY NAMES libicuuc.a) ++ FIND_LIBRARY(ICUDATA_LIBRARY NAMES libicudata.a) + + IF (XERCESC_INCLUDE AND XERCESC_LIBRARY) + MESSAGE(STATUS "Found static Xerces-C lib [${XERCESC_LIBRARY}]") +@@ -90,7 +93,7 @@ + + IF(UNIX AND NOT APPLE) + #SET(XERCESC_LIBRARY "-Bstatic ${XERCESC_LIBRARY} -Bdynamic -licuuc -licudata") +- SET(XERCESC_LIBRARY "-Bstatic ${XERCESC_LIBRARY}") ++ SET(XERCESC_LIBRARY "-Bstatic ${XERCESC_LIBRARY} ${ICUUC_LIBRARY} ${ICUDATA_LIBRARY}") + ENDIF() + ENDIF() + ENDIF() +--- a/mk/cmake/Modules/FindFriBiDi.cmake ++++ b/mk/cmake/Modules/FindFriBiDi.cmake +@@ -28,9 +28,9 @@ + SET(FRIBIDI_NAMES ${FRIBIDI_NAMES} fribidi libfribidi) + + OPTION(WANT_STATIC_LIBS "builds as many static libs as possible" OFF) +-IF(WANT_STATIC_LIBS) +- SET(FRIBIDI_NAMES fribidi.a libfribidi.a ${FRIBIDI_NAMES}) +-ENDIF() ++#IF(WANT_STATIC_LIBS) ++# SET(FRIBIDI_NAMES fribidi.a libfribidi.a ${FRIBIDI_NAMES}) ++#ENDIF() + + MESSAGE(STATUS "** Searching for library names: [${FRIBIDI_NAMES}] ...") + diff --git a/games-strategy/megaglest/megaglest-3.11.1-r1.ebuild b/games-strategy/megaglest/megaglest-3.11.1-r1.ebuild new file mode 100644 index 000000000000..ef99043c0a34 --- /dev/null +++ b/games-strategy/megaglest/megaglest-3.11.1-r1.ebuild @@ -0,0 +1,164 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +# google-breakpad +# TODO: fribidi, libvorbis static + +EAPI=5 +VIRTUALX_REQUIRED="manual" +inherit eutils flag-o-matic cmake-utils virtualx wxwidgets gnome2-utils games + +DESCRIPTION="Cross-platform 3D realtime strategy game" +HOMEPAGE="http://www.megaglest.org/" +SRC_URI="https://github.com/MegaGlest/megaglest-source/releases/download/${PV}/megaglest-source-${PV}.tar.xz" + +LICENSE="GPL-3 BitstreamVera" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="debug +editor fribidi cpu_flags_x86_sse cpu_flags_x86_sse2 cpu_flags_x86_sse3 static +streflop +tools +unicode wxuniversal +model-viewer videos" + +RDEPEND=" + ~games-strategy/${PN}-data-${PV} + >=dev-lang/lua-5.1:0 + dev-libs/libxml2 + media-libs/fontconfig + media-libs/freetype + media-libs/libsdl[X,sound,joystick,opengl,video] + media-libs/libvorbis + media-libs/openal + net-libs/gnutls + sys-libs/zlib + virtual/opengl + virtual/glu + x11-libs/libX11 + x11-libs/libXext + editor? ( x11-libs/wxGTK:3.0[X,opengl] ) + fribidi? ( dev-libs/fribidi ) + model-viewer? ( x11-libs/wxGTK:3.0[X] ) + !static? ( + dev-libs/xerces-c[icu] + media-libs/ftgl + media-libs/glew + media-libs/libpng:0 + net-libs/libircclient + >=net-libs/miniupnpc-1.8 + net-misc/curl + virtual/jpeg:0 + ) + videos? ( media-video/vlc )" +DEPEND="${RDEPEND} + sys-apps/help2man + virtual/pkgconfig + editor? ( ${VIRTUALX_DEPEND} ) + model-viewer? ( ${VIRTUALX_DEPEND} ) + static? ( + dev-libs/icu[static-libs] + dev-libs/xerces-c[icu,static-libs] + media-libs/ftgl[static-libs] + media-libs/glew[static-libs] + media-libs/libpng:0[static-libs] + net-libs/libircclient[static-libs] + net-libs/miniupnpc[static-libs] + net-misc/curl[static-libs] + virtual/jpeg:0[static-libs] + )" + +src_prepare() { + if use editor || use model-viewer ; then + WX_GTK_VER="3.0" + need-wxwidgets unicode + fi + + epatch "${FILESDIR}"/${P}-static-build.patch \ + "${FILESDIR}"/${P}-cmake.patch \ + "${FILESDIR}"/${P}-miniupnpc.patch +} + +src_configure() { + if use cpu_flags_x86_sse3; then + SSE=3 + elif use cpu_flags_x86_sse2; then + SSE=2 + elif use cpu_flags_x86_sse; then + SSE=1 + else + SSE=0 + fi + + local mycmakeargs=( + $(cmake-utils_use_enable fribidi FRIBIDI) + $(cmake-utils_use_build editor MEGAGLEST_MAP_EDITOR) + $(cmake-utils_use_build tools MEGAGLEST_MODEL_IMPORT_EXPORT_TOOLS) + $(cmake-utils_use_build model-viewer MEGAGLEST_MODEL_VIEWER) + $(cmake-utils_use_with videos VLC) + -DMAX_SSE_LEVEL_DESIRED="${SSE}" + -DMEGAGLEST_BIN_INSTALL_PATH="${GAMES_BINDIR}" + -DMEGAGLEST_DATA_INSTALL_PATH="${GAMES_DATADIR}/${PN}" + # icons are used at runtime, wrong default location share/pixmaps + -DMEGAGLEST_ICON_INSTALL_PATH="${GAMES_DATADIR}/${PN}" + -DUSE_FTGL=ON + $(cmake-utils_use_want static STATIC_LIBS) + $(cmake-utils_use_want streflop STREFLOP) + -DWANT_SVN_STAMP=off + $(cmake-utils_use static wxWidgets_USE_STATIC) + $(cmake-utils_use unicode wxWidgets_USE_UNICODE) + $(cmake-utils_use wxuniversal wxWidgets_USE_UNIVERSAL) + + $(usex debug "-DBUILD_MEGAGLEST_UPNP_DEBUG=ON -DwxWidgets_USE_DEBUG=ON" "") + ) + + # support CMAKE_BUILD_TYPE=Gentoo + append-cppflags '-DCUSTOM_DATA_INSTALL_PATH=\\\"'${GAMES_DATADIR}/${PN}/'\\\"' + + cmake-utils_src_configure +} + +src_compile() { + if use editor || use model-viewer; then + # work around parallel make issues - bug #561380 + MAKEOPTS="-j1 ${MAKEOPTS}" \ + VIRTUALX_COMMAND="cmake-utils_src_compile" virtualmake + else + cmake-utils_src_compile + fi +} + +src_install() { + # rebuilds some targets randomly without fast option + emake -C "${CMAKE_BUILD_DIR}" DESTDIR="${D}" "$@" install/fast + + dodoc docs/{AUTHORS.source_code,CHANGELOG,README}.txt + doicon -s 48 ${PN}.png + + use editor && + make_desktop_entry ${PN}_editor "MegaGlest Map Editor" + use model-viewer && + make_desktop_entry ${PN}_g3dviewer "MegaGlest Model Viewer" + + prepgamesdirs +} + +pkg_preinst() { + games_pkg_preinst + gnome2_icon_savelist +} + +pkg_postinst() { + einfo + elog 'Note about Configuration:' + elog 'DO NOT directly edit glest.ini and glestkeys.ini but rather glestuser.ini' + elog 'and glestuserkeys.ini in ~/.megaglest/ and create your user over-ride' + elog 'values in these files.' + elog + elog 'If you have an older graphics card which only supports OpenGL 1.2, and the' + elog 'game crashes when you try to play, try starting with "megaglest --disable-vbo"' + elog 'Some graphics cards may require setting Max Lights to 1.' + einfo + + games_pkg_postinst + gnome2_icon_cache_update +} + +pkg_postrm() { + gnome2_icon_cache_update +} diff --git a/games-strategy/megaglest/metadata.xml b/games-strategy/megaglest/metadata.xml new file mode 100644 index 000000000000..192243d3ba3d --- /dev/null +++ b/games-strategy/megaglest/metadata.xml @@ -0,0 +1,34 @@ + + + + + games@gentoo.org + Gentoo Games Project + + + http://megaglest.svn.sourceforge.net/viewvc/megaglest/trunk/docs/CHANGELOG.txt?revision=3397 + http://glest.wikia.com/wiki/MG + https://sourceforge.net/tracker/?group_id=300350&atid=1266776 + MegaGlest/megaglest-source + + + Build map editor + Enable FriBIDi support + Use the library streflop. Out of synchs may + occur if not enabled. + Build model import/export tools + Use unicode strings for wxwidgets + Use the wxUniversal port which implements + the various GUI controls by drawing them itself + Build model viewer + + + MegaGlest is an entertaining free (freeware and free software) and + open source cross-platform 3D real-time strategy (RTS) game, where + you control the armies of one of seven different factions: Tech, + Magic, Egyptians, Indians, Norsemen, Persian or Romans. The game is + setup in one of 17 naturally looking settings, which -like the unit + models- are crafted with great appreciation for detail. Additional + game data can be downloaded from within the game at no cost. + + -- cgit v1.2.3