Accepting request 854763 from home:MargueriteSu:branches:M17N

- add fcitx5-gcc7.patch: fix build on openSUSE Leap 15.1 with gcc7

OBS-URL: https://build.opensuse.org/request/show/854763
OBS-URL: https://build.opensuse.org/package/show/M17N/fcitx5?expand=0&rev=12
This commit is contained in:
Marguerite Su 2020-12-11 07:15:21 +00:00 committed by Git OBS Bridge
parent 513e423c8b
commit f169659e74
6 changed files with 35 additions and 95 deletions

View File

@ -1,14 +0,0 @@
<?xml version="1.0"?>
<its:rules xmlns:its="http://www.w3.org/2005/11/its"
version="2.0">
<its:translateRule selector="/component" translate="no"/>
<its:translateRule selector="/component/name |
/component/summary |
/component/description |
/component/developer_name |
/component/screenshots/screenshot/caption |
/component/releases/release/description |
/component/agreement/agreement_section/name |
/component/agreement/agreement_section/description"
translate="yes"/>
</its:rules>

View File

@ -1,9 +0,0 @@
<?xml version="1.0"?>
<locatingRules>
<locatingRule name="AppData" pattern="*.appdata.xml">
<documentRule localName="component" target="appdata.its"/>
</locatingRule>
<locatingRule name="AppData" pattern="*.metainfo.xml">
<documentRule localName="component" target="appdata.its"/>
</locatingRule>
</locatingRules>

View File

@ -1,35 +1,44 @@
Index: fcitx5-5.0.3/test/testdbus.cpp
===================================================================
--- fcitx5-5.0.3.orig/test/testdbus.cpp
+++ fcitx5-5.0.3/test/testdbus.cpp
@@ -67,7 +67,7 @@ private:
[]() { return 5; });
FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY(
testProperty2, "testProperty2", "i", [this]() { return prop2; },
- [this](int32_t v) { prop2 = v; });
+ [&](int32_t v) { prop2 = v; });
};
#define TEST_SERVICE "org.fcitx.Fcitx.TestDBus"
Index: fcitx5-5.0.3/src/frontend/ibusfrontend/ibusfrontend.cpp Index: fcitx5-5.0.3/src/frontend/ibusfrontend/ibusfrontend.cpp
=================================================================== ===================================================================
--- fcitx5-5.0.3.orig/src/frontend/ibusfrontend/ibusfrontend.cpp --- fcitx5-5.0.3.orig/src/frontend/ibusfrontend/ibusfrontend.cpp
+++ fcitx5-5.0.3/src/frontend/ibusfrontend/ibusfrontend.cpp +++ fcitx5-5.0.3/src/frontend/ibusfrontend/ibusfrontend.cpp
@@ -594,14 +594,14 @@ private: @@ -594,14 +594,23 @@ private:
([]() -> dbus::DBusStruct<uint32_t, uint32_t> { ([]() -> dbus::DBusStruct<uint32_t, uint32_t> {
return {0, 0}; return {0, 0};
}), }),
- ([this](dbus::DBusStruct<uint32_t, uint32_t> type) { +#if __GNUC__ < 8
+ ([&](dbus::DBusStruct<uint32_t, uint32_t> type) { + ([&](dbus::DBusStruct<uint32_t, uint32_t> type) {
+#else
([this](dbus::DBusStruct<uint32_t, uint32_t> type) {
+#endif
setContentType(std::get<0>(type), std::get<1>(type)); setContentType(std::get<0>(type), std::get<1>(type));
}), }),
dbus::PropertyOption::Hidden); dbus::PropertyOption::Hidden);
FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY( FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY(
clientCommitPreedit, "ClientCommitPreedit", "(b)", clientCommitPreedit, "ClientCommitPreedit", "(b)",
- ([this]() -> dbus::DBusStruct<bool> { return {clientCommitPreedit_}; }), +#if __GNUC__ < 8
- ([this](dbus::DBusStruct<bool> value) {
+ ([&]() -> dbus::DBusStruct<bool> { return {clientCommitPreedit_}; }), + ([&]() -> dbus::DBusStruct<bool> { return {clientCommitPreedit_}; }),
+ ([&](dbus::DBusStruct<bool> value) { + ([&](dbus::DBusStruct<bool> value) {
+#else
([this]() -> dbus::DBusStruct<bool> { return {clientCommitPreedit_}; }),
([this](dbus::DBusStruct<bool> value) {
+#endif
clientCommitPreedit_ = std::get<0>(value); clientCommitPreedit_ = std::get<0>(value);
}), }),
dbus::PropertyOption::Hidden); dbus::PropertyOption::Hidden);
Index: fcitx5-5.0.3/test/testdbus.cpp
===================================================================
--- fcitx5-5.0.3.orig/test/testdbus.cpp
+++ fcitx5-5.0.3/test/testdbus.cpp
@@ -67,7 +67,11 @@ private:
[]() { return 5; });
FCITX_OBJECT_VTABLE_WRITABLE_PROPERTY(
testProperty2, "testProperty2", "i", [this]() { return prop2; },
+#if __GNUC__ < 8
+ [&](int32_t v) { prop2 = v; });
+#else
[this](int32_t v) { prop2 = v; });
+#endif
};
#define TEST_SERVICE "org.fcitx.Fcitx.TestDBus"

View File

@ -1,38 +0,0 @@
Index: fcitx5-4.99.0+git20200212.9436416/src/lib/fcitx-utils/event.h
===================================================================
--- fcitx5-4.99.0+git20200212.9436416.orig/src/lib/fcitx-utils/event.h
+++ fcitx5-4.99.0+git20200212.9436416/src/lib/fcitx-utils/event.h
@@ -27,6 +27,8 @@
#include <memory>
#include <time.h>
+#include <stdexcept>
+
namespace fcitx {
enum class IOEventFlag {
Index: fcitx5-4.99.0+git20200212.9436416/src/lib/fcitx-utils/utf8.h
===================================================================
--- fcitx5-4.99.0+git20200212.9436416.orig/src/lib/fcitx-utils/utf8.h
+++ fcitx5-4.99.0+git20200212.9436416/src/lib/fcitx-utils/utf8.h
@@ -29,6 +29,8 @@
#include <fcitx-utils/misc.h>
#include <string>
+#include <stdexcept>
+
namespace fcitx {
namespace utf8 {
Index: fcitx5-4.99.0+git20200212.9436416/src/lib/fcitx/candidatelist.cpp
===================================================================
--- fcitx5-4.99.0+git20200212.9436416.orig/src/lib/fcitx/candidatelist.cpp
+++ fcitx5-4.99.0+git20200212.9436416/src/lib/fcitx/candidatelist.cpp
@@ -18,6 +18,7 @@
//
#include "candidatelist.h"
+#include <stdexcept>
namespace fcitx {

View File

@ -1,3 +1,8 @@
-------------------------------------------------------------------
Fri Dec 11 06:49:22 UTC 2020 - Marguerite Su <i@marguerite.su>
- add fcitx5-gcc7.patch: fix build on openSUSE Leap 15.1 with gcc7
------------------------------------------------------------------- -------------------------------------------------------------------
Sun Dec 6 05:08:33 UTC 2020 - Marguerite Su <i@marguerite.su> Sun Dec 6 05:08:33 UTC 2020 - Marguerite Su <i@marguerite.su>

View File

@ -31,11 +31,9 @@ Source1: en_dict-20121020.tar.gz
Source2: https://raw.githubusercontent.com/fcitx/fcitx-artwork/master/logo/Fcitx.svg Source2: https://raw.githubusercontent.com/fcitx/fcitx-artwork/master/logo/Fcitx.svg
Source3: xim.d-fcitx5 Source3: xim.d-fcitx5
Source4: macros.fcitx5 Source4: macros.fcitx5
Source5: https://raw.githubusercontent.com/hughsie/appstream-glib/master/data/appdata.loc
Source6: https://raw.githubusercontent.com/hughsie/appstream-glib/master/data/appdata.its
Source99: baselibs.conf Source99: baselibs.conf
Patch0: fcitx5-no-download.patch Patch0: fcitx5-no-download.patch
Patch1: fcitx5-lambda.patch Patch1: fcitx5-gcc7.patch
BuildRequires: Mesa-libEGL-devel BuildRequires: Mesa-libEGL-devel
BuildRequires: cairo-devel BuildRequires: cairo-devel
BuildRequires: cldr-emoji-annotation-devel BuildRequires: cldr-emoji-annotation-devel
@ -66,6 +64,9 @@ BuildRequires: xcb-imdkit-devel
BuildRequires: xcb-util-keysyms-devel BuildRequires: xcb-util-keysyms-devel
BuildRequires: xcb-util-wm-devel BuildRequires: xcb-util-wm-devel
BuildRequires: xkeyboard-config BuildRequires: xkeyboard-config
%if 0%{?suse_version} <= 1520
BuildRequires: appstream-glib-devel
%endif
Requires: libFcitx5Config6 = %{version} Requires: libFcitx5Config6 = %{version}
Requires: libFcitx5Core7 = %{version} Requires: libFcitx5Core7 = %{version}
Requires: libFcitx5Utils2 = %{version} Requires: libFcitx5Utils2 = %{version}
@ -126,15 +127,8 @@ This package provides utility libraries for fcitx5.
%patch0 -p1 %patch0 -p1
%patch1 -p1 %patch1 -p1
cp -r %{SOURCE1} src/modules/spell/dict/ cp -r %{SOURCE1} src/modules/spell/dict/
# fix fcitx5-diagnose env-script-interpreter
sed -i '1s/env //' data/fcitx5-diagnose.sh
%build %build
# fix leap 15.2 msgfmt can not locate its rules
mkdir -p %{_builddir}/its
export GETTEXTDATADIR=%{_builddir}
cp -r %{S:5} %{_builddir}/its
cp -r %{S:6} %{_builddir}/its
%cmake -DENABLE_PRESAGE=On -DCMAKE_SKIP_RPATH=OFF -DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir} %cmake -DENABLE_PRESAGE=On -DCMAKE_SKIP_RPATH=OFF -DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir}
%make_build %make_build
@ -178,11 +172,6 @@ mkdir -p %{buildroot}%{_libdir}/fcitx5/qt5
# install macros.fcitx5 # install macros.fcitx5
install -Dm 0755 %{SOURCE4} %{buildroot}%{_sysconfdir}/rpm/macros.fcitx5 install -Dm 0755 %{SOURCE4} %{buildroot}%{_sysconfdir}/rpm/macros.fcitx5
# install gettext its rules
mkdir -p %{buildroot}%{_datadir}/gettext/its
install -Dm 0755 %{S:5} %{buildroot}%{_datadir}/gettext/its
install -Dm 0755 %{S:6} %{buildroot}%{_datadir}/gettext/its
%find_lang fcitx5 %find_lang fcitx5
%fdupes %{buildroot} %fdupes %{buildroot}
@ -221,8 +210,6 @@ install -Dm 0755 %{S:6} %{buildroot}%{_datadir}/gettext/its
%{_libdir}/libFcitx5Core.so %{_libdir}/libFcitx5Core.so
%{_libdir}/libFcitx5Utils.so %{_libdir}/libFcitx5Utils.so
%{_libdir}/pkgconfig/Fcitx5*.pc %{_libdir}/pkgconfig/Fcitx5*.pc
%{_datadir}/gettext/its/appdata.its
%{_datadir}/gettext/its/appdata.loc
%files -n libFcitx5Config6 %files -n libFcitx5Config6
%{_libdir}/libFcitx5Config.so.6 %{_libdir}/libFcitx5Config.so.6