summaryrefslogtreecommitdiff
path: root/games-puzzle/pingus
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /games-puzzle/pingus
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'games-puzzle/pingus')
-rw-r--r--games-puzzle/pingus/Manifest7
-rw-r--r--games-puzzle/pingus/files/pingus-0.7.6-echo-e.patch13
-rw-r--r--games-puzzle/pingus/files/pingus-0.7.6-gcc47.patch22
-rw-r--r--games-puzzle/pingus/files/pingus-0.7.6-gcc7.patch21
-rw-r--r--games-puzzle/pingus/files/pingus-0.7.6-noopengl.patch10
-rw-r--r--games-puzzle/pingus/metadata.xml24
-rw-r--r--games-puzzle/pingus/pingus-0.7.6-r1.ebuild62
7 files changed, 159 insertions, 0 deletions
diff --git a/games-puzzle/pingus/Manifest b/games-puzzle/pingus/Manifest
new file mode 100644
index 000000000000..7b9cd8bb1b49
--- /dev/null
+++ b/games-puzzle/pingus/Manifest
@@ -0,0 +1,7 @@
+AUX pingus-0.7.6-echo-e.patch 489 BLAKE2B 4268205c1c12bc5e8d4a4fb44b49b15b460763a10056a0720b28c25e76a23a0fa8568ca8163195f6ab531084fdd25c53c78d6caf8e7301123621cff58f39e10c SHA512 eb9f2859dcd68b2c1158499435a4742062069cb148e6658396c36fed6b1bba7589d9fbace40c25052e6d42a2b05cdca49561be45053dd9716ee9d9f41a5ab612
+AUX pingus-0.7.6-gcc47.patch 1096 BLAKE2B 8e7a56634eb69cc1c0797a2fa020b30e0eecf0e2ea7c00a0738915a92fd3dd4b5f51fe6dac3f7bd0cb84fea72f68f9e8edbac398b4d067dd7be2ff76560bb7be SHA512 7be7935ad664cde7c78d4363eef7391783ea868f096fc9dd03ce3e3eaaab69a839da5cb569449c106eae1779c41d9850f1a5683542bea4bf5cb98570f9d18e7d
+AUX pingus-0.7.6-gcc7.patch 675 BLAKE2B 76172b7151e30e800ab2210684a02605810b0f15b972ad6942b65c5c333f5f29e6ace7dd37a9d7541468906a2864925df5a899c5c98a6404b65dbfa802a9f5b7 SHA512 7e7fc8d7b23453b33899452d9ee19a134fe7ab1326a2560698624dc686de98108baeb026401704c06dd262c69542499b0cc3727c57d47f924f3a4020ff386027
+AUX pingus-0.7.6-noopengl.patch 315 BLAKE2B 49d2f078506c38d7da57847c6189bf0f9fd0b8a87e80b16fb848f52e37a466111be753f68dc9bf889c66d4ad9a4fea8495fe73b860001d644f2dbb0091b319fe SHA512 f375591892ddecea0659f94ab3d4fc6744625b546fdbc6d80524c25d8ee494163a9b4a90671eed9e7fa2724a1fd91ccde2e80b8ba097c21aa76e0e9fb7e6f4a0
+DIST pingus-0.7.6.tar.bz2 12622268 BLAKE2B 5ea1bbea7191919897bdedcda06f956d9b6cc0cda2ab11e475ef497ef8ba0c0de5a739ac334e2a5c9a0c138e6bfc44a23363dc59d3e4cfaea2b5388bbe57cc85 SHA512 6c8c2ace1a9229b4e3b506aee76aa94c0dd906a64fa2c817902c2cd3854df390cf675c8c6ddd3ba1926a467348b2103818bd44bc095378cc7bf3f2ff7af27188
+EBUILD pingus-0.7.6-r1.ebuild 1253 BLAKE2B 919c9b7804a82de227d068eab374816e85162180d34f3e979e2e5f4d96146d5ad0f97487d71ecee65fd81c13f846ab92acd9a1da7135d2e44d18d511fe1f5bf8 SHA512 5108028d928f683cb4ea2d612f7b3078798a88aff38570f9ff73344771580d2b21f0a2c8352054593d15fa01c8af07e756fb8808750f2e9f569458f98423656a
+MISC metadata.xml 1283 BLAKE2B 971b7c831e81413f71e70c7f66ef01b493296d33ff6bbb2997690b60c10eb1a4ffa29c47f335bbd4c57c178e35aef3d59586bbe06199bc50df34501f56b3be2d SHA512 04c0f4cb00f8b50e5f589d6bfa48389fb7fb2ff0ac2343c625f98383ec41ea77d63dbdc14d12325f3837e4961c544503f1a76a4298fa061458a71b1e198c8219
diff --git a/games-puzzle/pingus/files/pingus-0.7.6-echo-e.patch b/games-puzzle/pingus/files/pingus-0.7.6-echo-e.patch
new file mode 100644
index 000000000000..ab772d8c72e9
--- /dev/null
+++ b/games-puzzle/pingus/files/pingus-0.7.6-echo-e.patch
@@ -0,0 +1,13 @@
+# Work around Gentoo's crippled dash
+
+--- pingus-0.7.6/Makefile
++++ pingus-0.7.6/Makefile
+@@ -39,7 +39,7 @@
+ install -d "$(DESTDIR)$(BINDIR)"
+
+ install -D build/pingus "$(DESTDIR)$(BINDIR)/pingus.bin"
+- echo -e "#!/bin/sh\nexec \"$(BINDIR)/pingus.bin\" --datadir \"$(DATADIR)\"" > "$(DESTDIR)$(BINDIR)/pingus"
++ printf '%s\n%s' "#!/bin/sh" "exec \"$(BINDIR)/pingus.bin\" --datadir \"$(DATADIR)\"" > "$(DESTDIR)$(BINDIR)/pingus"
+ chmod 755 "$(DESTDIR)$(BINDIR)/pingus"
+
+ install-data:
diff --git a/games-puzzle/pingus/files/pingus-0.7.6-gcc47.patch b/games-puzzle/pingus/files/pingus-0.7.6-gcc47.patch
new file mode 100644
index 000000000000..3c1cac5589e4
--- /dev/null
+++ b/games-puzzle/pingus/files/pingus-0.7.6-gcc47.patch
@@ -0,0 +1,22 @@
+--- a/src/pingus/pingus_main.cpp
++++ b/src/pingus/pingus_main.cpp
+@@ -465,7 +465,7 @@
+ void
+ PingusMain::print_greeting_message()
+ {
+- std::string greeting = "Welcome to Pingus "VERSION;
++ std::string greeting = "Welcome to Pingus " VERSION;
+ greeting += "!";
+ std::cout << greeting << std::endl;
+ for (unsigned int i = 0; i < greeting.length(); ++i)
+--- a/src/pingus/screens/pingus_menu.cpp
++++ b/src/pingus/screens/pingus_menu.cpp
+@@ -153,7 +153,7 @@
+ gc.get_height()/2 - 280));
+
+ gc.print_left(Fonts::pingus_small, Vector2i(gc.get_width()/2 - 400 + 25, gc.get_height()-140),
+- "Pingus "VERSION" - Copyright (C) 1998-2011 Ingo Ruhnke <grumbel@gmail.com>\n"
++ "Pingus " VERSION " - Copyright (C) 1998-2011 Ingo Ruhnke <grumbel@gmail.com>\n"
+ "See the file AUTHORS for a complete list of contributors.\n"
+ "Pingus comes with ABSOLUTELY NO WARRANTY. This is free software, and you are\n"
+ "welcome to redistribute it under certain conditions; see the file COPYING for details.\n");
diff --git a/games-puzzle/pingus/files/pingus-0.7.6-gcc7.patch b/games-puzzle/pingus/files/pingus-0.7.6-gcc7.patch
new file mode 100644
index 000000000000..bf04ccd047cc
--- /dev/null
+++ b/games-puzzle/pingus/files/pingus-0.7.6-gcc7.patch
@@ -0,0 +1,21 @@
+From df6e2f445d3e2925a94d22faeb17be9444513e92 Mon Sep 17 00:00:00 2001
+From: Jonathan Wakely <jwakely@redhat.com>
+Date: Mon, 30 Jan 2017 15:41:53 +0000
+Subject: [PATCH] Add missing header for std::function and std::bind
+
+---
+ src/pingus/screens/demo_session.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/pingus/screens/demo_session.cpp b/src/pingus/screens/demo_session.cpp
+index e3ec49a2c..f887e50f0 100644
+--- a/src/pingus/screens/demo_session.cpp
++++ b/src/pingus/screens/demo_session.cpp
+@@ -18,6 +18,7 @@
+
+ #include <algorithm>
+ #include <iostream>
++#include <functional>
+
+ #include "engine/gui/gui_manager.hpp"
+ #include "engine/gui/surface_button.hpp"
diff --git a/games-puzzle/pingus/files/pingus-0.7.6-noopengl.patch b/games-puzzle/pingus/files/pingus-0.7.6-noopengl.patch
new file mode 100644
index 000000000000..6d1af794b032
--- /dev/null
+++ b/games-puzzle/pingus/files/pingus-0.7.6-noopengl.patch
@@ -0,0 +1,10 @@
+--- a/src/engine/display/display.cpp
++++ b/src/engine/display/display.cpp
+@@ -28,6 +28,7 @@
+ #include "engine/display/delta/delta_framebuffer.hpp"
+ #include "engine/display/null_framebuffer.hpp"
+ #include "util/log.hpp"
++#include "util/raise_exception.hpp"
+
+ std::unique_ptr<Framebuffer> Display::s_framebuffer;
+
diff --git a/games-puzzle/pingus/metadata.xml b/games-puzzle/pingus/metadata.xml
new file mode 100644
index 000000000000..844c1d47bf96
--- /dev/null
+++ b/games-puzzle/pingus/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>games@gentoo.org</email>
+ <name>Gentoo Games Project</name>
+ </maintainer>
+ <longdescription>Pingus is a free Lemmings clone for GNU/Linux and Windows covered under the GNU GPL. Pingus
+uses ClanLib and libxml and might also be usable on some other OSs like FreeBSD, but hasn't
+been tested there. Pingus is mainly developed under GNU/Linux, that's why the Windows port
+is sometimes a bit behind.
+If you don't know Lemmingstm, here comes a short introduction. Its a puzzle game developed
+in 1991 by DMA Design. The player takes command in the game of a bunch of small animals and
+has to guide them around in levels. Since the animals walk on their own, the player can only
+influence them by giving them commands, like build a bridge, dig a hole or redirect all
+animals in the other direction. The goal of each level is to reach the exit, for fix
+multiple combination of commands are necessary. The game is presented in a 2D site view.</longdescription>
+ <upstream>
+ <remote-id type="google-code">pingus</remote-id>
+ </upstream>
+ <use>
+ <flag name="music">Enable playing of background music</flag>
+ </use>
+</pkgmetadata>
diff --git a/games-puzzle/pingus/pingus-0.7.6-r1.ebuild b/games-puzzle/pingus/pingus-0.7.6-r1.ebuild
new file mode 100644
index 000000000000..e23d02f4dafb
--- /dev/null
+++ b/games-puzzle/pingus/pingus-0.7.6-r1.ebuild
@@ -0,0 +1,62 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit scons-utils toolchain-funcs flag-o-matic xdg-utils
+
+DESCRIPTION="free Lemmings clone"
+HOMEPAGE="https://pingus.seul.org"
+SRC_URI="https://pingus.googlecode.com/files/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="opengl music"
+
+RDEPEND="media-libs/libsdl[joystick,opengl?,video]
+ media-libs/sdl-image[png]
+ media-libs/sdl-mixer
+ music? ( media-libs/sdl-mixer[mod] )
+ opengl? ( virtual/opengl )
+ media-libs/libpng:0=
+ dev-libs/boost:="
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-noopengl.patch
+ "${FILESDIR}"/${P}-gcc47.patch
+ "${FILESDIR}"/${P}-echo-e.patch
+ "${FILESDIR}"/${P}-gcc7.patch
+)
+
+src_prepare() {
+ default
+ strip-flags
+}
+
+src_compile() {
+ escons \
+ CXX="$(tc-getCXX)" \
+ CCFLAGS="${CXXFLAGS}" \
+ LINKFLAGS="${LDFLAGS}" \
+ with_opengl=$(usex opengl 1 0)
+}
+
+src_install() {
+ emake install-exec install-data \
+ DESTDIR="${D}" \
+ PREFIX="/usr"
+ doman doc/man/pingus.6
+ doicon data/images/icons/pingus.svg
+ make_desktop_entry ${PN} Pingus
+ dodoc AUTHORS NEWS README TODO
+}
+
+pkg_postinst() {
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ xdg_desktop_database_update
+}