commit 6afcedf9d0b7885795def3786913f969d817beb225f1b65cafc17c693734d514 Author: Jan Engelhardt Date: Wed Nov 27 16:03:11 2024 +0000 NOTE: This is untested! - Update to version 3.2.6: * Please see Release Notes upstream at https://github.com/sirjuddington/SLADE/releases - Drop patches fixed upstream: * disable_sse.patch * 0001-build-add-cmake-option-to-skip-Lua-components-1175.patch - Disable patches that needs rebase or dropping: * basepk3.diff * wx.diff * clzma.diff - Rebase 0001-build-allow-deactivating-the-crash-handler-at-build-.patch - Replace wxWidgets-3_0-devel for wxWidgets-devel BuildRequires: Package builds just fine with the newer 3.2 version. - Add pkgconfig(libmpg123) BuildRequires: New dependency. OBS-URL: https://build.opensuse.org/package/show/games:tools/slade?expand=0&rev=44 diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/0001-build-add-cmake-option-to-skip-Lua-components-1175.patch b/0001-build-add-cmake-option-to-skip-Lua-components-1175.patch new file mode 100644 index 0000000..a618942 --- /dev/null +++ b/0001-build-add-cmake-option-to-skip-Lua-components-1175.patch @@ -0,0 +1,231 @@ +From a54f12b4c29e949458949d5bede2f74b1aa8a34a Mon Sep 17 00:00:00 2001 +From: jengelh +Date: Mon, 29 Jun 2020 03:43:01 +0200 +Subject: [PATCH] build: add cmake option to skip Lua components (#1175) + +sol.hpp has a lot of templates which, when building with -g +-fsanitize=address -fsanitize=undefined, incur long compile time and +high memory usage (~8500MB) [applies to Scripting/Export/Archive.cpp +and Scripting/Export/Graphics.cpp]. + +Add a cmake option so I can skip building some parts and focus on +the rest. + +Co-authored-by: Simon Judd +--- + src/Application/App.cpp | 8 ++++++++ + src/CMakeLists.txt | 11 ++++++++++- + src/MainEditor/UI/ArchivePanel.cpp | 10 ++++++++++ + src/MainEditor/UI/MainWindow.cpp | 2 ++ + src/MapEditor/UI/MapEditorWindow.cpp | 6 ++++++ + 5 files changed, 36 insertions(+), 1 deletion(-) + +Index: SLADE-3.1.12/src/Application/App.cpp +=================================================================== +--- SLADE-3.1.12.orig/src/Application/App.cpp ++++ SLADE-3.1.12/src/Application/App.cpp +@@ -450,8 +450,10 @@ bool App::init(vector& args, dou + SAction::setBaseWxId(26000); + SAction::initActions(); + ++#ifdef USE_LUA + // Init lua + Lua::init(); ++#endif + + // Init UI + UI::init(ui_scale); +@@ -515,8 +517,10 @@ bool App::init(vector& args, dou + Log::info("Loading game configurations"); + Game::init(); + ++#ifdef USE_LUA + // Init script manager + ScriptManager::init(); ++#endif + + // Show the main window + MainEditor::windowWx()->Show(true); +@@ -644,8 +648,10 @@ void App::exit(bool save_config) + // Save custom special presets + Game::saveCustomSpecialPresets(); + ++#ifdef USE_LUA + // Save custom scripts + ScriptManager::saveUserScripts(); ++#endif + } + + // Close all open archives +@@ -666,8 +672,10 @@ void App::exit(bool save_config) + files = temp.GetNext(&filename); + } + ++#ifdef USE_LUA + // Close lua + Lua::close(); ++#endif + + // Close DUMB + dumb_exit(); +Index: SLADE-3.1.12/src/CMakeLists.txt +=================================================================== +--- SLADE-3.1.12.orig/src/CMakeLists.txt ++++ SLADE-3.1.12/src/CMakeLists.txt +@@ -105,6 +105,9 @@ find_package(OpenGL REQUIRED) + find_package(GLEW REQUIRED) + find_package(Freetype REQUIRED) + find_package(CURL REQUIRED) ++if (NOT NO_LUA) ++ find_package(Lua REQUIRED) ++endif() + include_directories( + ${FREEIMAGE_INCLUDE_DIR} + ${SFML_INCLUDE_DIR} +@@ -133,6 +136,7 @@ endif () + + set(SLADE_SOURCES + ) ++set(SLADE_SCRIPTING_SOURCES) + # Don't include external libraries here as they should be compiled separately + file(GLOB_RECURSE SLADE_SOURCES + Application/*.cpp +@@ -147,9 +151,14 @@ file(GLOB_RECURSE SLADE_SOURCES + OpenGL/*.cpp + UI/*.cpp + Utility/*.cpp +- Scripting/*.cpp + TextEditor/*.cpp + ) ++if (NOT NO_LUA) ++ file(GLOB_RECURSE SLADE_SCRIPTING_SOURCES Scripting/*.cpp) ++ set(SLADE_SOURCES ${SLADE_SOURCES} ${SLADE_SCRIPTING_SOURCES}) ++ ADD_DEFINITIONS(-DUSE_LUA) ++else () ++endif () + set(SLADE_HEADERS + ) + file(GLOB_RECURSE SLADE_HEADERS *.h *.hpp) +Index: SLADE-3.1.12/src/MainEditor/UI/ArchivePanel.cpp +=================================================================== +--- SLADE-3.1.12.orig/src/MainEditor/UI/ArchivePanel.cpp ++++ SLADE-3.1.12/src/MainEditor/UI/ArchivePanel.cpp +@@ -522,7 +522,9 @@ void ArchivePanel::addMenus() + SAction::fromId("arch_replace_maps")->addToMenu(menu_clean); + menu_archive->AppendSubMenu(menu_clean, "&Maintenance"); + auto menu_scripts = new wxMenu(); ++#ifdef USE_LUA + ScriptManager::populateEditorScriptMenu(menu_scripts, ScriptManager::ScriptType::Archive, "arch_script"); ++#endif + menu_archive->AppendSubMenu(menu_scripts, "&Run Script"); + } + if (!menu_entry) +@@ -546,7 +548,9 @@ void ArchivePanel::addMenus() + menu_entry->AppendSeparator(); + SAction::fromId("arch_entry_bookmark")->addToMenu(menu_entry); + auto menu_scripts = new wxMenu(); ++#ifdef USE_LUA + ScriptManager::populateEditorScriptMenu(menu_scripts, ScriptManager::ScriptType::Entry, "arch_entry_script"); ++#endif + menu_entry->AppendSubMenu(menu_scripts, "&Run Script"); + } + +@@ -3189,9 +3193,11 @@ bool ArchivePanel::handleAction(string i + dlg.ShowModal(); + } + ++#ifdef USE_LUA + // Archive->Scripts->... + else if (id == "arch_script") + ScriptManager::runArchiveScript(archive_, wx_id_offset); ++#endif + + + // ------------------------------------------------------------------------ +@@ -3269,9 +3275,11 @@ bool ArchivePanel::handleAction(string i + else if (id == "arch_entry_openext") + openEntryExternal(); + ++#ifdef USE_LUA + // Entry->Run Script + else if (id == "arch_entry_script") + ScriptManager::runEntryScript(entry_list_->getSelectedEntries(), wx_id_offset, MainEditor::windowWx()); ++#endif + + + // Context menu actions +@@ -3785,6 +3793,7 @@ void ArchivePanel::onEntryListRightClick + #endif + } + ++#ifdef USE_LUA + // Entry scripts + if (!ScriptManager::editorScripts(ScriptManager::ScriptType::Entry).empty()) + { +@@ -3793,6 +3802,7 @@ void ArchivePanel::onEntryListRightClick + context.AppendSeparator(); + context.AppendSubMenu(menu_scripts, "Run &Script"); + } ++#endif + + // Popup the context menu + PopupMenu(&context); +Index: SLADE-3.1.12/src/MainEditor/UI/MainWindow.cpp +=================================================================== +--- SLADE-3.1.12.orig/src/MainEditor/UI/MainWindow.cpp ++++ SLADE-3.1.12/src/MainEditor/UI/MainWindow.cpp +@@ -661,12 +661,14 @@ bool MainWindow::handleAction(string id) + if (id == "main_showstartpage") + openStartPageTab(); + ++#ifdef USE_LUA + // Tools->Run Script + if (id == "main_runscript") + { + ScriptManager::open(); + return true; + } ++#endif + + // Help->About + if (id == "main_about") +Index: SLADE-3.1.12/src/MapEditor/UI/MapEditorWindow.cpp +=================================================================== +--- SLADE-3.1.12.orig/src/MapEditor/UI/MapEditorWindow.cpp ++++ SLADE-3.1.12/src/MapEditor/UI/MapEditorWindow.cpp +@@ -269,7 +269,9 @@ void MapEditorWindow::setupMenu() + // Tools menu + wxMenu* menu_tools = new wxMenu(""); + menu_scripts_ = new wxMenu(); ++#ifdef USE_LUA + ScriptManager::populateEditorScriptMenu(menu_scripts_, ScriptManager::ScriptType::Map, "mapw_script"); ++#endif + menu_tools->AppendSubMenu(menu_scripts_, "Run Script"); + SAction::fromId("mapw_runscript")->addToMenu(menu_tools); + menu->Append(menu_tools, "&Tools"); +@@ -1136,7 +1138,9 @@ void MapEditorWindow::reloadScriptsMenu( + while (menu_scripts_->FindItemByPosition(0)) + menu_scripts_->Delete(menu_scripts_->FindItemByPosition(0)); + ++#ifdef USE_LUA + ScriptManager::populateEditorScriptMenu(menu_scripts_, ScriptManager::ScriptType::Map, "mapw_script"); ++#endif + } + + // ---------------------------------------------------------------------------- +@@ -1436,6 +1440,7 @@ bool MapEditorWindow::handleAction(strin + return true; + } + ++#ifdef USE_LUA + // Tools->Run Script + else if (id == "mapw_script") + { +@@ -1449,6 +1454,7 @@ bool MapEditorWindow::handleAction(strin + ScriptManager::open(); + return true; + } ++#endif + + return false; + } diff --git a/0001-build-allow-deactivating-the-crash-handler-at-build-.patch b/0001-build-allow-deactivating-the-crash-handler-at-build-.patch new file mode 100644 index 0000000..c34cbdd --- /dev/null +++ b/0001-build-allow-deactivating-the-crash-handler-at-build-.patch @@ -0,0 +1,46 @@ +From 519a5a5f87527a344ab04efa0947d5d8e75294e5 Mon Sep 17 00:00:00 2001 +From: Jan Engelhardt +Date: Sun, 28 Jun 2020 12:38:40 +0200 +Subject: [PATCH] build: allow deactivating the crash handler at build time + (#1166) + +SLADE's own crash handler has two problems: + + * it inhibits the generation of a proper crashdump + + * it calls functions that not async-signal safe and/or re-entrant, + such as malloc (by way of backtrace(3)), which can lead to a hang + when the initial crash happened in malloc, + +Fixes: #1166 +--- + COMPILE.md | 1 + + src/Application/SLADEWxApp.cpp | 2 +- + src/CMakeLists.txt | 4 ++++ + 3 files changed, 6 insertions(+), 1 deletion(-) + +Index: SLADE-3.2.6/src/Application/SLADEWxApp.cpp +=================================================================== +--- SLADE-3.2.6.orig/src/Application/SLADEWxApp.cpp ++++ SLADE-3.2.6/src/Application/SLADEWxApp.cpp +@@ -449,7 +449,7 @@ bool SLADEWxApp::OnInit() + #endif + + // Handle exceptions using wxDebug stuff, but only in release mode +-#ifdef NDEBUG ++#if defined(USE_CRASHHANDLER) && defined(NDEBUG) + wxHandleFatalExceptions(true); + #endif + +Index: SLADE-3.2.6/src/CMakeLists.txt +=================================================================== +--- SLADE-3.2.6.orig/src/CMakeLists.txt ++++ SLADE-3.2.6/src/CMakeLists.txt +@@ -41,3 +41,7 @@ if (WIN32 AND MSVC) + else () + include("unix") # Linux or MacOS + endif () ++if (NOT NO_CRASHHANDLER) ++ add_definitions(-DUSE_CRASHHANDLER) ++endif () ++ diff --git a/3.1.13.tar.gz b/3.1.13.tar.gz new file mode 100644 index 0000000..f61cb02 --- /dev/null +++ b/3.1.13.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a9719f8639ae579c9671fda8c8ccbcc1ed55f7c98208fdeb439fb8d52fe340d7 +size 5890835 diff --git a/3.2.6.tar.gz b/3.2.6.tar.gz new file mode 100644 index 0000000..fe419c2 --- /dev/null +++ b/3.2.6.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0412de60517f4301881b048aee271bd45bacc1374b1955284647e9bd6732d2ff +size 7027328 diff --git a/basepk3.diff b/basepk3.diff new file mode 100644 index 0000000..98ce621 --- /dev/null +++ b/basepk3.diff @@ -0,0 +1,30 @@ +From: Jan Engelhardt + +Search for the resource file in /usr/share/slade, and prefer ~/.slade +over anything else. +(DIR_RES is /usr/share/appinfo according to wxWidgets, +which is not used in Linux distros.) +--- + src/Archive/ArchiveManager.cpp | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +Index: SLADE-3.1.11/src/Archive/ArchiveManager.cpp +=================================================================== +--- SLADE-3.1.11.orig/src/Archive/ArchiveManager.cpp ++++ SLADE-3.1.11/src/Archive/ArchiveManager.cpp +@@ -153,14 +153,12 @@ bool ArchiveManager::init() + } + + // Find slade3.pk3 directory +- string dir_slade_pk3 = App::path("slade.pk3", App::Dir::Resources); ++ string dir_slade_pk3 = App::path("slade.pk3", App::Dir::User); + if (!wxFileExists(dir_slade_pk3)) + dir_slade_pk3 = App::path("slade.pk3", App::Dir::Data); + if (!wxFileExists(dir_slade_pk3)) + dir_slade_pk3 = App::path("slade.pk3", App::Dir::Executable); + if (!wxFileExists(dir_slade_pk3)) +- dir_slade_pk3 = App::path("slade.pk3", App::Dir::User); +- if (!wxFileExists(dir_slade_pk3)) + dir_slade_pk3 = "slade.pk3"; + + // Open slade.pk3 diff --git a/clzma.diff b/clzma.diff new file mode 100644 index 0000000..535b786 --- /dev/null +++ b/clzma.diff @@ -0,0 +1,24 @@ +From: Jan Engelhardt +Date: 2020-06-22 21:16:10.343429323 +0200 + +Make use of the clzma library in openSUSE. +--- + src/External/CMakeLists.txt | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +Index: SLADE-3.1.12/src/External/CMakeLists.txt +=================================================================== +--- SLADE-3.1.12.orig/src/External/CMakeLists.txt ++++ SLADE-3.1.12/src/External/CMakeLists.txt +@@ -26,10 +26,9 @@ file(GLOB_RECURSE EXTERNAL_SOURCES + *.cxx + dumb/*.c + lua/*.c +- lzma/C/LzmaDec.c + ${SLADE_HEADERS} + ) + + add_library(external STATIC ${EXTERNAL_SOURCES}) +-target_link_libraries(external ${ZLIB_LIBRARY} ${wxWidgets_LIBRARIES}) ++target_link_libraries(external ${ZLIB_LIBRARY} ${wxWidgets_LIBRARIES} -lclzma) + set(EXTERNAL_LIBRARIES external PARENT_SCOPE) diff --git a/disable_sse.patch b/disable_sse.patch new file mode 100644 index 0000000..2a5b138 --- /dev/null +++ b/disable_sse.patch @@ -0,0 +1,12 @@ +--- SLADE-3.1.13/src/CMakeLists.txt.orig 2021-06-15 14:13:13.473287606 +0200 ++++ SLADE-3.1.13/src/CMakeLists.txt 2021-06-15 14:13:28.233451010 +0200 +@@ -159,9 +159,6 @@ if(APPLE) + set_source_files_properties(${OSX_ICON} PROPERTIES MACOSX_PACKAGE_LOCATION Resources) + endif(APPLE) + +-# enable SSE instructions for dumb library +-set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_USE_SSE -msse") +- + if(USE_SANITIZER) + set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fsanitize=address") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fsanitize=address") diff --git a/slade.changes b/slade.changes new file mode 100644 index 0000000..c78777a --- /dev/null +++ b/slade.changes @@ -0,0 +1,189 @@ +------------------------------------------------------------------- +Wed Nov 27 12:15:46 UTC 2024 - Bjørn Lie + +- Update to version 3.2.6: + * Please see Release Notes upstream at + https://github.com/sirjuddington/SLADE/releases +- Drop patches fixed upstream: + * disable_sse.patch + * 0001-build-add-cmake-option-to-skip-Lua-components-1175.patch +- Disable patches that needs rebase or dropping: + * basepk3.diff + * wx.diff + * clzma.diff +- Rebase 0001-build-allow-deactivating-the-crash-handler-at-build-.patch +- Replace wxWidgets-3_0-devel for wxWidgets-devel BuildRequires: + Package builds just fine with the newer 3.2 version. +- Add pkgconfig(libmpg123) BuildRequires: New dependency. + +------------------------------------------------------------------- +Mon Feb 26 13:25:20 UTC 2024 - Dominique Leuenberger + +- Use %patch -P N instead of deprecated %patchN. + +------------------------------------------------------------------- +Tue Jun 15 12:14:46 UTC 2021 - Guillaume GARDET + +- Refresh patch to fix build on aarch64: + * disable_sse.patch + +------------------------------------------------------------------- +Tue Jun 1 11:00:31 UTC 2021 - Jan Engelhardt + +- Update to release 3.1.13 + * Updated ZDoom, MAPINFO and ACS language definitions + * Added extra UDMF flags + * Fixed an issue with the "optional" keyword in TEXTURES + +------------------------------------------------------------------- +Thu Apr 29 10:58:07 UTC 2021 - Ferdinand Thiessen + +- Update to 3.1.12a + * Provide metainfo +- Install upstream provided metainfo and desktop file + * Drop our versions +- Use cmake_install macro + +------------------------------------------------------------------- +Sun Oct 11 09:18:41 UTC 2020 - Jan Engelhardt + +- Disable Lua bindings as those fail to build +- Add 0001-build-add-cmake-option-to-skip-Lua-components-1175.patch + for Factory. + +------------------------------------------------------------------- +Sun Jun 28 10:44:36 UTC 2020 - Jan Engelhardt + +- Add 0001-build-allow-deactivating-the-crash-handler-at-build-.patch + Deactivate the crash handler, because it hangs. Let the kernel + generate a standard dump instead. + +------------------------------------------------------------------- +Mon Jun 22 20:16:13 UTC 2020 - Jan Engelhardt + +- Add clzma.diff to use system-provided clzma library. + +------------------------------------------------------------------- +Tue May 26 08:26:11 UTC 2020 - Jan Engelhardt + +- Update to release 3.1.12 + * 'Run Archive' and 'Run Map' configurations have been + separated, so they should now make more sense for each + context. + * Fixed an issue where clicking a toolbar and pressing enter + would show/hide the 2nd group in the toolbar (this is what + was causing some people to randomly lose the zoom slider in + the gfx editor, for example). + * Added SRB2 .dta as a valid wad file extension. + * Resource Editor: + * Fixed adjusted offsets not being saved after cropping an + image. + * Fixed wrong files being deleted in some situations when + saving a directory. + * Fixed "Open map in DB2" not working for maps in zip/directory + archives. + * Map Editor: + * Added support for GZDoom slope plane UDMF properties. + * Added basic support for ZScript inheritance for thing types. + +------------------------------------------------------------------- +Wed Apr 29 12:45:36 UTC 2020 - Guillaume GARDET + +- Refresh disable_sse.patch + +------------------------------------------------------------------- +Sat Apr 18 17:06:32 UTC 2020 - Jan Engelhardt + +- Update to release 3.1.11 + * Added a Lua scripting engine + * Updated the start page with a new look and layout + * Improved console panel + * Improved support for high DPI displays + * Added support for vanilla-compatible tall gfx patches + * Added support for SiN archives + * Translations now work on truecolour images + * ZScript parsing +- Remove reproducible.patch (merged), wxChar.patch (no longer + applicable), added wx.diff + +------------------------------------------------------------------- +Tue Jun 26 10:46:19 UTC 2018 - bwiedemann@suse.com + +- Add reproducible.patch to not store extra timestamps in zip + to make build reproducible + +------------------------------------------------------------------- +Tue Jun 12 12:46:57 UTC 2018 - jengelh@inai.de + +- Fix build failure... slade wants zip, not p7zip. +- Wrap %desktop_* into a 42.x/13.x guard. + +------------------------------------------------------------------- +Wed Apr 18 14:26:53 UTC 2018 - guillaume.gardet@opensuse.org + +- Disable SSE with disable_sse.patch on non x86* archs + +------------------------------------------------------------------- +Tue Jun 27 23:26:49 UTC 2017 - luke.nukem.jones@gmail.com + +- Fix broken appdata xml + +------------------------------------------------------------------- +Sun May 7 09:00:30 UTC 2017 - bwiedemann@suse.com + +- use p7zip for deterministic archive file order + and strip-nondeterminism to have fully reproducible builds + +------------------------------------------------------------------- +Tue May 2 13:04:33 UTC 2017 - bwiedemann@suse.com + +- use convert -strip to make build more reproducible + +------------------------------------------------------------------- +Fri Feb 10 01:19:39 UTC 2017 - luke.nukem.jones@gmail.com + +- Update to 3.1.1.5 +- Add appdata.xml +- General + * Added an option to always show acc compiler output, even on + success + * Various updates to game and language configurations +- Resource Editor + * Added a button to clear the entry list filter + * Fixed some issues when importing a palette from a PNG + * Fixed some potential crashes when loading corrupted Doom gfx + entries + * Fixed some issues with converting to doom flat format +- Texture Editor + * Patch and texture operations should now work on the correct + item when the texture or patch list is sorted + * Fixed PNG alpha channel being ignored for CopyAlpha/Overlay + patches +- Map Editor + * Added the option not to build nodes when saving a map (select + "Don't build nodes" as the node builder) + * Fixed a potential crash when building nodes + +------------------------------------------------------------------- +Wed Dec 28 19:57:42 UTC 2016 - jengelh@inai.de + +- Restore basepk3.diff for proper search order + +------------------------------------------------------------------- +Mon Dec 19 05:19:27 UTC 2016 - luke.nukem.jones@gmail.com + +- Update to version 3.1.1.4 +- Remove patch basepk3.diff +- Add patch wxChar.diff + + Corrects an issue with conversion from wxString to wxChar in + column sort + +------------------------------------------------------------------- +Sun Jul 17 01:15:06 UTC 2016 - jengelh@inai.de + +- Add basepk3.diff + +------------------------------------------------------------------- +Tue Oct 20 14:31:10 UTC 2015 - jengelh@inai.de + +- Initial package (version 3.1.0.5) for build.opensuse.org diff --git a/slade.spec b/slade.spec new file mode 100644 index 0000000..6e1f24d --- /dev/null +++ b/slade.spec @@ -0,0 +1,84 @@ +# +# spec file for package slade +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +Name: slade +Version: 3.2.6 +Release: 0 +Summary: An editor for DOOM maps and WAD/PK3 archives +License: GPL-2.0-or-later +Group: Amusements/Games/3D/Shoot +URL: https://github.com/sirjuddington/SLADE +Source: %{url}/archive/refs/tags/%version.tar.gz +Patch1: basepk3.diff +Patch2: wx.diff +Patch3: clzma.diff +Patch4: 0001-build-allow-deactivating-the-crash-handler-at-build-.patch + +BuildRequires: ImageMagick +BuildRequires: cmake >= 3.1 +BuildRequires: freeimage-devel +BuildRequires: gcc-c++ >= 8 +BuildRequires: pkg-config +BuildRequires: strip-nondeterminism +BuildRequires: update-desktop-files +BuildRequires: wxWidgets-devel +BuildRequires: zip +BuildRequires: pkgconfig(clzma) +BuildRequires: pkgconfig(fluidsynth) +BuildRequires: pkgconfig(ftgl) +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(glew) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(libmpg123) +BuildRequires: pkgconfig(sfml-all) +BuildRequires: pkgconfig(x11) +Provides: bundled(dumb) = 0.9.3 + +%description +SLADE is an editor for Doom-engine based games and source +ports. It has the ability to view, modify, and write many different +game-specific formats, and even convert between some of them, or +from/to other generic formats such as PNG. + +%prep +%setup -q -n SLADE-%version +#%%patch -P 1 -P 2 -P 3 -p1 +%patch -P 4 -p1 + +%build +%define _lto_cflags %nil +%cmake -DNO_WEBVIEW=ON -DWX_GTK3=OFF -DNO_CRASHHANDLER=ON \ + -DCMAKE_C_FLAGS_RELWITHDEBINFO:STRING="%optflags" \ + -DCMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING="%optflags" \ + -DNO_LUA:BOOL=TRUE +%cmake_build + +%install +strip-nondeterminism build/slade.pk3 +%cmake_install + +%files +%license LICENSE +%doc README.md +%_bindir/slade +%_datadir/slade3/ +%_datadir/icons/hicolor/scalable/apps/net.mancubus.SLADE.svg +%_datadir/applications/net.mancubus.SLADE.desktop +%_datadir/metainfo/net.mancubus.SLADE.metainfo.xml + +%changelog diff --git a/wx.diff b/wx.diff new file mode 100644 index 0000000..4d0c8fd --- /dev/null +++ b/wx.diff @@ -0,0 +1,41 @@ +From: Jan Engelhardt +Date: 2020-04-18 20:10:34.215071041 +0200 + +external.so references wx functions (including those present in base), but does +not link them => add wx libs to the link. + +[ 12s] /usr/include/wx-3.0/wx/filename.h:139: undefined reference to `wxFileName::Assign(wxString const&, wxPathFormat)' +[ 12s] /usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld: CMakeFiles/external.dir/email/wxEmailMessage.o: in function `wxEmailMessage::DoAddAttachment(wxString const&, wxString&) const': + +Furthermore, external.so references MemChunk:: functions, but does not link +them => change to STATIC because I am too lazy. + +--- + src/CMakeLists.txt | 2 +- + src/External/CMakeLists.txt | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +Index: SLADE-3.1.12/src/CMakeLists.txt +=================================================================== +--- SLADE-3.1.12.orig/src/CMakeLists.txt ++++ SLADE-3.1.12/src/CMakeLists.txt +@@ -52,7 +52,7 @@ if (WX_GTK3) + set(wxWidgets_CONFIG_OPTIONS --toolkit=gtk3) + endif (WX_GTK3) + +-SET(WX_LIBS std aui gl stc richtext propgrid media) ++SET(WX_LIBS base std aui gl stc richtext propgrid media) + if (NO_WEBVIEW) + SET(WX_LIBS ${WX_LIBS} html) + else (NO_WEBVIEW) +Index: SLADE-3.1.12/src/External/CMakeLists.txt +=================================================================== +--- SLADE-3.1.12.orig/src/External/CMakeLists.txt ++++ SLADE-3.1.12/src/External/CMakeLists.txt +@@ -31,5 +31,5 @@ file(GLOB_RECURSE EXTERNAL_SOURCES + ) + + add_library(external STATIC ${EXTERNAL_SOURCES}) +-target_link_libraries(external ${ZLIB_LIBRARY}) ++target_link_libraries(external ${ZLIB_LIBRARY} ${wxWidgets_LIBRARIES}) + set(EXTERNAL_LIBRARIES external PARENT_SCOPE)