public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: games-util/slade/, games-util/slade/files/
@ 2020-05-31 21:12 James Le Cuirot
  0 siblings, 0 replies; 5+ messages in thread
From: James Le Cuirot @ 2020-05-31 21:12 UTC (permalink / raw
  To: gentoo-commits

commit:     0a09ba651e97e88364fc3d9c098af10635c99101
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sun May 31 21:12:08 2020 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sun May 31 21:12:08 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0a09ba65

games-util/slade: New package

Package-Manager: Portage-2.3.100, Repoman-2.3.22
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 games-util/slade/Manifest                          |   1 +
 .../slade/files/slade-3.1.12a-bundled-libs.patch   |  80 +++++++++++++++
 .../files/slade-3.1.12a-fluidsynth-driver.patch    |  14 +++
 .../slade/files/slade-3.1.12a-freetype-deps.patch  |  74 ++++++++++++++
 .../slade/files/slade-3.1.12a-sfml-gtk3.patch      |  88 ++++++++++++++++
 .../slade/files/slade-3.1.12a-wxGLCanvas.patch     | 112 +++++++++++++++++++++
 games-util/slade/metadata.xml                      |  14 +++
 games-util/slade/slade-3.1.12a.ebuild              |  67 ++++++++++++
 8 files changed, 450 insertions(+)

diff --git a/games-util/slade/Manifest b/games-util/slade/Manifest
new file mode 100644
index 00000000000..be9e5aaa542
--- /dev/null
+++ b/games-util/slade/Manifest
@@ -0,0 +1 @@
+DIST slade-3.1.12a.tar.gz 5883702 BLAKE2B 400cf032bf0b60555b45b450c524d85f145d593d74601461f33fa571360a0c66a1d5933a7d48e8cfad98981bcf446df213240f53da237be6d9a1ce09517c4566 SHA512 ecedec880b8ebed921e152d016a451164efd4de90ae69963be077d1ef39326670254ca8eb03e1045ca7ae5b02f7512dbbe712f83c845cbbd4ed787a90899ad13

diff --git a/games-util/slade/files/slade-3.1.12a-bundled-libs.patch b/games-util/slade/files/slade-3.1.12a-bundled-libs.patch
new file mode 100644
index 00000000000..6e8285d8105
--- /dev/null
+++ b/games-util/slade/files/slade-3.1.12a-bundled-libs.patch
@@ -0,0 +1,80 @@
+diff -Naur a/src/Application/App.cpp b/src/Application/App.cpp
+--- a/src/Application/App.cpp	2020-05-26 00:34:50.000000000 +0100
++++ b/src/Application/App.cpp	2020-05-31 17:11:08.365000293 +0100
+@@ -34,7 +34,7 @@
+ #include "App.h"
+ #include "Archive/ArchiveManager.h"
+ #include "Dialogs/SetupWizard/SetupWizardDialog.h"
+-#include "External/dumb/dumb.h"
++#include <dumb.h>
+ #include "Game/Configuration.h"
+ #include "General/ColourConfiguration.h"
+ #include "General/Console/Console.h"
+diff -Naur a/src/Audio/ModMusic.cpp b/src/Audio/ModMusic.cpp
+--- a/src/Audio/ModMusic.cpp	2020-05-26 00:34:50.000000000 +0100
++++ b/src/Audio/ModMusic.cpp	2020-05-31 17:11:08.365000293 +0100
+@@ -30,7 +30,7 @@
+  *******************************************************************/
+ #include "Main.h"
+ #include "ModMusic.h"
+-#include "External/dumb/dumb.h"
++#include <dumb.h>
+ 
+ 
+ /*******************************************************************
+diff -Naur a/src/CMakeLists.txt b/src/CMakeLists.txt
+--- a/src/CMakeLists.txt	2020-05-26 00:34:50.000000000 +0100
++++ b/src/CMakeLists.txt	2020-05-31 17:11:08.365000293 +0100
+@@ -105,6 +105,8 @@
+ find_package(GLEW REQUIRED)
+ find_package(Freetype REQUIRED)
+ find_package(CURL REQUIRED)
++find_package(Lua REQUIRED)
++pkg_check_modules(DUMB REQUIRED dumb>=1.0)
+ include_directories(
+ 	${FREEIMAGE_INCLUDE_DIR}
+ 	${SFML_INCLUDE_DIR}
+@@ -112,8 +114,9 @@
+ 	${FREETYPE_INCLUDE_DIRS}
+ 	${GLEW_INCLUDE_PATH}
+ 	${CURL_INCLUDE_DIR}
++	${LUA_INCLUDE_DIR}
++	${DUMB_INCLUDE_DIRS}
+ 	.
+-	./External/dumb
+ 	./Application
+ 	)
+ 
+@@ -182,6 +185,8 @@
+ 	${FREETYPE_LIBRARIES}
+ 	${GLEW_LIBRARY}
+ 	${CURL_LIBRARIES}
++	${LUA_LIBRARIES}
++	${DUMB_LIBRARIES}
+ )
+ 
+ if (WX_GTK3)
+diff -Naur a/src/External/CMakeLists.txt b/src/External/CMakeLists.txt
+--- a/src/External/CMakeLists.txt	2020-05-26 00:34:50.000000000 +0100
++++ b/src/External/CMakeLists.txt	2020-05-31 17:12:09.614333605 +0100
+@@ -24,8 +24,6 @@
+ file(GLOB_RECURSE EXTERNAL_SOURCES
+ 	*.cpp
+ 	*.cxx
+-	dumb/*.c
+-	lua/*.c
+ 	lzma/C/LzmaDec.c
+ 	${SLADE_HEADERS}
+ 	)
+diff -Naur a/src/External/sol/sol.hpp b/src/External/sol/sol.hpp
+--- a/src/External/sol/sol.hpp	2020-05-26 00:34:50.000000000 +0100
++++ b/src/External/sol/sol.hpp	2020-05-31 17:11:08.367000336 +0100
+@@ -798,7 +798,7 @@
+ #include <lualib.h>
+ #include <lauxlib.h>
+ #else
+-#include "External/lua/lua.hpp"
++#include <lua.hpp>
+ #endif // C++ Mangling for Lua
+ 
+ #if defined(_WIN32) || defined(_MSC_VER)

diff --git a/games-util/slade/files/slade-3.1.12a-fluidsynth-driver.patch b/games-util/slade/files/slade-3.1.12a-fluidsynth-driver.patch
new file mode 100644
index 00000000000..c0ef70d6dfc
--- /dev/null
+++ b/games-util/slade/files/slade-3.1.12a-fluidsynth-driver.patch
@@ -0,0 +1,14 @@
+https://github.com/sirjuddington/SLADE/issues/1147
+
+diff -Naur a/src/Audio/MIDIPlayer.cpp b/src/Audio/MIDIPlayer.cpp
+--- a/src/Audio/MIDIPlayer.cpp	2020-05-28 00:08:34.000000000 +0100
++++ b/src/Audio/MIDIPlayer.cpp	2020-05-31 21:40:03.480211253 +0100
+@@ -74,8 +74,6 @@
+ #ifndef NO_FLUIDSYNTH
+ 	// Set fluidsynth driver to alsa in linux (no idea why it defaults to jack)
+ #if !defined __WXMSW__ && !defined __WXOSX__
+-	if (fs_driver == "")
+-		fs_driver = "alsa";
+ #endif // !defined __WXMSW__ && !defined __WXOSX__
+ 
+ 	// Init soundfont path

diff --git a/games-util/slade/files/slade-3.1.12a-freetype-deps.patch b/games-util/slade/files/slade-3.1.12a-freetype-deps.patch
new file mode 100644
index 00000000000..33fdbfe8521
--- /dev/null
+++ b/games-util/slade/files/slade-3.1.12a-freetype-deps.patch
@@ -0,0 +1,74 @@
+From 115ae712d576deafaa95dc5227a7f83dce92a9cb Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Sun, 31 May 2020 21:59:06 +0100
+Subject: [PATCH 1/2] Drop unused FreeType dependency
+
+It may be used by FTGL but it's not directly used by this
+project. pkg-config should handle this for static builds.
+---
+ src/CMakeLists.txt | 3 ---
+ 1 file changed, 3 deletions(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index f54b126f..8dab39fc 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -103,7 +103,6 @@ find_package(SFML COMPONENTS ${SFML_FIND_COMPONENTS} REQUIRED)
+ find_package(FTGL REQUIRED)
+ find_package(OpenGL REQUIRED)
+ find_package(GLEW REQUIRED)
+-find_package(Freetype REQUIRED)
+ find_package(CURL REQUIRED)
+ find_package(Lua REQUIRED)
+ find_package(fmt CONFIG REQUIRED)
+@@ -111,7 +110,6 @@ include_directories(
+ 	${FREEIMAGE_INCLUDE_DIR}
+ 	${SFML_INCLUDE_DIR}
+ 	${FTGL_INCLUDE_DIR}
+-	${FREETYPE_INCLUDE_DIRS}
+ 	${GLEW_INCLUDE_PATH}
+ 	${CURL_INCLUDE_DIR}
+ 	${LUA_INCLUDE_DIR}
+@@ -184,7 +182,6 @@ target_link_libraries(slade
+ 	${SFML_LIBRARY}
+ 	${FTGL_LIBRARIES}
+ 	${OPENGL_LIBRARIES}
+-	${FREETYPE_LIBRARIES}
+ 	${GLEW_LIBRARY}
+ 	${CURL_LIBRARIES}
+ 	${LUA_LIBRARIES}
+-- 
+2.26.2
+
+From 9116972a75b58ef32e229842f80cdc96fab04f1e Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Sun, 31 May 2020 22:00:53 +0100
+Subject: [PATCH 2/2] Only require FTGL when USE_SFML_RENDERWINDOW is disabled
+
+---
+ src/CMakeLists.txt | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 8dab39fc..b0d4776d 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -72,6 +72,7 @@ set(SFML_FIND_COMPONENTS system audio window graphics network)
+ ADD_DEFINITIONS(-DUSE_SFML_RENDERWINDOW)
+ else (USE_SFML_RENDERWINDOW)
+ set(SFML_FIND_COMPONENTS system audio window network)
++find_package(FTGL REQUIRED)
+ endif(USE_SFML_RENDERWINDOW)
+ 
+ # Fluidsynth
+@@ -100,7 +101,6 @@ endif()
+ 
+ find_package(FreeImage REQUIRED)
+ find_package(SFML COMPONENTS ${SFML_FIND_COMPONENTS} REQUIRED)
+-find_package(FTGL REQUIRED)
+ find_package(OpenGL REQUIRED)
+ find_package(GLEW REQUIRED)
+ find_package(CURL REQUIRED)
+-- 
+2.26.2
+

diff --git a/games-util/slade/files/slade-3.1.12a-sfml-gtk3.patch b/games-util/slade/files/slade-3.1.12a-sfml-gtk3.patch
new file mode 100644
index 00000000000..745a41d64b8
--- /dev/null
+++ b/games-util/slade/files/slade-3.1.12a-sfml-gtk3.patch
@@ -0,0 +1,88 @@
+From 7e2aa2666701cc0db32d8b3185c3cd07ae733ab0 Mon Sep 17 00:00:00 2001
+From: Simon Judd <sirjuddington@gmail.com>
+Date: Fri, 6 Dec 2019 16:36:52 +1030
+Subject: [PATCH] Fix SFML RenderWindow embedding on GTK3
+
+It actually seems to work ok now so might be able to make it the default there
+
+It'd be nice if it worked on macos as well, then I'd be able to remove the wxGLCanvas/FTGL stuff completely...
+---
+
+diff --git a/src/UI/Canvas/OGLCanvas.cpp b/src/UI/Canvas/OGLCanvas.cpp
+index 92f86b29..4bba9f98 100644
+--- a/src/UI/Canvas/OGLCanvas.cpp
++++ b/src/UI/Canvas/OGLCanvas.cpp
+@@ -44,6 +44,8 @@
+ #endif
+ #endif
+ 
++EXTERN_CVAR(Int, gl_depth_buffer_size)
++
+ 
+ /*******************************************************************
+  * OGLCANVAS CLASS FUNCTIONS
+@@ -130,29 +132,29 @@ bool OGLCanvas::setContext()
+ #endif
+ }
+ 
+-void OGLCanvas::createSFML()
++bool OGLCanvas::createSFML()
+ {
+ #ifdef USE_SFML_RENDERWINDOW
+ 	// Code taken from SFML wxWidgets integration example
+ 	sf::WindowHandle handle;
+ #ifdef __WXGTK__
+-	// GTK implementation requires to go deeper to find the
+-	// low-level X11 identifier of the widget
+-	gtk_widget_realize(m_wxwindow);
+-	gtk_widget_set_double_buffered(m_wxwindow, false);
+-	GdkWindow* Win = gtk_widget_get_window(m_wxwindow);
+-	XFlush(GDK_WINDOW_XDISPLAY(Win));
+-	//sf::RenderWindow::Create(GDK_WINDOW_XWINDOW(Win));
+-	handle = GDK_WINDOW_XWINDOW(Win);
++	auto widget = GetHandle();
++	if (!widget)
++		return false;
++	auto window = gtk_widget_get_window(widget);
++	if (!window)
++		return false;
++	handle = gdk_x11_window_get_xid(window);
+ #else
+ 	handle = GetHandle();
+ #endif
+ 	// Context settings
+ 	sf::ContextSettings settings;
+-	settings.depthBits = 24;
+-	settings.stencilBits = 8;
++	settings.depthBits = gl_depth_buffer_size;
++	settings.stencilBits = sf::ContextSettings::Default;
+ 	sf::RenderWindow::create(handle, settings);
+ #endif
++	return true;
+ }
+ 
+ /* OGLCanvas::init
+@@ -308,7 +310,9 @@ void OGLCanvas::onPaint(wxPaintEvent& e)
+ 
+ 	if (recreate)
+ 	{
+-		createSFML();
++		if (!createSFML())
++			return;
++
+ 		recreate = false;
+ 	}
+ 
+diff --git a/src/UI/Canvas/OGLCanvas.h b/src/UI/Canvas/OGLCanvas.h
+index a1defbee..9b9b07db 100644
+--- a/src/UI/Canvas/OGLCanvas.h
++++ b/src/UI/Canvas/OGLCanvas.h
+@@ -28,7 +28,7 @@ public:
+ 	Palette*	getPalette() { return &palette; }
+ 	void			setPalette(Palette* pal) { palette.copyPalette(pal); }
+ 	bool			setContext();
+-	void			createSFML();
++	bool			createSFML();
+ 	void			init();
+ 	virtual void	draw() = 0;
+ 	virtual void	update(long frametime) {}

diff --git a/games-util/slade/files/slade-3.1.12a-wxGLCanvas.patch b/games-util/slade/files/slade-3.1.12a-wxGLCanvas.patch
new file mode 100644
index 00000000000..64698cc4591
--- /dev/null
+++ b/games-util/slade/files/slade-3.1.12a-wxGLCanvas.patch
@@ -0,0 +1,112 @@
+From a934d04b8c49c250e9be27581129c75bc058814a Mon Sep 17 00:00:00 2001
+From: Simon Judd <sirjuddington@gmail.com>
+Date: Mon, 9 Dec 2019 12:26:17 +1030
+Subject: [PATCH] Always use wxGLCanvas as a base for OGLCanvas
+
+Even if using SFML - this fixes the depth buffer not being created on linux
+---
+
+diff --git a/src/OpenGL/OpenGL.cpp b/src/OpenGL/OpenGL.cpp
+index 7e506550..0a8d4236 100644
+--- a/src/OpenGL/OpenGL.cpp
++++ b/src/OpenGL/OpenGL.cpp
+@@ -38,14 +38,14 @@ CVAR(Bool, gl_tex_enable_np2, true, CVAR_SAVE)
+ CVAR(Bool, gl_point_sprite, true, CVAR_SAVE)
+ CVAR(Bool, gl_tweak_accuracy, true, CVAR_SAVE)
+ CVAR(Bool, gl_vbo, true, CVAR_SAVE)
+-CVAR(Int, gl_depth_buffer_size, 16, CVAR_SAVE)
++CVAR(Int, gl_depth_buffer_size, 24, CVAR_SAVE)
+ 
+ namespace OpenGL
+ {
+ #ifndef USE_SFML_RENDERWINDOW
+ 	wxGLContext*	context = NULL;
+-	int				wx_gl_attrib[] = { WX_GL_RGBA, WX_GL_DOUBLEBUFFER, WX_GL_DEPTH_SIZE, 16, WX_GL_STENCIL_SIZE, 8, 0 };
+ #endif
++	int				wx_gl_attrib[] = { WX_GL_RGBA, WX_GL_DOUBLEBUFFER, WX_GL_DEPTH_SIZE, 16, WX_GL_STENCIL_SIZE, 8, 0 };
+ 	bool			initialised = false;
+ 	double			version = 0;
+ 	unsigned		max_tex_size = 128;
+@@ -224,7 +224,6 @@ bool OpenGL::accuracyTweak()
+ 	return gl_tweak_accuracy;
+ }
+ 
+-#ifndef USE_SFML_RENDERWINDOW
+ /* OpenGL::getWxGLAttribs
+  * Returns the GL attributes array for use with wxGLCanvas
+  *******************************************************************/
+@@ -235,7 +234,6 @@ int* OpenGL::getWxGLAttribs()
+ 
+ 	return wx_gl_attrib;
+ }
+-#endif
+ 
+ /* OpenGL::setColour
+  * Sets the colour to [col], and changes the colour blend mode if
+diff --git a/src/OpenGL/OpenGL.h b/src/OpenGL/OpenGL.h
+index 1d5c9b9a..9082687c 100644
+--- a/src/OpenGL/OpenGL.h
++++ b/src/OpenGL/OpenGL.h
+@@ -20,10 +20,8 @@
+ #include <GL/glu.h>
+ #endif
+ 
+-#ifndef USE_SFML_RENDERWINDOW
+ #include <wx/glcanvas.h>
+ #undef None // Why does <X11/X.h> #define this? Idiotic
+-#endif
+ 
+ #define BLEND_NORMAL	0
+ #define BLEND_ADDITIVE	1
+@@ -56,9 +54,7 @@ namespace OpenGL
+ 	unsigned		maxTextureSize();
+ 	bool			isInitialised();
+ 	bool			accuracyTweak();
+-#ifndef USE_SFML_RENDERWINDOW
+ 	int*			getWxGLAttribs();
+-#endif
+ 	void			setColour(rgba_t col, bool set_blend = true);
+ 	void			setColour(uint8_t r, uint8_t g, uint8_t b, uint8_t a = 255, int8_t blend = BLEND_IGNORE);
+ 	void			setBlend(int blend);
+diff --git a/src/UI/Canvas/OGLCanvas.cpp b/src/UI/Canvas/OGLCanvas.cpp
+index 4bba9f98..a48d9ac6 100644
+--- a/src/UI/Canvas/OGLCanvas.cpp
++++ b/src/UI/Canvas/OGLCanvas.cpp
+@@ -55,8 +55,9 @@ EXTERN_CVAR(Int, gl_depth_buffer_size)
+ /* OGLCanvas::OGLCanvas
+  * OGLCanvas class constructor, SFML implementation
+  *******************************************************************/
+-OGLCanvas::OGLCanvas(wxWindow* parent, int id, bool handle_timer, int timer_interval)
+-	: wxControl(parent, id, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE|wxWANTS_CHARS), timer(this)
++OGLCanvas::OGLCanvas(wxWindow* parent, int id, bool handle_timer, int timer_interval) :
++	wxGLCanvas(parent, id, OpenGL::getWxGLAttribs(), wxDefaultPosition, wxDefaultSize, wxBORDER_NONE | wxWANTS_CHARS),
++	timer(this)
+ {
+ 	init_done = false;
+ 	recreate = false;
+diff --git a/src/UI/Canvas/OGLCanvas.h b/src/UI/Canvas/OGLCanvas.h
+index 9b9b07db..128cb633 100644
+--- a/src/UI/Canvas/OGLCanvas.h
++++ b/src/UI/Canvas/OGLCanvas.h
+@@ -8,7 +8,7 @@
+ 
+ class wxWindow;
+ #ifdef USE_SFML_RENDERWINDOW
+-class OGLCanvas : public wxControl, public sf::RenderWindow
++class OGLCanvas : public wxGLCanvas, public sf::RenderWindow
+ {
+ #else
+ class OGLCanvas : public wxGLCanvas
+@@ -38,7 +38,11 @@ public:
+ 	void			setup2D();
+ 
+ #ifdef USE_SFML_RENDERWINDOW
+-	void	SwapBuffers() { display(); }
++	bool SwapBuffers() override
++	{
++		display();
++		return true;
++	}
+ #endif
+ 
+ 	void	onPaint(wxPaintEvent& e);

diff --git a/games-util/slade/metadata.xml b/games-util/slade/metadata.xml
new file mode 100644
index 00000000000..9312c313b00
--- /dev/null
+++ b/games-util/slade/metadata.xml
@@ -0,0 +1,14 @@
+<?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>
+	<upstream>
+		<remote-id type="github">sirjuddington/SLADE</remote-id>
+	</upstream>
+	<use>
+		<flag name="fluidsynth">Enable MIDI software synthesis using <pkg>media-sound/fluidsynth</pkg></flag>
+	</use>
+</pkgmetadata>

diff --git a/games-util/slade/slade-3.1.12a.ebuild b/games-util/slade/slade-3.1.12a.ebuild
new file mode 100644
index 00000000000..b204c6c7870
--- /dev/null
+++ b/games-util/slade/slade-3.1.12a.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+WX_GTK_VER="3.0-gtk3"
+inherit cmake wxwidgets
+
+DESCRIPTION="Modern editor for Doom-engine based games and source ports"
+HOMEPAGE="https://slade.mancubus.net/"
+SRC_URI="https://github.com/sirjuddington/${PN^^}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="GPL-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="fluidsynth timidity webkit"
+
+DEPEND="
+	app-arch/bzip2:=
+	dev-lang/lua:0
+	>=media-libs/dumb-2:=
+	media-libs/freeimage[jpeg,png,tiff]
+	media-libs/glew:0=
+	media-libs/libsfml:=
+	net-misc/curl
+	sys-libs/zlib
+	x11-libs/wxGTK:${WX_GTK_VER}[webkit?]
+	fluidsynth? ( media-sound/fluidsynth:= )
+"
+
+RDEPEND="
+	${DEPEND}
+	timidity? ( media-sound/timidity++ )
+"
+
+BDEPEND="
+	app-arch/p7zip
+	virtual/pkgconfig
+"
+
+S="${WORKDIR}/${PN^^}-${PV}"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-bundled-libs.patch
+	"${FILESDIR}"/${P}-sfml-gtk3.patch
+	"${FILESDIR}"/${P}-wxGLCanvas.patch
+	"${FILESDIR}"/${P}-freetype-deps.patch
+	"${FILESDIR}"/${P}-fluidsynth-driver.patch
+)
+
+src_prepare() {
+	cmake_src_prepare
+
+	# Delete bundled libraries just in case.
+	rm -r src/External/{dumb,glew,lua}/ || die
+
+}
+
+src_configure() {
+	local mycmakeargs=(
+		-DNO_FLUIDSYNTH=$(usex fluidsynth OFF ON)
+		-DNO_WEBVIEW=$(usex webkit OFF ON)
+		-DUSE_SFML_RENDERWINDOW=ON
+		-DWX_GTK3=ON
+	)
+	setup-wxwidgets
+	cmake_src_configure
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: games-util/slade/, games-util/slade/files/
@ 2021-02-24 20:47 James Le Cuirot
  0 siblings, 0 replies; 5+ messages in thread
From: James Le Cuirot @ 2021-02-24 20:47 UTC (permalink / raw
  To: gentoo-commits

commit:     3ffd5d80b86cd45c8ff06d57ea233262819be3db
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Wed Feb 24 20:29:08 2021 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Wed Feb 24 20:47:17 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3ffd5d80

games-util/slade: Drop old 3.1.12a as it is broken with newer GCC

Package-Manager: Portage-3.0.15, Repoman-3.0.2
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 games-util/slade/Manifest                          |   1 -
 .../slade/files/slade-3.1.12a-bundled-libs.patch   |  80 ---------------
 .../files/slade-3.1.12a-cmake-lua-version.patch    |  11 --
 .../files/slade-3.1.12a-fluidsynth-driver.patch    |  14 ---
 .../slade/files/slade-3.1.12a-freetype-deps.patch  |  74 --------------
 .../slade/files/slade-3.1.12a-sfml-gtk3.patch      |  88 ----------------
 .../slade/files/slade-3.1.12a-wxGLCanvas.patch     | 112 ---------------------
 games-util/slade/slade-3.1.12a-r100.ebuild         |  72 -------------
 games-util/slade/slade-3.1.12a.ebuild              |  67 ------------
 9 files changed, 519 deletions(-)

diff --git a/games-util/slade/Manifest b/games-util/slade/Manifest
index ae854cd594a..2ca180f1985 100644
--- a/games-util/slade/Manifest
+++ b/games-util/slade/Manifest
@@ -1,2 +1 @@
-DIST slade-3.1.12a.tar.gz 5883702 BLAKE2B 400cf032bf0b60555b45b450c524d85f145d593d74601461f33fa571360a0c66a1d5933a7d48e8cfad98981bcf446df213240f53da237be6d9a1ce09517c4566 SHA512 ecedec880b8ebed921e152d016a451164efd4de90ae69963be077d1ef39326670254ca8eb03e1045ca7ae5b02f7512dbbe712f83c845cbbd4ed787a90899ad13
 DIST slade-3.2.0_beta2.tar.gz 5999580 BLAKE2B 29cd515e4553fa1d74a43dc982b376b10d95ebbe2da4a25bc39329c15967466142c73ec134ada371b9aa65d8fc8d9f4a1820cece7fe8dca59fec039aaad32331 SHA512 e46d9664348233c7ee7fa8ed748d7e23914bb1bb6dd65d40aff7603b386e032e988e0990d4a435f597ba8a6416c7ec377c8334a66efacd55ebdd994d3fd11073

diff --git a/games-util/slade/files/slade-3.1.12a-bundled-libs.patch b/games-util/slade/files/slade-3.1.12a-bundled-libs.patch
deleted file mode 100644
index 6e8285d8105..00000000000
--- a/games-util/slade/files/slade-3.1.12a-bundled-libs.patch
+++ /dev/null
@@ -1,80 +0,0 @@
-diff -Naur a/src/Application/App.cpp b/src/Application/App.cpp
---- a/src/Application/App.cpp	2020-05-26 00:34:50.000000000 +0100
-+++ b/src/Application/App.cpp	2020-05-31 17:11:08.365000293 +0100
-@@ -34,7 +34,7 @@
- #include "App.h"
- #include "Archive/ArchiveManager.h"
- #include "Dialogs/SetupWizard/SetupWizardDialog.h"
--#include "External/dumb/dumb.h"
-+#include <dumb.h>
- #include "Game/Configuration.h"
- #include "General/ColourConfiguration.h"
- #include "General/Console/Console.h"
-diff -Naur a/src/Audio/ModMusic.cpp b/src/Audio/ModMusic.cpp
---- a/src/Audio/ModMusic.cpp	2020-05-26 00:34:50.000000000 +0100
-+++ b/src/Audio/ModMusic.cpp	2020-05-31 17:11:08.365000293 +0100
-@@ -30,7 +30,7 @@
-  *******************************************************************/
- #include "Main.h"
- #include "ModMusic.h"
--#include "External/dumb/dumb.h"
-+#include <dumb.h>
- 
- 
- /*******************************************************************
-diff -Naur a/src/CMakeLists.txt b/src/CMakeLists.txt
---- a/src/CMakeLists.txt	2020-05-26 00:34:50.000000000 +0100
-+++ b/src/CMakeLists.txt	2020-05-31 17:11:08.365000293 +0100
-@@ -105,6 +105,8 @@
- find_package(GLEW REQUIRED)
- find_package(Freetype REQUIRED)
- find_package(CURL REQUIRED)
-+find_package(Lua REQUIRED)
-+pkg_check_modules(DUMB REQUIRED dumb>=1.0)
- include_directories(
- 	${FREEIMAGE_INCLUDE_DIR}
- 	${SFML_INCLUDE_DIR}
-@@ -112,8 +114,9 @@
- 	${FREETYPE_INCLUDE_DIRS}
- 	${GLEW_INCLUDE_PATH}
- 	${CURL_INCLUDE_DIR}
-+	${LUA_INCLUDE_DIR}
-+	${DUMB_INCLUDE_DIRS}
- 	.
--	./External/dumb
- 	./Application
- 	)
- 
-@@ -182,6 +185,8 @@
- 	${FREETYPE_LIBRARIES}
- 	${GLEW_LIBRARY}
- 	${CURL_LIBRARIES}
-+	${LUA_LIBRARIES}
-+	${DUMB_LIBRARIES}
- )
- 
- if (WX_GTK3)
-diff -Naur a/src/External/CMakeLists.txt b/src/External/CMakeLists.txt
---- a/src/External/CMakeLists.txt	2020-05-26 00:34:50.000000000 +0100
-+++ b/src/External/CMakeLists.txt	2020-05-31 17:12:09.614333605 +0100
-@@ -24,8 +24,6 @@
- file(GLOB_RECURSE EXTERNAL_SOURCES
- 	*.cpp
- 	*.cxx
--	dumb/*.c
--	lua/*.c
- 	lzma/C/LzmaDec.c
- 	${SLADE_HEADERS}
- 	)
-diff -Naur a/src/External/sol/sol.hpp b/src/External/sol/sol.hpp
---- a/src/External/sol/sol.hpp	2020-05-26 00:34:50.000000000 +0100
-+++ b/src/External/sol/sol.hpp	2020-05-31 17:11:08.367000336 +0100
-@@ -798,7 +798,7 @@
- #include <lualib.h>
- #include <lauxlib.h>
- #else
--#include "External/lua/lua.hpp"
-+#include <lua.hpp>
- #endif // C++ Mangling for Lua
- 
- #if defined(_WIN32) || defined(_MSC_VER)

diff --git a/games-util/slade/files/slade-3.1.12a-cmake-lua-version.patch b/games-util/slade/files/slade-3.1.12a-cmake-lua-version.patch
deleted file mode 100644
index ba7fba329c9..00000000000
--- a/games-util/slade/files/slade-3.1.12a-cmake-lua-version.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -104,7 +104,7 @@
- find_package(OpenGL REQUIRED)
- find_package(GLEW REQUIRED)
- find_package(CURL REQUIRED)
--find_package(Lua REQUIRED)
-+find_package(Lua ${LUA_VERSION} EXACT REQUIRED)
- pkg_check_modules(DUMB REQUIRED dumb>=1.0)
- include_directories(
- 	${FREEIMAGE_INCLUDE_DIR}

diff --git a/games-util/slade/files/slade-3.1.12a-fluidsynth-driver.patch b/games-util/slade/files/slade-3.1.12a-fluidsynth-driver.patch
deleted file mode 100644
index c0ef70d6dfc..00000000000
--- a/games-util/slade/files/slade-3.1.12a-fluidsynth-driver.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://github.com/sirjuddington/SLADE/issues/1147
-
-diff -Naur a/src/Audio/MIDIPlayer.cpp b/src/Audio/MIDIPlayer.cpp
---- a/src/Audio/MIDIPlayer.cpp	2020-05-28 00:08:34.000000000 +0100
-+++ b/src/Audio/MIDIPlayer.cpp	2020-05-31 21:40:03.480211253 +0100
-@@ -74,8 +74,6 @@
- #ifndef NO_FLUIDSYNTH
- 	// Set fluidsynth driver to alsa in linux (no idea why it defaults to jack)
- #if !defined __WXMSW__ && !defined __WXOSX__
--	if (fs_driver == "")
--		fs_driver = "alsa";
- #endif // !defined __WXMSW__ && !defined __WXOSX__
- 
- 	// Init soundfont path

diff --git a/games-util/slade/files/slade-3.1.12a-freetype-deps.patch b/games-util/slade/files/slade-3.1.12a-freetype-deps.patch
deleted file mode 100644
index 33fdbfe8521..00000000000
--- a/games-util/slade/files/slade-3.1.12a-freetype-deps.patch
+++ /dev/null
@@ -1,74 +0,0 @@
-From 115ae712d576deafaa95dc5227a7f83dce92a9cb Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Sun, 31 May 2020 21:59:06 +0100
-Subject: [PATCH 1/2] Drop unused FreeType dependency
-
-It may be used by FTGL but it's not directly used by this
-project. pkg-config should handle this for static builds.
----
- src/CMakeLists.txt | 3 ---
- 1 file changed, 3 deletions(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index f54b126f..8dab39fc 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -103,7 +103,6 @@ find_package(SFML COMPONENTS ${SFML_FIND_COMPONENTS} REQUIRED)
- find_package(FTGL REQUIRED)
- find_package(OpenGL REQUIRED)
- find_package(GLEW REQUIRED)
--find_package(Freetype REQUIRED)
- find_package(CURL REQUIRED)
- find_package(Lua REQUIRED)
- find_package(fmt CONFIG REQUIRED)
-@@ -111,7 +110,6 @@ include_directories(
- 	${FREEIMAGE_INCLUDE_DIR}
- 	${SFML_INCLUDE_DIR}
- 	${FTGL_INCLUDE_DIR}
--	${FREETYPE_INCLUDE_DIRS}
- 	${GLEW_INCLUDE_PATH}
- 	${CURL_INCLUDE_DIR}
- 	${LUA_INCLUDE_DIR}
-@@ -184,7 +182,6 @@ target_link_libraries(slade
- 	${SFML_LIBRARY}
- 	${FTGL_LIBRARIES}
- 	${OPENGL_LIBRARIES}
--	${FREETYPE_LIBRARIES}
- 	${GLEW_LIBRARY}
- 	${CURL_LIBRARIES}
- 	${LUA_LIBRARIES}
--- 
-2.26.2
-
-From 9116972a75b58ef32e229842f80cdc96fab04f1e Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Sun, 31 May 2020 22:00:53 +0100
-Subject: [PATCH 2/2] Only require FTGL when USE_SFML_RENDERWINDOW is disabled
-
----
- src/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 8dab39fc..b0d4776d 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -72,6 +72,7 @@ set(SFML_FIND_COMPONENTS system audio window graphics network)
- ADD_DEFINITIONS(-DUSE_SFML_RENDERWINDOW)
- else (USE_SFML_RENDERWINDOW)
- set(SFML_FIND_COMPONENTS system audio window network)
-+find_package(FTGL REQUIRED)
- endif(USE_SFML_RENDERWINDOW)
- 
- # Fluidsynth
-@@ -100,7 +101,6 @@ endif()
- 
- find_package(FreeImage REQUIRED)
- find_package(SFML COMPONENTS ${SFML_FIND_COMPONENTS} REQUIRED)
--find_package(FTGL REQUIRED)
- find_package(OpenGL REQUIRED)
- find_package(GLEW REQUIRED)
- find_package(CURL REQUIRED)
--- 
-2.26.2
-

diff --git a/games-util/slade/files/slade-3.1.12a-sfml-gtk3.patch b/games-util/slade/files/slade-3.1.12a-sfml-gtk3.patch
deleted file mode 100644
index 745a41d64b8..00000000000
--- a/games-util/slade/files/slade-3.1.12a-sfml-gtk3.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-From 7e2aa2666701cc0db32d8b3185c3cd07ae733ab0 Mon Sep 17 00:00:00 2001
-From: Simon Judd <sirjuddington@gmail.com>
-Date: Fri, 6 Dec 2019 16:36:52 +1030
-Subject: [PATCH] Fix SFML RenderWindow embedding on GTK3
-
-It actually seems to work ok now so might be able to make it the default there
-
-It'd be nice if it worked on macos as well, then I'd be able to remove the wxGLCanvas/FTGL stuff completely...
----
-
-diff --git a/src/UI/Canvas/OGLCanvas.cpp b/src/UI/Canvas/OGLCanvas.cpp
-index 92f86b29..4bba9f98 100644
---- a/src/UI/Canvas/OGLCanvas.cpp
-+++ b/src/UI/Canvas/OGLCanvas.cpp
-@@ -44,6 +44,8 @@
- #endif
- #endif
- 
-+EXTERN_CVAR(Int, gl_depth_buffer_size)
-+
- 
- /*******************************************************************
-  * OGLCANVAS CLASS FUNCTIONS
-@@ -130,29 +132,29 @@ bool OGLCanvas::setContext()
- #endif
- }
- 
--void OGLCanvas::createSFML()
-+bool OGLCanvas::createSFML()
- {
- #ifdef USE_SFML_RENDERWINDOW
- 	// Code taken from SFML wxWidgets integration example
- 	sf::WindowHandle handle;
- #ifdef __WXGTK__
--	// GTK implementation requires to go deeper to find the
--	// low-level X11 identifier of the widget
--	gtk_widget_realize(m_wxwindow);
--	gtk_widget_set_double_buffered(m_wxwindow, false);
--	GdkWindow* Win = gtk_widget_get_window(m_wxwindow);
--	XFlush(GDK_WINDOW_XDISPLAY(Win));
--	//sf::RenderWindow::Create(GDK_WINDOW_XWINDOW(Win));
--	handle = GDK_WINDOW_XWINDOW(Win);
-+	auto widget = GetHandle();
-+	if (!widget)
-+		return false;
-+	auto window = gtk_widget_get_window(widget);
-+	if (!window)
-+		return false;
-+	handle = gdk_x11_window_get_xid(window);
- #else
- 	handle = GetHandle();
- #endif
- 	// Context settings
- 	sf::ContextSettings settings;
--	settings.depthBits = 24;
--	settings.stencilBits = 8;
-+	settings.depthBits = gl_depth_buffer_size;
-+	settings.stencilBits = sf::ContextSettings::Default;
- 	sf::RenderWindow::create(handle, settings);
- #endif
-+	return true;
- }
- 
- /* OGLCanvas::init
-@@ -308,7 +310,9 @@ void OGLCanvas::onPaint(wxPaintEvent& e)
- 
- 	if (recreate)
- 	{
--		createSFML();
-+		if (!createSFML())
-+			return;
-+
- 		recreate = false;
- 	}
- 
-diff --git a/src/UI/Canvas/OGLCanvas.h b/src/UI/Canvas/OGLCanvas.h
-index a1defbee..9b9b07db 100644
---- a/src/UI/Canvas/OGLCanvas.h
-+++ b/src/UI/Canvas/OGLCanvas.h
-@@ -28,7 +28,7 @@ public:
- 	Palette*	getPalette() { return &palette; }
- 	void			setPalette(Palette* pal) { palette.copyPalette(pal); }
- 	bool			setContext();
--	void			createSFML();
-+	bool			createSFML();
- 	void			init();
- 	virtual void	draw() = 0;
- 	virtual void	update(long frametime) {}

diff --git a/games-util/slade/files/slade-3.1.12a-wxGLCanvas.patch b/games-util/slade/files/slade-3.1.12a-wxGLCanvas.patch
deleted file mode 100644
index 64698cc4591..00000000000
--- a/games-util/slade/files/slade-3.1.12a-wxGLCanvas.patch
+++ /dev/null
@@ -1,112 +0,0 @@
-From a934d04b8c49c250e9be27581129c75bc058814a Mon Sep 17 00:00:00 2001
-From: Simon Judd <sirjuddington@gmail.com>
-Date: Mon, 9 Dec 2019 12:26:17 +1030
-Subject: [PATCH] Always use wxGLCanvas as a base for OGLCanvas
-
-Even if using SFML - this fixes the depth buffer not being created on linux
----
-
-diff --git a/src/OpenGL/OpenGL.cpp b/src/OpenGL/OpenGL.cpp
-index 7e506550..0a8d4236 100644
---- a/src/OpenGL/OpenGL.cpp
-+++ b/src/OpenGL/OpenGL.cpp
-@@ -38,14 +38,14 @@ CVAR(Bool, gl_tex_enable_np2, true, CVAR_SAVE)
- CVAR(Bool, gl_point_sprite, true, CVAR_SAVE)
- CVAR(Bool, gl_tweak_accuracy, true, CVAR_SAVE)
- CVAR(Bool, gl_vbo, true, CVAR_SAVE)
--CVAR(Int, gl_depth_buffer_size, 16, CVAR_SAVE)
-+CVAR(Int, gl_depth_buffer_size, 24, CVAR_SAVE)
- 
- namespace OpenGL
- {
- #ifndef USE_SFML_RENDERWINDOW
- 	wxGLContext*	context = NULL;
--	int				wx_gl_attrib[] = { WX_GL_RGBA, WX_GL_DOUBLEBUFFER, WX_GL_DEPTH_SIZE, 16, WX_GL_STENCIL_SIZE, 8, 0 };
- #endif
-+	int				wx_gl_attrib[] = { WX_GL_RGBA, WX_GL_DOUBLEBUFFER, WX_GL_DEPTH_SIZE, 16, WX_GL_STENCIL_SIZE, 8, 0 };
- 	bool			initialised = false;
- 	double			version = 0;
- 	unsigned		max_tex_size = 128;
-@@ -224,7 +224,6 @@ bool OpenGL::accuracyTweak()
- 	return gl_tweak_accuracy;
- }
- 
--#ifndef USE_SFML_RENDERWINDOW
- /* OpenGL::getWxGLAttribs
-  * Returns the GL attributes array for use with wxGLCanvas
-  *******************************************************************/
-@@ -235,7 +234,6 @@ int* OpenGL::getWxGLAttribs()
- 
- 	return wx_gl_attrib;
- }
--#endif
- 
- /* OpenGL::setColour
-  * Sets the colour to [col], and changes the colour blend mode if
-diff --git a/src/OpenGL/OpenGL.h b/src/OpenGL/OpenGL.h
-index 1d5c9b9a..9082687c 100644
---- a/src/OpenGL/OpenGL.h
-+++ b/src/OpenGL/OpenGL.h
-@@ -20,10 +20,8 @@
- #include <GL/glu.h>
- #endif
- 
--#ifndef USE_SFML_RENDERWINDOW
- #include <wx/glcanvas.h>
- #undef None // Why does <X11/X.h> #define this? Idiotic
--#endif
- 
- #define BLEND_NORMAL	0
- #define BLEND_ADDITIVE	1
-@@ -56,9 +54,7 @@ namespace OpenGL
- 	unsigned		maxTextureSize();
- 	bool			isInitialised();
- 	bool			accuracyTweak();
--#ifndef USE_SFML_RENDERWINDOW
- 	int*			getWxGLAttribs();
--#endif
- 	void			setColour(rgba_t col, bool set_blend = true);
- 	void			setColour(uint8_t r, uint8_t g, uint8_t b, uint8_t a = 255, int8_t blend = BLEND_IGNORE);
- 	void			setBlend(int blend);
-diff --git a/src/UI/Canvas/OGLCanvas.cpp b/src/UI/Canvas/OGLCanvas.cpp
-index 4bba9f98..a48d9ac6 100644
---- a/src/UI/Canvas/OGLCanvas.cpp
-+++ b/src/UI/Canvas/OGLCanvas.cpp
-@@ -55,8 +55,9 @@ EXTERN_CVAR(Int, gl_depth_buffer_size)
- /* OGLCanvas::OGLCanvas
-  * OGLCanvas class constructor, SFML implementation
-  *******************************************************************/
--OGLCanvas::OGLCanvas(wxWindow* parent, int id, bool handle_timer, int timer_interval)
--	: wxControl(parent, id, wxDefaultPosition, wxDefaultSize, wxBORDER_NONE|wxWANTS_CHARS), timer(this)
-+OGLCanvas::OGLCanvas(wxWindow* parent, int id, bool handle_timer, int timer_interval) :
-+	wxGLCanvas(parent, id, OpenGL::getWxGLAttribs(), wxDefaultPosition, wxDefaultSize, wxBORDER_NONE | wxWANTS_CHARS),
-+	timer(this)
- {
- 	init_done = false;
- 	recreate = false;
-diff --git a/src/UI/Canvas/OGLCanvas.h b/src/UI/Canvas/OGLCanvas.h
-index 9b9b07db..128cb633 100644
---- a/src/UI/Canvas/OGLCanvas.h
-+++ b/src/UI/Canvas/OGLCanvas.h
-@@ -8,7 +8,7 @@
- 
- class wxWindow;
- #ifdef USE_SFML_RENDERWINDOW
--class OGLCanvas : public wxControl, public sf::RenderWindow
-+class OGLCanvas : public wxGLCanvas, public sf::RenderWindow
- {
- #else
- class OGLCanvas : public wxGLCanvas
-@@ -38,7 +38,11 @@ public:
- 	void			setup2D();
- 
- #ifdef USE_SFML_RENDERWINDOW
--	void	SwapBuffers() { display(); }
-+	bool SwapBuffers() override
-+	{
-+		display();
-+		return true;
-+	}
- #endif
- 
- 	void	onPaint(wxPaintEvent& e);

diff --git a/games-util/slade/slade-3.1.12a-r100.ebuild b/games-util/slade/slade-3.1.12a-r100.ebuild
deleted file mode 100644
index da73f5e0060..00000000000
--- a/games-util/slade/slade-3.1.12a-r100.ebuild
+++ /dev/null
@@ -1,72 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-LUA_COMPAT=( lua5-{1..3} )
-WX_GTK_VER="3.0-gtk3"
-
-inherit cmake lua-single wxwidgets
-
-DESCRIPTION="Modern editor for Doom-engine based games and source ports"
-HOMEPAGE="https://slade.mancubus.net/"
-SRC_URI="https://github.com/sirjuddington/${PN^^}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="GPL-2 MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="fluidsynth timidity webkit"
-
-REQUIRED_USE="${LUA_REQUIRED_USE}"
-
-DEPEND="${LUA_DEPS}
-	app-arch/bzip2:=
-	>=media-libs/dumb-2:=
-	media-libs/freeimage[jpeg,png,tiff]
-	media-libs/glew:0=
-	media-libs/libsfml:=
-	net-misc/curl
-	sys-libs/zlib
-	x11-libs/wxGTK:${WX_GTK_VER}[gstreamer,opengl,webkit?,X]
-	fluidsynth? ( media-sound/fluidsynth:= )
-"
-
-RDEPEND="
-	${DEPEND}
-	timidity? ( media-sound/timidity++ )
-"
-
-BDEPEND="
-	app-arch/p7zip
-	virtual/pkgconfig
-"
-
-S="${WORKDIR}/${PN^^}-${PV}"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-bundled-libs.patch
-	"${FILESDIR}"/${P}-sfml-gtk3.patch
-	"${FILESDIR}"/${P}-wxGLCanvas.patch
-	"${FILESDIR}"/${P}-freetype-deps.patch
-	"${FILESDIR}"/${P}-fluidsynth-driver.patch
-	"${FILESDIR}"/${PN}-3.1.12a-cmake-lua-version.patch
-)
-
-src_prepare() {
-	cmake_src_prepare
-
-	# Delete bundled libraries just in case.
-	rm -r src/External/{dumb,glew,lua}/ || die
-
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DLUA_VERSION=$(lua_get_version)
-		-DNO_FLUIDSYNTH=$(usex fluidsynth OFF ON)
-		-DNO_WEBVIEW=$(usex webkit OFF ON)
-		-DUSE_SFML_RENDERWINDOW=ON
-		-DWX_GTK3=ON
-	)
-	setup-wxwidgets
-	cmake_src_configure
-}

diff --git a/games-util/slade/slade-3.1.12a.ebuild b/games-util/slade/slade-3.1.12a.ebuild
deleted file mode 100644
index 3ddd53ebe75..00000000000
--- a/games-util/slade/slade-3.1.12a.ebuild
+++ /dev/null
@@ -1,67 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-WX_GTK_VER="3.0-gtk3"
-inherit cmake wxwidgets
-
-DESCRIPTION="Modern editor for Doom-engine based games and source ports"
-HOMEPAGE="https://slade.mancubus.net/"
-SRC_URI="https://github.com/sirjuddington/${PN^^}/archive/${PV}.tar.gz -> ${P}.tar.gz"
-LICENSE="GPL-2 MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-IUSE="fluidsynth timidity webkit"
-
-DEPEND="
-	app-arch/bzip2:=
-	dev-lang/lua:0
-	>=media-libs/dumb-2:=
-	media-libs/freeimage[jpeg,png,tiff]
-	media-libs/glew:0=
-	media-libs/libsfml:=
-	net-misc/curl
-	sys-libs/zlib
-	x11-libs/wxGTK:${WX_GTK_VER}[gstreamer,opengl,webkit?,X]
-	fluidsynth? ( media-sound/fluidsynth:= )
-"
-
-RDEPEND="
-	${DEPEND}
-	timidity? ( media-sound/timidity++ )
-"
-
-BDEPEND="
-	app-arch/p7zip
-	virtual/pkgconfig
-"
-
-S="${WORKDIR}/${PN^^}-${PV}"
-
-PATCHES=(
-	"${FILESDIR}"/${P}-bundled-libs.patch
-	"${FILESDIR}"/${P}-sfml-gtk3.patch
-	"${FILESDIR}"/${P}-wxGLCanvas.patch
-	"${FILESDIR}"/${P}-freetype-deps.patch
-	"${FILESDIR}"/${P}-fluidsynth-driver.patch
-)
-
-src_prepare() {
-	cmake_src_prepare
-
-	# Delete bundled libraries just in case.
-	rm -r src/External/{dumb,glew,lua}/ || die
-
-}
-
-src_configure() {
-	local mycmakeargs=(
-		-DNO_FLUIDSYNTH=$(usex fluidsynth OFF ON)
-		-DNO_WEBVIEW=$(usex webkit OFF ON)
-		-DUSE_SFML_RENDERWINDOW=ON
-		-DWX_GTK3=ON
-	)
-	setup-wxwidgets
-	cmake_src_configure
-}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: games-util/slade/, games-util/slade/files/
@ 2022-04-16  8:09 James Le Cuirot
  0 siblings, 0 replies; 5+ messages in thread
From: James Le Cuirot @ 2022-04-16  8:09 UTC (permalink / raw
  To: gentoo-commits

commit:     da2f9eba4f975c62d061491987f6616e24b53ac5
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Sat Apr 16 08:08:33 2022 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Sat Apr 16 08:08:33 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da2f9eba

games-util/slade: Version bump to 3.2.0, EAPI 8

Closes: https://bugs.gentoo.org/838124
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 games-util/slade/Manifest                          |  1 +
 .../slade/files/slade-3.2.0-bundled-libs.patch     | 84 ++++++++++++++++++++++
 games-util/slade/files/slade-3.2.0-wx3.0.patch     | 66 +++++++++++++++++
 games-util/slade/slade-3.2.0.ebuild                | 78 ++++++++++++++++++++
 4 files changed, 229 insertions(+)

diff --git a/games-util/slade/Manifest b/games-util/slade/Manifest
index 2ca180f19853..2349b328e65a 100644
--- a/games-util/slade/Manifest
+++ b/games-util/slade/Manifest
@@ -1 +1,2 @@
+DIST slade-3.2.0.tar.gz 6464839 BLAKE2B 8e13f153c64526784bd5fa3d03520942d9dbc1b0b0d1e4d0650fb91ed63a7f860655f5d580b4c0a04a52aa98f617b1f4448f47cd1e55c1b3f78fc552b8101654 SHA512 916be3b9556e76ca815514bb472335af80a72bfb8ecd0ae4287db2c0d6ad092a8ada1b335762f8589d300b1fd81adbdede3e6c315cfdc1d49b1624294b405b92
 DIST slade-3.2.0_beta2.tar.gz 5999580 BLAKE2B 29cd515e4553fa1d74a43dc982b376b10d95ebbe2da4a25bc39329c15967466142c73ec134ada371b9aa65d8fc8d9f4a1820cece7fe8dca59fec039aaad32331 SHA512 e46d9664348233c7ee7fa8ed748d7e23914bb1bb6dd65d40aff7603b386e032e988e0990d4a435f597ba8a6416c7ec377c8334a66efacd55ebdd994d3fd11073

diff --git a/games-util/slade/files/slade-3.2.0-bundled-libs.patch b/games-util/slade/files/slade-3.2.0-bundled-libs.patch
new file mode 100644
index 000000000000..c4eae37f945f
--- /dev/null
+++ b/games-util/slade/files/slade-3.2.0-bundled-libs.patch
@@ -0,0 +1,84 @@
+From 5ecc80d27276ba978b8c0268aab722fe8f09b394 Mon Sep 17 00:00:00 2001
+From: James Le Cuirot <chewi@gentoo.org>
+Date: Sat, 20 Feb 2021 12:22:24 +0000
+Subject: [PATCH] Unbundle the DUMB library
+
+---
+ src/Application/App.cpp   | 2 +-
+ src/Audio/ModMusic.cpp    | 2 +-
+ src/CMakeLists.txt        | 4 +++-
+ thirdparty/CMakeLists.txt | 1 -
+ 4 files changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/src/Application/App.cpp b/src/Application/App.cpp
+index 936a8212..2960ca1d 100644
+--- a/src/Application/App.cpp
++++ b/src/Application/App.cpp
+@@ -60,7 +60,7 @@
+ #include "UI/WxUtils.h"
+ #include "Utility/StringUtils.h"
+ #include "Utility/Tokenizer.h"
+-#include "thirdparty/dumb/dumb.h"
++#include <dumb.h>
+ #include <filesystem>
+ 
+ using namespace slade;
+diff --git a/src/Audio/ModMusic.cpp b/src/Audio/ModMusic.cpp
+index cc4b60cf..6d54516d 100644
+--- a/src/Audio/ModMusic.cpp
++++ b/src/Audio/ModMusic.cpp
+@@ -32,7 +32,7 @@
+ // -----------------------------------------------------------------------------
+ #include "Main.h"
+ #include "ModMusic.h"
+-#include "thirdparty/dumb/dumb.h"
++#include <dumb.h>
+ 
+ using namespace slade;
+ using namespace audio;
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index fef3d009..5363802c 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -107,6 +107,7 @@ if (NOT NO_LUA)
+ 	find_package(Lua REQUIRED)
+ endif()
+ find_package(MPG123 REQUIRED)
++pkg_check_modules(DUMB REQUIRED dumb>=1.0)
+ include_directories(
+ 	${FREEIMAGE_INCLUDE_DIR}
+ 	${SFML_INCLUDE_DIR}
+@@ -114,9 +115,9 @@ include_directories(
+ 	${FTGL_INCLUDE_DIR}
+ 	${LUA_INCLUDE_DIR}
+ 	${MPG123_INCLUDE_DIR}
++	${DUMB_INCLUDE_DIRS}
+ 	.
+ 	..
+-	../thirdparty/dumb
+ 	../thirdparty/glad/include
+ 	./Application
+ 	)
+@@ -201,6 +202,7 @@ target_link_libraries(slade
+ 	${OPENGL_LIBRARIES}
+ 	${LUA_LIBRARIES}
+ 	${MPG123_LIBRARIES}
++	${DUMB_LIBRARIES}
+ )
+ 
+ if(LINUX)
+diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt
+index f84cfc8a..2622852b 100644
+--- a/thirdparty/CMakeLists.txt
++++ b/thirdparty/CMakeLists.txt
+@@ -10,7 +10,6 @@ set(BZIP2_LIBRARIES ${BZIP2_LIBRARIES} PARENT_SCOPE)
+ set(EXTERNAL_SOURCES
+ )
+ file(GLOB_RECURSE EXTERNAL_SOURCES
+-	dumb/*.c
+ 	lzma/C/LzmaDec.c
+ 	mus2mid/mus2mid.cpp
+ 	zreaders/*.cpp
+-- 
+2.34.1
+

diff --git a/games-util/slade/files/slade-3.2.0-wx3.0.patch b/games-util/slade/files/slade-3.2.0-wx3.0.patch
new file mode 100644
index 000000000000..2e519b45181b
--- /dev/null
+++ b/games-util/slade/files/slade-3.2.0-wx3.0.patch
@@ -0,0 +1,66 @@
+From 45537095187cb5b985713e7558a230651b599589 Mon Sep 17 00:00:00 2001
+From: Simon Judd <sirjuddington@gmail.com>
+Date: Thu, 14 Apr 2022 21:52:16 -0700
+Subject: [PATCH] Keep up wx3.0 compatibility
+
+I'd like to drop it ideally, but for now it'll stay
+
+Fix #1336
+---
+ src/Graphics/Icons.cpp | 15 +++++++++++++++
+ src/UI/SAuiTabArt.cpp  |  5 ++++-
+ 2 files changed, 19 insertions(+), 1 deletion(-)
+
+diff --git a/src/Graphics/Icons.cpp b/src/Graphics/Icons.cpp
+index 61d5475c..67147f7e 100644
+--- a/src/Graphics/Icons.cpp
++++ b/src/Graphics/Icons.cpp
+@@ -373,7 +373,22 @@ wxBitmap loadPNGIcon(const IconDef& icon, int size, Point2i padding)
+ bool icons::loadIcons()
+ {
+ 	// Check for dark mode
++#if wxMAJOR_VERSION >= 3 && wxMINOR_VERSION >= 1
+ 	ui_icons_dark = wxSystemSettings::GetAppearance().IsDark();
++#else
++	auto fg = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT);
++	auto fg_r = fg.Red();
++	auto fg_g = fg.Green();
++	auto fg_b = fg.Blue();
++	auto bg = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW);
++	auto bg_r = bg.Red();
++	auto bg_g = bg.Green();
++	auto bg_b = bg.Blue();
++	wxColour::MakeGrey(&fg_r, &fg_g, &fg_b);
++	wxColour::MakeGrey(&bg_r, &bg_g, &bg_b);
++	log::info("DARK MODE CHECK: FG {} BG {}", fg_r, bg_r);
++	ui_icons_dark = fg_r > bg_r;
++#endif
+ 
+ 	// Get slade.pk3
+ 	auto* res_archive = app::archiveManager().programResourceArchive();
+diff --git a/src/UI/SAuiTabArt.cpp b/src/UI/SAuiTabArt.cpp
+index 15aad09e..240de8b9 100644
+--- a/src/UI/SAuiTabArt.cpp
++++ b/src/UI/SAuiTabArt.cpp
+@@ -542,6 +542,7 @@ void SAuiDockArt::DrawCaption(wxDC& dc, wxWindow* window, const wxString& text,
+ 	int caption_offset = 0;
+ 	if (pane.icon.IsOk())
+ 	{
++#if wxMAJOR_VERSION >= 3 && wxMINOR_VERSION >= 1
+ 	    // Ensure the icon fits into the title bar.
+ 	    wxSize iconSize = pane.icon.GetSize();
+ 	    if (iconSize.y > rect.height)
+@@ -554,7 +555,9 @@ void SAuiDockArt::DrawCaption(wxDC& dc, wxWindow* window, const wxString& text,
+ 	    dc.DrawBitmap(pane.icon,
+ 	                  rect.x+xOffset, rect.y+(rect.height-pane.icon.GetHeight())/2,
+ 	                  true);
+-
++#else
++		DrawIcon(dc, rect, pane);
++#endif
+ 		caption_offset += pane.icon.GetWidth() + px3;
+ 	}
+ 
+-- 
+2.34.1
+

diff --git a/games-util/slade/slade-3.2.0.ebuild b/games-util/slade/slade-3.2.0.ebuild
new file mode 100644
index 000000000000..76979d24ed46
--- /dev/null
+++ b/games-util/slade/slade-3.2.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..3} )
+WX_GTK_VER="3.0-gtk3"
+
+inherit cmake lua-single wxwidgets
+
+MY_PV="${PV/beta/b}"
+DESCRIPTION="Modern editor for Doom-engine based games and source ports"
+HOMEPAGE="https://slade.mancubus.net/"
+SRC_URI="https://github.com/sirjuddington/${PN^^}/archive/${MY_PV}.tar.gz -> ${P}.tar.gz"
+LICENSE="GPL-2 MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="fluidsynth timidity webkit"
+REQUIRED_USE="${LUA_REQUIRED_USE}"
+
+DEPEND="
+	${LUA_DEPS}
+	app-arch/bzip2:=
+	dev-libs/libfmt:=
+	>=media-libs/dumb-2:=
+	media-libs/freeimage[jpeg,png,tiff]
+	media-libs/glew:0=
+	media-libs/libsfml:=
+	media-sound/mpg123
+	net-misc/curl
+	sys-libs/zlib
+	x11-libs/wxGTK:${WX_GTK_VER}[opengl,webkit?,X]
+	fluidsynth? ( media-sound/fluidsynth:= )
+"
+
+RDEPEND="
+	${DEPEND}
+	timidity? ( media-sound/timidity++ )
+"
+
+BDEPEND="
+	app-arch/p7zip
+	virtual/pkgconfig
+"
+
+S="${WORKDIR}/${PN^^}-${MY_PV}"
+
+PATCHES=(
+	"${FILESDIR}"/${PN}-3.2.0-bundled-libs.patch
+	"${FILESDIR}"/${PN}-3.2.0_beta2-fluidsynth-driver.patch
+	"${FILESDIR}"/${PN}-3.2.0-wx3.0.patch
+)
+
+src_prepare() {
+	cmake_src_prepare
+
+	# Delete bundled libraries just in case.
+	rm -r thirdparty/dumb/ || die
+
+}
+
+src_configure() {
+	local luav=$(lua_get_version)
+
+	local mycmakeargs=(
+		-DLua_FIND_VERSION_MAJOR=$(ver_cut 1 "${luav}")
+		-DLua_FIND_VERSION_MINOR=$(ver_cut 2 "${luav}")
+		-DLua_FIND_VERSION_COUNT=2
+		-DLua_FIND_VERSION_EXACT=ON
+		-DNO_FLUIDSYNTH=$(usex fluidsynth OFF ON)
+		-DNO_WEBVIEW=$(usex webkit OFF ON)
+		-DUSE_SFML_RENDERWINDOW=ON
+		-DWX_GTK3=ON
+	)
+
+	setup-wxwidgets
+	cmake_src_configure
+}


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: games-util/slade/, games-util/slade/files/
@ 2022-06-28  8:17 James Le Cuirot
  0 siblings, 0 replies; 5+ messages in thread
From: James Le Cuirot @ 2022-06-28  8:17 UTC (permalink / raw
  To: gentoo-commits

commit:     e2c805c2acecbae4a7920d6b9b5b9ca2254f3e23
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 28 08:11:09 2022 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Tue Jun 28 08:14:53 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e2c805c2

games-util/slade: Bump to 3.2.1, drop old 3.2.0

Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 games-util/slade/Manifest                          |  2 +-
 games-util/slade/files/slade-3.2.0-wx3.0.patch     | 66 ----------------------
 .../{slade-3.2.0.ebuild => slade-3.2.1.ebuild}     |  1 -
 3 files changed, 1 insertion(+), 68 deletions(-)

diff --git a/games-util/slade/Manifest b/games-util/slade/Manifest
index 893f5cf476e8..bb06ceb8def6 100644
--- a/games-util/slade/Manifest
+++ b/games-util/slade/Manifest
@@ -1 +1 @@
-DIST slade-3.2.0.tar.gz 6464839 BLAKE2B 8e13f153c64526784bd5fa3d03520942d9dbc1b0b0d1e4d0650fb91ed63a7f860655f5d580b4c0a04a52aa98f617b1f4448f47cd1e55c1b3f78fc552b8101654 SHA512 916be3b9556e76ca815514bb472335af80a72bfb8ecd0ae4287db2c0d6ad092a8ada1b335762f8589d300b1fd81adbdede3e6c315cfdc1d49b1624294b405b92
+DIST slade-3.2.1.tar.gz 6471666 BLAKE2B 17a4f2ec23699a56d4fd970605d7141d3f4593f7ced6fff205c87d9ecddc7b90e6da2991aeea32bd008e24cdfee95b7c16946f78b2701c94e51266afd78863d6 SHA512 b7d5a91c759c5a68af63aa9a8412452a5b2986e70f7189ca92ee99ce4953ef47381be907c8ce1166e479f24679904bf5f0e0b1a5da846fe7873c5b97f4315449

diff --git a/games-util/slade/files/slade-3.2.0-wx3.0.patch b/games-util/slade/files/slade-3.2.0-wx3.0.patch
deleted file mode 100644
index 2e519b45181b..000000000000
--- a/games-util/slade/files/slade-3.2.0-wx3.0.patch
+++ /dev/null
@@ -1,66 +0,0 @@
-From 45537095187cb5b985713e7558a230651b599589 Mon Sep 17 00:00:00 2001
-From: Simon Judd <sirjuddington@gmail.com>
-Date: Thu, 14 Apr 2022 21:52:16 -0700
-Subject: [PATCH] Keep up wx3.0 compatibility
-
-I'd like to drop it ideally, but for now it'll stay
-
-Fix #1336
----
- src/Graphics/Icons.cpp | 15 +++++++++++++++
- src/UI/SAuiTabArt.cpp  |  5 ++++-
- 2 files changed, 19 insertions(+), 1 deletion(-)
-
-diff --git a/src/Graphics/Icons.cpp b/src/Graphics/Icons.cpp
-index 61d5475c..67147f7e 100644
---- a/src/Graphics/Icons.cpp
-+++ b/src/Graphics/Icons.cpp
-@@ -373,7 +373,22 @@ wxBitmap loadPNGIcon(const IconDef& icon, int size, Point2i padding)
- bool icons::loadIcons()
- {
- 	// Check for dark mode
-+#if wxMAJOR_VERSION >= 3 && wxMINOR_VERSION >= 1
- 	ui_icons_dark = wxSystemSettings::GetAppearance().IsDark();
-+#else
-+	auto fg = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOWTEXT);
-+	auto fg_r = fg.Red();
-+	auto fg_g = fg.Green();
-+	auto fg_b = fg.Blue();
-+	auto bg = wxSystemSettings::GetColour(wxSYS_COLOUR_WINDOW);
-+	auto bg_r = bg.Red();
-+	auto bg_g = bg.Green();
-+	auto bg_b = bg.Blue();
-+	wxColour::MakeGrey(&fg_r, &fg_g, &fg_b);
-+	wxColour::MakeGrey(&bg_r, &bg_g, &bg_b);
-+	log::info("DARK MODE CHECK: FG {} BG {}", fg_r, bg_r);
-+	ui_icons_dark = fg_r > bg_r;
-+#endif
- 
- 	// Get slade.pk3
- 	auto* res_archive = app::archiveManager().programResourceArchive();
-diff --git a/src/UI/SAuiTabArt.cpp b/src/UI/SAuiTabArt.cpp
-index 15aad09e..240de8b9 100644
---- a/src/UI/SAuiTabArt.cpp
-+++ b/src/UI/SAuiTabArt.cpp
-@@ -542,6 +542,7 @@ void SAuiDockArt::DrawCaption(wxDC& dc, wxWindow* window, const wxString& text,
- 	int caption_offset = 0;
- 	if (pane.icon.IsOk())
- 	{
-+#if wxMAJOR_VERSION >= 3 && wxMINOR_VERSION >= 1
- 	    // Ensure the icon fits into the title bar.
- 	    wxSize iconSize = pane.icon.GetSize();
- 	    if (iconSize.y > rect.height)
-@@ -554,7 +555,9 @@ void SAuiDockArt::DrawCaption(wxDC& dc, wxWindow* window, const wxString& text,
- 	    dc.DrawBitmap(pane.icon,
- 	                  rect.x+xOffset, rect.y+(rect.height-pane.icon.GetHeight())/2,
- 	                  true);
--
-+#else
-+		DrawIcon(dc, rect, pane);
-+#endif
- 		caption_offset += pane.icon.GetWidth() + px3;
- 	}
- 
--- 
-2.34.1
-

diff --git a/games-util/slade/slade-3.2.0.ebuild b/games-util/slade/slade-3.2.1.ebuild
similarity index 97%
rename from games-util/slade/slade-3.2.0.ebuild
rename to games-util/slade/slade-3.2.1.ebuild
index 76979d24ed46..e68c8e1e1a4e 100644
--- a/games-util/slade/slade-3.2.0.ebuild
+++ b/games-util/slade/slade-3.2.1.ebuild
@@ -48,7 +48,6 @@ S="${WORKDIR}/${PN^^}-${MY_PV}"
 PATCHES=(
 	"${FILESDIR}"/${PN}-3.2.0-bundled-libs.patch
 	"${FILESDIR}"/${PN}-3.2.0_beta2-fluidsynth-driver.patch
-	"${FILESDIR}"/${PN}-3.2.0-wx3.0.patch
 )
 
 src_prepare() {


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: games-util/slade/, games-util/slade/files/
@ 2022-08-16 12:18 James Le Cuirot
  0 siblings, 0 replies; 5+ messages in thread
From: James Le Cuirot @ 2022-08-16 12:18 UTC (permalink / raw
  To: gentoo-commits

commit:     1a1fe067379a48c4b329c99db390f75f154a788c
Author:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 16 12:18:08 2022 +0000
Commit:     James Le Cuirot <chewi <AT> gentoo <DOT> org>
CommitDate: Tue Aug 16 12:18:08 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1a1fe067

games-util/slade: Unbundle fmt library, fixing broken SONAME

Closes: https://bugs.gentoo.org/859322
Signed-off-by: James Le Cuirot <chewi <AT> gentoo.org>

 .../slade/files/slade-3.2.0-bundled-libs.patch     | 176 ++++++++++++++++-----
 .../{slade-3.2.1.ebuild => slade-3.2.1-r1.ebuild}  |   5 +-
 2 files changed, 141 insertions(+), 40 deletions(-)

diff --git a/games-util/slade/files/slade-3.2.0-bundled-libs.patch b/games-util/slade/files/slade-3.2.0-bundled-libs.patch
index c4eae37f945f..c543f09e3fae 100644
--- a/games-util/slade/files/slade-3.2.0-bundled-libs.patch
+++ b/games-util/slade/files/slade-3.2.0-bundled-libs.patch
@@ -1,17 +1,7 @@
-From 5ecc80d27276ba978b8c0268aab722fe8f09b394 Mon Sep 17 00:00:00 2001
-From: James Le Cuirot <chewi@gentoo.org>
-Date: Sat, 20 Feb 2021 12:22:24 +0000
-Subject: [PATCH] Unbundle the DUMB library
-
----
- src/Application/App.cpp   | 2 +-
- src/Audio/ModMusic.cpp    | 2 +-
- src/CMakeLists.txt        | 4 +++-
- thirdparty/CMakeLists.txt | 1 -
- 4 files changed, 5 insertions(+), 4 deletions(-)
+https://github.com/sirjuddington/SLADE/pull/1413
 
 diff --git a/src/Application/App.cpp b/src/Application/App.cpp
-index 936a8212..2960ca1d 100644
+index dddaf875..ede8d73c 100644
 --- a/src/Application/App.cpp
 +++ b/src/Application/App.cpp
 @@ -60,7 +60,7 @@
@@ -21,7 +11,7 @@ index 936a8212..2960ca1d 100644
 -#include "thirdparty/dumb/dumb.h"
 +#include <dumb.h>
  #include <filesystem>
- 
+
  using namespace slade;
 diff --git a/src/Audio/ModMusic.cpp b/src/Audio/ModMusic.cpp
 index cc4b60cf..6d54516d 100644
@@ -33,45 +23,126 @@ index cc4b60cf..6d54516d 100644
  #include "ModMusic.h"
 -#include "thirdparty/dumb/dumb.h"
 +#include <dumb.h>
- 
+
  using namespace slade;
  using namespace audio;
 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index fef3d009..5363802c 100644
+index fef3d009..00dbb018 100644
 --- a/src/CMakeLists.txt
 +++ b/src/CMakeLists.txt
-@@ -107,6 +107,7 @@ if (NOT NO_LUA)
- 	find_package(Lua REQUIRED)
- endif()
- find_package(MPG123 REQUIRED)
-+pkg_check_modules(DUMB REQUIRED dumb>=1.0)
- include_directories(
- 	${FREEIMAGE_INCLUDE_DIR}
- 	${SFML_INCLUDE_DIR}
-@@ -114,9 +115,9 @@ include_directories(
- 	${FTGL_INCLUDE_DIR}
- 	${LUA_INCLUDE_DIR}
+@@ -116,7 +116,6 @@ include_directories(
  	${MPG123_INCLUDE_DIR}
-+	${DUMB_INCLUDE_DIRS}
  	.
  	..
 -	../thirdparty/dumb
  	../thirdparty/glad/include
  	./Application
  	)
-@@ -201,6 +202,7 @@ target_link_libraries(slade
- 	${OPENGL_LIBRARIES}
- 	${LUA_LIBRARIES}
- 	${MPG123_LIBRARIES}
-+	${DUMB_LIBRARIES}
- )
- 
- if(LINUX)
+@@ -235,7 +234,7 @@ else(APPLE)
+ 		install(FILES "${SLADE_OUTPUT_DIR}/slade.pk3"
+ 			DESTINATION share/slade3
+ 			)
+-
++
+ 		install(FILES "${PROJECT_SOURCE_DIR}/dist/res/logo_icon.png"
+ 			DESTINATION share/icons/
+ 			RENAME net.mancubus.SLADE.png
+diff --git a/src/General/CVar.cpp b/src/General/CVar.cpp
+index 460a7852..5e171446 100644
+--- a/src/General/CVar.cpp
++++ b/src/General/CVar.cpp
+@@ -32,7 +32,7 @@
+ // -----------------------------------------------------------------------------
+ #include "Main.h"
+ #include "Utility/StringUtils.h"
+-#include "thirdparty/fmt/include/fmt/format.h"
++#include <fmt/format.h>
+
+ using namespace slade;
+
+diff --git a/src/General/Log.cpp b/src/General/Log.cpp
+index 9ad0718f..8d39f644 100644
+--- a/src/General/Log.cpp
++++ b/src/General/Log.cpp
+@@ -31,8 +31,8 @@
+ // -----------------------------------------------------------------------------
+ #include "Main.h"
+ #include "App.h"
+-#include "thirdparty/fmt/include/fmt/chrono.h"
+-#include "thirdparty/fmt/include/fmt/format.h"
++#include <fmt/chrono.h>
++#include <fmt/format.h>
+ #include <fstream>
+
+ using namespace slade;
+diff --git a/src/TextEditor/TextStyle.cpp b/src/TextEditor/TextStyle.cpp
+index 09f4e405..ad51ec0a 100644
+--- a/src/TextEditor/TextStyle.cpp
++++ b/src/TextEditor/TextStyle.cpp
+@@ -43,7 +43,7 @@
+ #include "Utility/Parser.h"
+ #include "Utility/StringUtils.h"
+ #include "Utility/Tokenizer.h"
+-#include "thirdparty/fmt/include/fmt/format.h"
++#include <fmt/format.h>
+
+ using namespace slade;
+
+diff --git a/src/UI/Browser/BrowserItem.cpp b/src/UI/Browser/BrowserItem.cpp
+index 89c0f39c..3f056f71 100644
+--- a/src/UI/Browser/BrowserItem.cpp
++++ b/src/UI/Browser/BrowserItem.cpp
+@@ -126,7 +126,7 @@ void BrowserItem::draw(
+ 		// Create text box if needed
+ 		if (!text_box_)
+ 			text_box_ = std::make_unique<TextBox>(
+-				fmt::format("{}\n{}", index_, name_.c_str()), font, ui::scalePx(144), ui::scalePx(16));
++				fmt::format("{}\n{}", index_, name_.mb_str()), font, ui::scalePx(144), ui::scalePx(16));
+
+ 		int top = y;
+ 		top += ((size - text_box_->height()) * 0.5);
+diff --git a/src/UI/SToolBar/SToolBar.cpp b/src/UI/SToolBar/SToolBar.cpp
+index f38710ad..c002bf97 100644
+--- a/src/UI/SToolBar/SToolBar.cpp
++++ b/src/UI/SToolBar/SToolBar.cpp
+@@ -219,7 +219,7 @@ void SToolBarGroup::hide(bool hide)
+
+ 	// Update 'hidden toolbars' cvar
+ 	string tb_hidden = toolbars_hidden;
+-	auto   name      = fmt::format("[{}]", name_.c_str());
++	auto   name      = fmt::format("[{}]", name_.mb_str());
+ 	if (hide)
+ 		tb_hidden += name;
+ 	else
+diff --git a/src/common.h b/src/common.h
+index 8c3c4b3b..d66cbc04 100644
+--- a/src/common.h
++++ b/src/common.h
+@@ -129,7 +129,7 @@
+ #endif
+
+ // fmt
+-#include "thirdparty/fmt/include/fmt/core.h"
++#include <fmt/core.h>
+
+ // Sigslot
+ #include "thirdparty/sigslot/signal.hpp"
 diff --git a/thirdparty/CMakeLists.txt b/thirdparty/CMakeLists.txt
-index f84cfc8a..2622852b 100644
+index f84cfc8a..6cb9e0af 100644
 --- a/thirdparty/CMakeLists.txt
 +++ b/thirdparty/CMakeLists.txt
-@@ -10,7 +10,6 @@ set(BZIP2_LIBRARIES ${BZIP2_LIBRARIES} PARENT_SCOPE)
+@@ -6,20 +6,33 @@ find_package(BZip2 REQUIRED)
+ set(ZLIB_LIBRARY ${ZLIB_LIBRARY} PARENT_SCOPE)
+ set(BZIP2_LIBRARIES ${BZIP2_LIBRARIES} PARENT_SCOPE)
+
++option(USE_SYSTEM_DUMB "Use system DUMB library" OFF)
++if(USE_SYSTEM_DUMB)
++	pkg_check_modules(DUMB REQUIRED IMPORTED_TARGET dumb>=1.0)
++else()
++	file(GLOB_RECURSE DUMB_SOURCES dumb/*.c)
++endif()
++
+ # Roll the rest up into a big ball and compile it by itself
  set(EXTERNAL_SOURCES
  )
  file(GLOB_RECURSE EXTERNAL_SOURCES
@@ -79,6 +150,33 @@ index f84cfc8a..2622852b 100644
  	lzma/C/LzmaDec.c
  	mus2mid/mus2mid.cpp
  	zreaders/*.cpp
--- 
-2.34.1
+ 	glad/src/*.c
++	${DUMB_SOURCES}
+ 	${SLADE_HEADERS}
+ 	)
+
+ # Add fmt
+-add_subdirectory(fmt)
++option(USE_SYSTEM_FMT "Use system fmt library" OFF)
++if(USE_SYSTEM_FMT)
++	find_package(fmt REQUIRED)
++else()
++	add_subdirectory(fmt)
++	target_include_directories(fmt INTERFACE ${CMAKE_CURRENT_LIST_DIR}/fmt/include)
++endif()
+
+ # Add lunasvg
+ add_library(lunasvg STATIC)
+@@ -29,5 +42,11 @@ add_subdirectory(lunasvg/3rdparty/software)
+ add_subdirectory(lunasvg/3rdparty/plutovg)
 
+ add_library(external STATIC ${EXTERNAL_SOURCES})
+-target_link_libraries(external ${ZLIB_LIBRARY} lunasvg fmt ${CMAKE_DL_LIBS})
++target_link_libraries(external ${ZLIB_LIBRARY} lunasvg fmt::fmt ${CMAKE_DL_LIBS})
+ set(EXTERNAL_LIBRARIES external PARENT_SCOPE)
++
++if(USE_SYSTEM_DUMB)
++	target_link_libraries(external PkgConfig::DUMB)
++else()
++	target_include_directories(external PUBLIC ${CMAKE_CURRENT_LIST_DIR}/dumb)
++endif()

diff --git a/games-util/slade/slade-3.2.1.ebuild b/games-util/slade/slade-3.2.1-r1.ebuild
similarity index 93%
rename from games-util/slade/slade-3.2.1.ebuild
rename to games-util/slade/slade-3.2.1-r1.ebuild
index e68c8e1e1a4e..285ef98db6f9 100644
--- a/games-util/slade/slade-3.2.1.ebuild
+++ b/games-util/slade/slade-3.2.1-r1.ebuild
@@ -54,7 +54,7 @@ src_prepare() {
 	cmake_src_prepare
 
 	# Delete bundled libraries just in case.
-	rm -r thirdparty/dumb/ || die
+	rm -r thirdparty/dumb/ thirdparty/fmt/ || die
 
 }
 
@@ -66,9 +66,12 @@ src_configure() {
 		-DLua_FIND_VERSION_MINOR=$(ver_cut 2 "${luav}")
 		-DLua_FIND_VERSION_COUNT=2
 		-DLua_FIND_VERSION_EXACT=ON
+		-DNO_COTIRE=ON
 		-DNO_FLUIDSYNTH=$(usex fluidsynth OFF ON)
 		-DNO_WEBVIEW=$(usex webkit OFF ON)
 		-DUSE_SFML_RENDERWINDOW=ON
+		-DUSE_SYSTEM_DUMB=ON
+		-DUSE_SYSTEM_FMT=ON
 		-DWX_GTK3=ON
 	)
 


^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-08-16 12:18 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-04-16  8:09 [gentoo-commits] repo/gentoo:master commit in: games-util/slade/, games-util/slade/files/ James Le Cuirot
  -- strict thread matches above, loose matches on Subject: below --
2022-08-16 12:18 James Le Cuirot
2022-06-28  8:17 James Le Cuirot
2021-02-24 20:47 James Le Cuirot
2020-05-31 21:12 James Le Cuirot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox