diff options
Diffstat (limited to 'games-puzzle')
-rw-r--r-- | games-puzzle/pingus/files/pingus-0.7.6-boost_signals2.patch | 380 | ||||
-rw-r--r-- | games-puzzle/pingus/pingus-0.7.6-r2.ebuild | 63 |
2 files changed, 443 insertions, 0 deletions
diff --git a/games-puzzle/pingus/files/pingus-0.7.6-boost_signals2.patch b/games-puzzle/pingus/files/pingus-0.7.6-boost_signals2.patch new file mode 100644 index 000000000000..df4d44945036 --- /dev/null +++ b/games-puzzle/pingus/files/pingus-0.7.6-boost_signals2.patch @@ -0,0 +1,380 @@ +From 6b5f2eb72359ce9cece7543eebb02f2c1ac0dcf9 Mon Sep 17 00:00:00 2001 +From: Ingo Ruhnke <grumbel@gmail.com> +Date: Sat, 26 Jul 2014 20:49:11 +0200 +Subject: [PATCH] Switched to boost::signals2 + +--- + SConscript | 5 ++--- + src/editor/button.hpp | 4 ++-- + src/editor/checkbox.hpp | 4 ++-- + src/editor/combobox.hpp | 4 ++-- + src/editor/file_list.hpp | 4 ++-- + src/editor/inputbox.hpp | 6 +++--- + src/editor/message_box.hpp | 2 +- + src/editor/object_selector.cpp | 4 ++-- + src/editor/viewport.hpp | 4 ++-- + src/pingus/components/check_box.hpp | 4 ++-- + src/pingus/components/choice_box.hpp | 4 ++-- + src/pingus/components/slider_box.hpp | 4 ++-- + src/pingus/config_manager.hpp | 28 ++++++++++++++-------------- + src/pingus/screens/option_menu.hpp | 4 ++-- + 14 files changed, 40 insertions(+), 41 deletions(-) + +diff --git a/SConscript b/SConscript +index 54b64680d..9caa931b6 100644 +--- a/SConscript ++++ b/SConscript +@@ -187,9 +187,8 @@ class Project: + 'src/engine/input/xinput/xinput_device.cpp']) + + def configure_boost(self): +- if not self.conf.CheckLibWithHeader('boost_signals', 'boost/signals.hpp', 'c++'): +- if not self.conf.CheckLibWithHeader('boost_signals-mt', 'boost/signals.hpp', 'c++'): +- self.fatal_error += " * library 'boost_signals' not found\n" ++ if not self.conf.CheckHeader('boost/signals2.hpp', '<>', 'c++'): ++ self.fatal_error += " * library 'boost_signals2' not found\n" + + def configure_png(self): + if self.conf.CheckMyProgram('pkg-config'): +diff --git a/src/editor/button.hpp b/src/editor/button.hpp +index c85d7da9e..d89dfe669 100644 +--- a/src/editor/button.hpp ++++ b/src/editor/button.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_EDITOR_BUTTON_HPP + #define HEADER_PINGUS_EDITOR_BUTTON_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/gui/rect_component.hpp" + +@@ -48,7 +48,7 @@ public: + void enable() { enabled = true; } + void disable() { enabled = false; } + +- boost::signal<void()> on_click; ++ boost::signals2::signal<void()> on_click; + + private: + Button (const Button&); +diff --git a/src/editor/checkbox.hpp b/src/editor/checkbox.hpp +index 7c3bc835f..66382d79b 100644 +--- a/src/editor/checkbox.hpp ++++ b/src/editor/checkbox.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_EDITOR_CHECKBOX_HPP + #define HEADER_PINGUS_EDITOR_CHECKBOX_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/gui/rect_component.hpp" + +@@ -40,7 +40,7 @@ public: + bool is_checked() const { return checked; } + void on_primary_button_press(int x, int y); + +- boost::signal<void (bool)> on_change; ++ boost::signals2::signal<void (bool)> on_change; + + private: + Checkbox (const Checkbox&); +diff --git a/src/editor/combobox.hpp b/src/editor/combobox.hpp +index 0ca742593..603556bd9 100644 +--- a/src/editor/combobox.hpp ++++ b/src/editor/combobox.hpp +@@ -18,7 +18,7 @@ + #ifndef HEADER_PINGUS_EDITOR_COMBOBOX_HPP + #define HEADER_PINGUS_EDITOR_COMBOBOX_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/display/sprite.hpp" + #include "engine/gui/rect_component.hpp" +@@ -88,7 +88,7 @@ public: + + void update_layout() {} + +- boost::signal<void (const ComboItem&)> on_select; ++ boost::signals2::signal<void (const ComboItem&)> on_select; + + private: + Combobox(); +diff --git a/src/editor/file_list.hpp b/src/editor/file_list.hpp +index cc4bba2de..85efe6aa0 100644 +--- a/src/editor/file_list.hpp ++++ b/src/editor/file_list.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_EDITOR_FILE_LIST_HPP + #define HEADER_PINGUS_EDITOR_FILE_LIST_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/display/sprite.hpp" + #include "engine/gui/rect_component.hpp" +@@ -61,7 +61,7 @@ public: + bool has_more_next_pages(); + bool has_more_prev_pages(); + +- boost::signal<void (const System::DirectoryEntry&)> on_click; ++ boost::signals2::signal<void (const System::DirectoryEntry&)> on_click; + + private: + int items_per_page(); +diff --git a/src/editor/inputbox.hpp b/src/editor/inputbox.hpp +index cad9663ec..87321dbba 100644 +--- a/src/editor/inputbox.hpp ++++ b/src/editor/inputbox.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_EDITOR_INPUTBOX_HPP + #define HEADER_PINGUS_EDITOR_INPUTBOX_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/gui/rect_component.hpp" + +@@ -40,8 +40,8 @@ public: + + void update_layout() {} + +- boost::signal<void (const std::string&)> on_change; +- boost::signal<void (const std::string&)> on_enter; ++ boost::signals2::signal<void (const std::string&)> on_change; ++ boost::signals2::signal<void (const std::string&)> on_enter; + + private: + Inputbox (const Inputbox&); +diff --git a/src/editor/message_box.hpp b/src/editor/message_box.hpp +index 385387a61..d885767cf 100644 +--- a/src/editor/message_box.hpp ++++ b/src/editor/message_box.hpp +@@ -45,7 +45,7 @@ public: + void on_cancel_button(); + + public: +- boost::signal<void()> on_ok; ++ boost::signals2::signal<void()> on_ok; + + private: + MessageBox(const MessageBox&); +diff --git a/src/editor/object_selector.cpp b/src/editor/object_selector.cpp +index 28e306826..f3a36b5e8 100644 +--- a/src/editor/object_selector.cpp ++++ b/src/editor/object_selector.cpp +@@ -16,7 +16,7 @@ + + #include "editor/object_selector.hpp" + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "editor/generic_level_obj.hpp" + #include "editor/gui_style.hpp" +@@ -47,7 +47,7 @@ private: + std::string tooltip; + + public: +- boost::signal<void()> on_click; ++ boost::signals2::signal<void()> on_click; + + public: + ObjectSelectorButton(ObjectSelectorList* object_list_, +diff --git a/src/editor/viewport.hpp b/src/editor/viewport.hpp +index 1ae9eff7c..18868254d 100644 +--- a/src/editor/viewport.hpp ++++ b/src/editor/viewport.hpp +@@ -18,7 +18,7 @@ + #ifndef HEADER_PINGUS_EDITOR_VIEWPORT_HPP + #define HEADER_PINGUS_EDITOR_VIEWPORT_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + #include <set> + + #include "editor/selection.hpp" +@@ -148,7 +148,7 @@ public: + + void clear_selection(); + +- boost::signal<void (const Selection&)> selection_changed; ++ boost::signals2::signal<void (const Selection&)> selection_changed; + private: + Viewport(); + Viewport (const Viewport&); +diff --git a/src/pingus/components/check_box.hpp b/src/pingus/components/check_box.hpp +index 00e23b764..5bef50f6b 100644 +--- a/src/pingus/components/check_box.hpp ++++ b/src/pingus/components/check_box.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP + #define HEADER_PINGUS_PINGUS_COMPONENTS_CHECK_BOX_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/display/sprite.hpp" + #include "engine/gui/rect_component.hpp" +@@ -39,7 +39,7 @@ public: + + void set_state(bool v, bool send_signal); + +- boost::signal<void (bool)> on_change; ++ boost::signals2::signal<void (bool)> on_change; + + private: + CheckBox (const CheckBox&); +diff --git a/src/pingus/components/choice_box.hpp b/src/pingus/components/choice_box.hpp +index 49d6e1948..ef51b6dd2 100644 +--- a/src/pingus/components/choice_box.hpp ++++ b/src/pingus/components/choice_box.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP + #define HEADER_PINGUS_PINGUS_COMPONENTS_CHOICE_BOX_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/gui/rect_component.hpp" + +@@ -36,7 +36,7 @@ public: + void add_choice(const std::string& str); + void set_current_choice(int choice); + +- boost::signal<void (std::string)> on_change; ++ boost::signals2::signal<void (std::string)> on_change; + + private: + ChoiceBox (const ChoiceBox&); +diff --git a/src/pingus/components/slider_box.hpp b/src/pingus/components/slider_box.hpp +index ae4d92406..75118eac2 100644 +--- a/src/pingus/components/slider_box.hpp ++++ b/src/pingus/components/slider_box.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP + #define HEADER_PINGUS_PINGUS_COMPONENTS_SLIDER_BOX_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "engine/gui/rect_component.hpp" + +@@ -39,7 +39,7 @@ public: + + void set_value(int v); + +- boost::signal<void (int)> on_change; ++ boost::signals2::signal<void (int)> on_change; + + private: + SliderBox (const SliderBox&); +diff --git a/src/pingus/config_manager.hpp b/src/pingus/config_manager.hpp +index b07b83e65..4cf08e046 100644 +--- a/src/pingus/config_manager.hpp ++++ b/src/pingus/config_manager.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP + #define HEADER_PINGUS_PINGUS_CONFIG_MANAGER_HPP + +-#include <boost/signal.hpp> ++#include <boost/signals2.hpp> + + #include "math/size.hpp" + #include "pingus/options.hpp" +@@ -39,55 +39,55 @@ public: + + void set_master_volume(int); + int get_master_volume() const; +- boost::signal<void(int)> on_master_volume_change; ++ boost::signals2::signal<void(int)> on_master_volume_change; + + void set_sound_volume(int); + int get_sound_volume() const; +- boost::signal<void(int)> on_sound_volume_change; ++ boost::signals2::signal<void(int)> on_sound_volume_change; + + void set_music_volume(int); + int get_music_volume() const; +- boost::signal<void(int)> on_music_volume_change; ++ boost::signals2::signal<void(int)> on_music_volume_change; + + void set_fullscreen_resolution(const Size& size); + Size get_fullscreen_resolution() const; +- boost::signal<void(Size)> on_fullscreen_resolution_change; ++ boost::signals2::signal<void(Size)> on_fullscreen_resolution_change; + + void set_fullscreen(bool); + bool get_fullscreen() const; +- boost::signal<void(bool)> on_fullscreen_change; ++ boost::signals2::signal<void(bool)> on_fullscreen_change; + + void set_renderer(FramebufferType type); + FramebufferType get_renderer() const; +- boost::signal<void(FramebufferType)> on_renderer_change; ++ boost::signals2::signal<void(FramebufferType)> on_renderer_change; + + void set_resizable(bool); + bool get_resizable() const; +- boost::signal<void(bool)> on_resizable_change; ++ boost::signals2::signal<void(bool)> on_resizable_change; + + void set_mouse_grab(bool); + bool get_mouse_grab() const; +- boost::signal<void(bool)> on_mouse_grab_change; ++ boost::signals2::signal<void(bool)> on_mouse_grab_change; + + void set_print_fps(bool); + bool get_print_fps() const; +- boost::signal<void(bool)> on_print_fps_change; ++ boost::signals2::signal<void(bool)> on_print_fps_change; + + void set_language(const tinygettext::Language&); + tinygettext::Language get_language() const; +- boost::signal<void(const tinygettext::Language&)> on_language_change; ++ boost::signals2::signal<void(const tinygettext::Language&)> on_language_change; + + void set_software_cursor(bool); + bool get_software_cursor() const; +- boost::signal<void(bool)> on_software_cursor_change; ++ boost::signals2::signal<void(bool)> on_software_cursor_change; + + void set_auto_scrolling(bool); + bool get_auto_scrolling() const; +- boost::signal<void(bool)> on_auto_scrolling_change; ++ boost::signals2::signal<void(bool)> on_auto_scrolling_change; + + void set_drag_drop_scrolling(bool); + bool get_drag_drop_scrolling() const; +- boost::signal<void(bool)> on_drag_drop_scrolling_change; ++ boost::signals2::signal<void(bool)> on_drag_drop_scrolling_change; + + private: + ConfigManager (const ConfigManager&); +diff --git a/src/pingus/screens/option_menu.hpp b/src/pingus/screens/option_menu.hpp +index 60b1578d2..154ef0f69 100644 +--- a/src/pingus/screens/option_menu.hpp ++++ b/src/pingus/screens/option_menu.hpp +@@ -17,7 +17,7 @@ + #ifndef HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP + #define HEADER_PINGUS_PINGUS_SCREENS_OPTION_MENU_HPP + +-#include <boost/signals.hpp> ++#include <boost/signals2.hpp> + #include <map> + #include <vector> + +@@ -66,7 +66,7 @@ private: + //Label* defaults_label; + //CheckBox* defaults_box; + +- typedef std::vector<boost::signals::connection> Connections; ++ typedef std::vector<boost::signals2::connection> Connections; + Connections connections; + + tinygettext::Language m_language; +-- +2.21.0 + diff --git a/games-puzzle/pingus/pingus-0.7.6-r2.ebuild b/games-puzzle/pingus/pingus-0.7.6-r2.ebuild new file mode 100644 index 000000000000..7a222f34d4f2 --- /dev/null +++ b/games-puzzle/pingus/pingus-0.7.6-r2.ebuild @@ -0,0 +1,63 @@ +# Copyright 1999-2019 Gentoo Authors +# 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 + "${FILESDIR}"/${P}-boost_signals2.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 +} |