Hello community, here is the log from the commit of package slade for openSUSE:Factory checked in at 2020-10-12 13:59:08 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/slade (Old) and /work/SRC/openSUSE:Factory/.slade.new.3486 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "slade" Mon Oct 12 13:59:08 2020 rev:11 rq:841069 version:3.1.12 Changes: -------- --- /work/SRC/openSUSE:Factory/slade/slade.changes 2020-06-02 14:43:39.480473300 +0200 +++ /work/SRC/openSUSE:Factory/.slade.new.3486/slade.changes 2020-10-12 13:59:59.138232882 +0200 @@ -1,0 +2,19 @@ +Sun Oct 11 09:18:41 UTC 2020 - Jan Engelhardt <jeng...@inai.de> + +- 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 <jeng...@inai.de> + +- 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 <jeng...@inai.de> + +- Add clzma.diff to use system-provided clzma library. + +------------------------------------------------------------------- New: ---- 0001-build-add-cmake-option-to-skip-Lua-components-1175.patch 0001-build-allow-deactivating-the-crash-handler-at-build-.patch clzma.diff ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ slade.spec ++++++ --- /var/tmp/diff_new_pack.2LAtBj/_old 2020-10-12 13:59:59.810233162 +0200 +++ /var/tmp/diff_new_pack.2LAtBj/_new 2020-10-12 13:59:59.810233162 +0200 @@ -28,16 +28,21 @@ Source100: slade.appdata.xml Patch1: basepk3.diff Patch2: wx.diff +Patch3: clzma.diff +Patch4: 0001-build-allow-deactivating-the-crash-handler-at-build-.patch Patch10: disable_sse.patch +Patch11: 0001-build-add-cmake-option-to-skip-Lua-components-1175.patch +# slade 3.2 will need gcc-c++>=8 and pkgconfig(fmt)>=6 BuildRequires: ImageMagick BuildRequires: cmake >= 3.1 BuildRequires: freeimage-devel BuildRequires: gcc-c++ >= 6 -BuildRequires: pkgconfig +BuildRequires: pkg-config BuildRequires: strip-nondeterminism BuildRequires: update-desktop-files BuildRequires: wxWidgets-3_0-devel BuildRequires: zip +BuildRequires: pkgconfig(clzma) BuildRequires: pkgconfig(fluidsynth) BuildRequires: pkgconfig(ftgl) BuildRequires: pkgconfig(gl) @@ -45,24 +50,31 @@ BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(sfml-all) BuildRequires: pkgconfig(x11) +Provides: bundled(dumb) = 0.9.3 %description -SLADE3 is an editor for Doom-engine based games and source +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 -p1 +%patch -P 1 -P 2 -P 3 -P 4 -p1 %ifnarch %ix86 x86_64 %patch10 -p0 %endif +%if 0%{?suse_version} >= 1550 +%patch -P 11 -p1 +%endif %build %define _lto_cflags %nil -%cmake -DNO_WEBVIEW=ON -DWX_GTK3=OFF -make %{?_smp_mflags} +%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 @@ -75,10 +87,10 @@ install -Dpm0644 %{SOURCE100} "$b/%_datadir/appdata/%name.appdata.xml" pushd misc -for txtfile in detect_functions.txt old-simage-formats.txt stuff.txt udmf11.txt \ - udmf_zdoom.txt usdf.txt usdf_zdoom.txt +for txtfile in detect_functions.txt old-simage-formats.txt stuff.txt \ + udmf11.txt udmf_zdoom.txt usdf.txt usdf_zdoom.txt do - install -Dm644 $txtfile "$b/%_datadir/slade3/misc/$txtfile" + install -Dm644 "$txtfile" "$b/%_datadir/slade3/misc/$txtfile" done popd ++++++ 0001-build-add-cmake-option-to-skip-Lua-components-1175.patch ++++++ >From a54f12b4c29e949458949d5bede2f74b1aa8a34a Mon Sep 17 00:00:00 2001 From: jengelh <jeng...@inai.de> 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 <sirjudding...@gmail.com> --- 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<string>& 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<string>& 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; } ++++++ 0001-build-allow-deactivating-the-crash-handler-at-build-.patch ++++++ >From 519a5a5f87527a344ab04efa0947d5d8e75294e5 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt <jeng...@inai.de> 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(-) diff --git a/src/Application/SLADEWxApp.cpp b/src/Application/SLADEWxApp.cpp index 375f62b8..d9196355 100644 --- a/src/Application/SLADEWxApp.cpp +++ b/src/Application/SLADEWxApp.cpp @@ -523,7 +523,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 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 4ce2403d..5eabe4c7 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -132,6 +132,10 @@ if (NOT NO_FLUIDSYNTH) include_directories(${FLUIDSYNTH_INCLUDE_DIR}) endif() +if (NOT NO_CRASHHANDLER) + add_definitions(-DUSE_CRASHHANDLER) +endif () + set(SLADE_SOURCES ) # Don't include external libraries here as they should be compiled separately -- 2.27.0 ++++++ clzma.diff ++++++ From: Jan Engelhardt <jeng...@inai.de> 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)