From fc98051a235f29c4246da1f7a5b53709824e86416369217c5406013432c23d6f Mon Sep 17 00:00:00 2001 From: Michael Vetter Date: Tue, 30 Jun 2020 09:16:59 +0000 Subject: [PATCH] Accepting request 817502 from home:Mailaender:branches:devel:languages:lua new stable upstream release OBS-URL: https://build.opensuse.org/request/show/817502 OBS-URL: https://build.opensuse.org/package/show/devel:languages:lua/wxlua?expand=0&rev=9 --- WX_3_1_0-7d9d59.tar.gz | 3 -- desktop.patch | 76 ----------------------------- v3.0.0.8.tar.gz | 3 ++ wx-webview.patch | 25 ---------- wxMemoryBuffer.patch | 106 +++++++++++++++++++++++++++++++++++++++++ wxlua.changes | 12 +++++ wxlua.spec | 71 ++++++++++++--------------- 7 files changed, 152 insertions(+), 144 deletions(-) delete mode 100644 WX_3_1_0-7d9d59.tar.gz delete mode 100644 desktop.patch create mode 100644 v3.0.0.8.tar.gz delete mode 100644 wx-webview.patch create mode 100644 wxMemoryBuffer.patch diff --git a/WX_3_1_0-7d9d59.tar.gz b/WX_3_1_0-7d9d59.tar.gz deleted file mode 100644 index 691c6ce..0000000 --- a/WX_3_1_0-7d9d59.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:735fb9014a1c983ee30cefe5f6269141d138118c5b29c2870d148f5dcb37c120 -size 3101998 diff --git a/desktop.patch b/desktop.patch deleted file mode 100644 index e3e150b..0000000 --- a/desktop.patch +++ /dev/null @@ -1,76 +0,0 @@ -From 070d7003f92c877985c2df2cc956170e41a0999f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= - -Date: Tue, 12 Dec 2017 07:51:14 +0100 -Subject: [PATCH 1/3] The binary is called wxLua instead of wxluaedit. - ---- - wxLua/distrib/autopackage/wxlua.desktop | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/wxLua/distrib/autopackage/wxlua.desktop b/wxLua/distrib/autopackage/wxlua.desktop -index 9ef83c1..47bac57 100644 ---- a/wxLua/distrib/autopackage/wxlua.desktop -+++ b/wxLua/distrib/autopackage/wxlua.desktop -@@ -1,11 +1,11 @@ - [Desktop Entry] - Name=wxLua Editor - Comment=Editor for Lua script files --Exec=wxluaedit %F -+Exec=wxLua %F - Encoding=UTF-8 - Terminal=false - Type=Application - MimeType=application/lua; - Categories=Application;Development; - Icon=wxlualogo.xpm --X-GNOME-DocPath= -\ No newline at end of file -+X-GNOME-DocPath= - -From 179dacff6fedc8be28d0df6c9d0c38151054dc58 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= - -Date: Tue, 12 Dec 2017 07:52:28 +0100 -Subject: [PATCH 2/3] Avoid the deprecated .xpm file format extension - -as the art folder also contains a modern .svg ---- - wxLua/distrib/autopackage/wxlua.desktop | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/wxLua/distrib/autopackage/wxlua.desktop b/wxLua/distrib/autopackage/wxlua.desktop -index 47bac57..1b269ac 100644 ---- a/wxLua/distrib/autopackage/wxlua.desktop -+++ b/wxLua/distrib/autopackage/wxlua.desktop -@@ -7,5 +7,5 @@ Terminal=false - Type=Application - MimeType=application/lua; - Categories=Application;Development; --Icon=wxlualogo.xpm -+Icon=wxlualogo - X-GNOME-DocPath= - -From f276216494ab244630a186b79cdba33ed177df85 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= - -Date: Tue, 12 Dec 2017 07:54:20 +0100 -Subject: [PATCH 3/3] Update the .desktop categories - -according to https://specifications.freedesktop.org/menu-spec/menu-spec-latest.html#main-category-registry ---- - wxLua/distrib/autopackage/wxlua.desktop | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/wxLua/distrib/autopackage/wxlua.desktop b/wxLua/distrib/autopackage/wxlua.desktop -index 1b269ac..911f34c 100644 ---- a/wxLua/distrib/autopackage/wxlua.desktop -+++ b/wxLua/distrib/autopackage/wxlua.desktop -@@ -6,6 +6,6 @@ Encoding=UTF-8 - Terminal=false - Type=Application - MimeType=application/lua; --Categories=Application;Development; -+Categories=Development;IDE; - Icon=wxlualogo - X-GNOME-DocPath= diff --git a/v3.0.0.8.tar.gz b/v3.0.0.8.tar.gz new file mode 100644 index 0000000..c2f5dce --- /dev/null +++ b/v3.0.0.8.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:85d5182eec6e7cbb8428b9c144ef7fbe364f4fed6411aafcead648893e5b6fa0 +size 3232516 diff --git a/wx-webview.patch b/wx-webview.patch deleted file mode 100644 index 6a51d11..0000000 --- a/wx-webview.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 611ba030fc18c5df43ddc02ea16ce50691bd786e Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= - -Date: Wed, 13 Dec 2017 08:58:28 +0100 -Subject: [PATCH] Remove webview because it is broken in wxWidgets - ---- - wxLua/CMakeLists.txt | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/wxLua/CMakeLists.txt b/wxLua/CMakeLists.txt -index a80a011..3339ae3 100644 ---- a/wxLua/CMakeLists.txt -+++ b/wxLua/CMakeLists.txt -@@ -46,8 +46,8 @@ set( wxLua_SUBRELEASE_NUMBER "3") - # Specify what wxWidgets libs we need to link to. Note: 'core' must be before 'base'. - # If this CMakeLists.txt was called from another, FIND_WXWIDGETS() may have already been called. - if (NOT DEFINED wxWidgets_COMPONENTS) -- set(wxWidgets_COMPONENTS webview gl xrc xml net media propgrid richtext aui stc html adv core base) # complete set for static lib/dll -- #set(wxWidgets_COMPONENTS webview gl xrc xml net media propgrid richtext aui stc html adv core base) # for multilib/dll -+ set(wxWidgets_COMPONENTS gl xrc xml net media propgrid richtext aui stc html adv core base) # complete set for static lib/dll -+ #set(wxWidgets_COMPONENTS gl xrc xml net media propgrid richtext aui stc html adv core base) # for multilib/dll - #set(wxWidgets_COMPONENTS stc mono) # for monolithic - endif() - diff --git a/wxMemoryBuffer.patch b/wxMemoryBuffer.patch new file mode 100644 index 0000000..903ebaf --- /dev/null +++ b/wxMemoryBuffer.patch @@ -0,0 +1,106 @@ +From b8e7d43a4fe1897cb4e1f7b6749ee3184d3a9011 Mon Sep 17 00:00:00 2001 +Message-Id: +From: =?UTF-8?q?Matthias=20Mail=C3=A4nder?= +Date: Sat, 27 Jun 2020 20:40:47 +0200 +Subject: [PATCH] Fix undefined reference to `wxluatype_wxMemoryBuffer' + +--- + wxLua/bindings/wxwidgets/wxbase_rules.lua | 1 + + wxLua/modules/wxbind/src/wxbase_bind.cpp | 1 + + wxLua/modules/wxlua/wxlbind.cpp | 1 + + wxLua/modules/wxlua/wxlbind.h | 1 + + wxLua/modules/wxlua/wxllua.cpp | 9 +++------ + 5 files changed, 7 insertions(+), 6 deletions(-) + +diff --git a/wxLua/bindings/wxwidgets/wxbase_rules.lua b/wxLua/bindings/wxwidgets/wxbase_rules.lua +index 3b98165..e6b76ff 100644 +--- a/wxLua/bindings/wxwidgets/wxbase_rules.lua ++++ b/wxLua/bindings/wxwidgets/wxbase_rules.lua +@@ -183,6 +183,7 @@ wxLuaBinding_class_implementation = + p_wxluatype_wxSortedArrayString = &wxluatype_wxSortedArrayString; + p_wxluatype_wxArrayInt = &wxluatype_wxArrayInt; + p_wxluatype_wxArrayDouble = &wxluatype_wxArrayDouble; ++ p_wxluatype_wxMemoryBuffer = &wxluatype_wxMemoryBuffer; + + return ret; + } +diff --git a/wxLua/modules/wxbind/src/wxbase_bind.cpp b/wxLua/modules/wxbind/src/wxbase_bind.cpp +index 6be3088..d34ec0c 100644 +--- a/wxLua/modules/wxbind/src/wxbase_bind.cpp ++++ b/wxLua/modules/wxbind/src/wxbase_bind.cpp +@@ -3138,6 +3138,7 @@ bool wxLuaBinding_wxbase::RegisterBinding(const wxLuaState& wxlState) + p_wxluatype_wxSortedArrayString = &wxluatype_wxSortedArrayString; + p_wxluatype_wxArrayInt = &wxluatype_wxArrayInt; + p_wxluatype_wxArrayDouble = &wxluatype_wxArrayDouble; ++ p_wxluatype_wxMemoryBuffer = &wxluatype_wxMemoryBuffer; + + return ret; + } +diff --git a/wxLua/modules/wxlua/wxlbind.cpp b/wxLua/modules/wxlua/wxlbind.cpp +index c7a1ab2..abeeabf 100644 +--- a/wxLua/modules/wxlua/wxlbind.cpp ++++ b/wxLua/modules/wxlua/wxlbind.cpp +@@ -55,6 +55,7 @@ int* p_wxluatype_wxArrayString = &wxluatype_TUNKNOWN; + int* p_wxluatype_wxSortedArrayString = &wxluatype_TUNKNOWN; + int* p_wxluatype_wxArrayInt = &wxluatype_TUNKNOWN; + int* p_wxluatype_wxArrayDouble = &wxluatype_TUNKNOWN; ++int* p_wxluatype_wxMemoryBuffer = &wxluatype_TUNKNOWN; + int* p_wxluatype_wxPoint = &wxluatype_TUNKNOWN; + + // ---------------------------------------------------------------------------- +diff --git a/wxLua/modules/wxlua/wxlbind.h b/wxLua/modules/wxlua/wxlbind.h +index 90aef63..71141ec 100644 +--- a/wxLua/modules/wxlua/wxlbind.h ++++ b/wxLua/modules/wxlua/wxlbind.h +@@ -123,6 +123,7 @@ extern WXDLLIMPEXP_DATA_WXLUA(int*) p_wxluatype_wxArrayString; // wxLua type for + extern WXDLLIMPEXP_DATA_WXLUA(int*) p_wxluatype_wxSortedArrayString; // wxLua type for wxSortedArrayString + extern WXDLLIMPEXP_DATA_WXLUA(int*) p_wxluatype_wxArrayInt; // wxLua type for wxArrayInt + extern WXDLLIMPEXP_DATA_WXLUA(int*) p_wxluatype_wxArrayDouble; // wxLua type for wxArrayDouble ++extern WXDLLIMPEXP_DATA_WXLUA(int*) p_wxluatype_wxMemoryBuffer; // wxLua type for wxMemoryBuffer + extern WXDLLIMPEXP_DATA_WXLUA(int*) p_wxluatype_wxPoint; // wxLua type for wxPoint + + // ---------------------------------------------------------------------------- +diff --git a/wxLua/modules/wxlua/wxllua.cpp b/wxLua/modules/wxlua/wxllua.cpp +index d910816..2214b13 100644 +--- a/wxLua/modules/wxlua/wxllua.cpp ++++ b/wxLua/modules/wxlua/wxllua.cpp +@@ -982,15 +982,13 @@ const wxLuaBindClass* LUACALL wxluaT_getclass(lua_State* L, const char* class_na + + bool wxluaT_isuserdatatype(lua_State* L, int stack_idx, int wxl_type) + { +- extern int wxluatype_wxMemoryBuffer; +- + int stack_type = wxluaT_type(L, stack_idx); + + if (wxlua_iswxuserdatatype(stack_type) && + ((wxluatype_NULL == stack_type) || // FIXME, how to check when NULL is valid or not? + ((wxl_type == WXLUA_TSTRING) && + ((wxluaT_isderivedtype(L, stack_type, *p_wxluatype_wxString) >= 0) || +- (wxluaT_isderivedtype(L, stack_type, wxluatype_wxMemoryBuffer) >= 0))) || ++ (wxluaT_isderivedtype(L, stack_type, *p_wxluatype_wxMemoryBuffer) >= 0))) || + (wxluaT_isderivedtype(L, stack_type, wxl_type) >= 0))) + return true; + +@@ -1407,7 +1405,6 @@ const char* LUACALL wxlua_getstringtypelen(lua_State *L, int stack_idx, size_t * + return lua_tolstring(L, stack_idx, len); + else if (wxlua_iswxuserdata(L, stack_idx)) + { +- extern int wxluatype_wxMemoryBuffer; + int stack_type = wxluaT_type(L, stack_idx); + + if (wxluaT_isderivedtype(L, stack_type, *p_wxluatype_wxString) >= 0) +@@ -1419,9 +1416,9 @@ const char* LUACALL wxlua_getstringtypelen(lua_State *L, int stack_idx, size_t * + *len = strlen(retp); + return retp; + } +- else if (wxluaT_isderivedtype(L, stack_type, wxluatype_wxMemoryBuffer) >= 0) ++ else if (wxluaT_isderivedtype(L, stack_type, *p_wxluatype_wxMemoryBuffer) >= 0) + { +- wxMemoryBuffer * wxmem = (wxMemoryBuffer *)wxluaT_getuserdatatype(L, stack_idx, wxluatype_wxMemoryBuffer); ++ wxMemoryBuffer * wxmem = (wxMemoryBuffer *)wxluaT_getuserdatatype(L, stack_idx, *p_wxluatype_wxMemoryBuffer); + const char *datap = (const char *)wxmem->GetData(); + if (len != NULL) + *len = wxmem->GetDataLen(); +-- +2.26.2 + diff --git a/wxlua.changes b/wxlua.changes index 31bdd3b..c087f53 100644 --- a/wxlua.changes +++ b/wxlua.changes @@ -1,3 +1,15 @@ +------------------------------------------------------------------- +Sun Jun 28 09:56:25 UTC 2020 - Matthias Mailänder + +- Added wxMemoryBuffer.patch (will be fixed next release) + +------------------------------------------------------------------- +Sat Jun 13 17:52:29 UTC 2020 - Matthias Mailänder + +- Drop desktop.patch (included upstream) +- Update to version 3.0.0.8 +- Drop wx-webview.patch (it is disabled by default now) + ------------------------------------------------------------------- Tue Dec 12 06:18:57 UTC 2017 - mailaender@opensuse.org diff --git a/wxlua.spec b/wxlua.spec index 5223d2e..00d8fc6 100644 --- a/wxlua.spec +++ b/wxlua.spec @@ -1,7 +1,7 @@ # # spec file for package wxlua # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,25 +12,25 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # %define lua_version 5.1 Name: wxlua -Version: 3.1.0.git.7d9d59 +Version: 3.0.0.8 Release: 0 Summary: Lua IDE with a GUI debugger and binding generator License: SUSE-wxWidgets-3.1 Group: Development/Languages/Other -Url: https://github.com/pkulchenko/wxlua -Source: https://github.com/pkulchenko/wxlua/archive/WX_3_1_0-7d9d59.tar.gz -# PATCH-FIX-UPSTREAM https://github.com/pkulchenko/wxlua/pull/8 -Patch0: desktop.patch -# PATCH-FIX-OPENSUSE Remoevd because webkit is exiting openSUSE:Factory -Patch1: wx-webview.patch -BuildRequires: cmake >= 2.8.3 +URL: https://github.com/pkulchenko/wxlua +Source: https://github.com/pkulchenko/wxlua/archive/v%{version}.tar.gz +# PATCH-FIX-UPSTREAM https://github.com/pkulchenko/wxlua/pull/64 +Patch0: wxMemoryBuffer.patch +BuildRequires: ccache +BuildRequires: cmake >= 2.8 +BuildRequires: cppcheck BuildRequires: desktop-file-utils BuildRequires: doxygen BuildRequires: gcc-c++ @@ -39,11 +39,8 @@ BuildRequires: lua51-devel BuildRequires: ncurses-devel BuildRequires: pkgconfig BuildRequires: readline-devel -BuildRequires: wxWidgets-devel >= 3 +BuildRequires: wxGTK2-devel BuildRequires: pkgconfig(glu) -%if 0%{?suse_version} > 1320 -BuildRequires: cppcheck -%endif %description This package contains Integrated Development Environments (IDE, written in @@ -71,29 +68,39 @@ This package contains files to be used in your C++ programs to embed a Lua interpreter with the wxWidgets API. %prep -%setup -q -n wxlua-WX_3_1_0-7d9d59 +%setup -q %patch0 -p1 -%patch1 -p1 + cd wxLua sed -r -i 's|LIBRARY DESTINATION .*$|LIBRARY DESTINATION %{_lib}|' CMakeLists.txt %build -cd wxLua -%cmake \ +cd wxLua/build +cmake .. \ -DwxWidgets_CONFIG_EXECUTABLE=%{_bindir}/wx-config \ -DwxLua_LUA_LIBRARY_BUILD_SHARED=TRUE \ -DwxLua_LUA_LIBRARY_USE_BUILTIN=FALSE \ - -DwxLua_LUA_LIBRARY_VERSION=%lua_version \ + -DwxLua_LUA_LIBRARY_VERSION=%{lua_version} \ -DwxLua_LUA_INCLUDE_DIR=%{lua_incdir} \ - -DwxLua_LUA_LIBRARY=%{_libdir}/liblua.so.%lua_version \ + -DwxLua_LUA_LIBRARY=%{_libdir}/liblua.so.%{lua_version} \ -DBUILD_SHARED_LIBS=TRUE \ - -DCMAKE_BUILD_TYPE=RelWithDebInfo + -DwxWidgets_COMPONENTS="gl;xrc;xml;net;media;propgrid;richtext;aui;stc;html;adv;core;base" \ + -DwxLuaBind_COMPONENTS="gl;xrc;xml;net;media;propgrid;richtext;aui;stc;html;adv;core;base" \ + -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DCMAKE_INSTALL_PREFIX=%{_prefix} + +pushd modules/luamodule +make %{?_smp_mflags} +popd + make %{?_smp_mflags} %install cd wxLua %cmake_install +rm -f %{buildroot}%{_bindir}/lua{,c} + mkdir -p %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/ install -p art/wxlualogo.svg %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/ chmod -x %{buildroot}%{_datadir}/icons/hicolor/scalable/apps/wxlualogo.svg @@ -106,24 +113,8 @@ install -p distrib/autopackage/wxlua.desktop %{buildroot}%{_datadir}/application install -Dm644 distrib/autopackage/wxlua.xml %{buildroot}%{_datadir}/mime/packages/%{name}.xml -# packaged in separate package wxstedit -rm -rf %{buildroot}%{_datadir}/wxstedit -rm -rf %{buildroot}%{_datadir}/wxStEdit -rm -rf %{buildroot}%{_includedir}/wx/stedit/ -rm -rf %{buildroot}%{_prefix}/lib/libwxstedit*.so - -mkdir -p %{buildroot}%{_libdir}/lua/%lua_version/ -mv %{buildroot}%{_libdir}/libwx.so %{buildroot}%{_libdir}/lua/%lua_version/wx.so - -%post -%desktop_database_post -%icon_theme_cache_post -%mime_database_post - -%postun -%desktop_database_postun -%icon_theme_cache_postun -%mime_database_postun +mkdir -p %{buildroot}%{_libdir}/lua/%{lua_version}/ +mv %{buildroot}%{_libdir}/libwx.so %{buildroot}%{_libdir}/lua/%{lua_version}/wx.so %post -n lib%{name} -p /sbin/ldconfig %postun -n lib%{name} -p /sbin/ldconfig @@ -137,7 +128,7 @@ mv %{buildroot}%{_libdir}/libwx.so %{buildroot}%{_libdir}/lua/%lua_version/wx.so %{_datadir}/mime/packages/%{name}.xml %files -n lib%{name} -%{_libdir}/lua/%lua_version/wx.so +%{_libdir}/lua/%{lua_version}/wx.so %{_libdir}/libwxlua*.so %files devel