summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas Sturmlechner <asturm@gentoo.org>2020-06-28 23:13:44 +0200
committerAndreas Sturmlechner <asturm@gentoo.org>2020-06-28 23:55:23 +0200
commit65170ca972da94f24602d41992f4f3216f8affcb (patch)
treef1d034ae2d1c0714b392720e2e4f49a8b22d0ce8
parentnet-libs/signond: Reshuffle patches, but no change yet (diff)
downloadgentoo-65170ca972da94f24602d41992f4f3216f8affcb.tar.gz
gentoo-65170ca972da94f24602d41992f4f3216f8affcb.tar.bz2
gentoo-65170ca972da94f24602d41992f4f3216f8affcb.zip
net-libs/signond: Replace big sed with fix from pending upstream PR
See also: https://gitlab.com/accounts-sso/signond/-/merge_requests/27 Package-Manager: Portage-2.3.103, Repoman-2.3.23 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
-rw-r--r--net-libs/signond/files/signond-8.60-drop-fno-rtti.patch123
-rw-r--r--net-libs/signond/signond-8.60-r2.ebuild9
2 files changed, 124 insertions, 8 deletions
diff --git a/net-libs/signond/files/signond-8.60-drop-fno-rtti.patch b/net-libs/signond/files/signond-8.60-drop-fno-rtti.patch
new file mode 100644
index 00000000000..175d88361c4
--- /dev/null
+++ b/net-libs/signond/files/signond-8.60-drop-fno-rtti.patch
@@ -0,0 +1,123 @@
+From e21867fa27e32f5391d73d145eef1c8d908dee44 Mon Sep 17 00:00:00 2001
+From: Fabian Vogt <fabian@ritter-vogt.de>
+Date: Thu, 18 Jun 2020 10:22:04 +0200
+Subject: [PATCH] Don't use -fno-rtti
+
+QProcess uses typeid and crashes otherwise.
+---
+ common-project-config.pri | 2 --
+ src/extensions/cryptsetup/cryptsetup.pro | 1 -
+ src/plugins/plugins.pri | 3 +--
+ src/remotepluginprocess/remotepluginprocess.pro | 3 +--
+ tests/extensions/extensions.pri | 3 +--
+ tests/libsignon-qt-tests/libsignon-qt-tests.pro | 3 +--
+ tests/passwordplugintest/passwordplugintest.pro | 3 +--
+ tests/signond-tests/signond-tests.pri | 3 +--
+ 8 files changed, 6 insertions(+), 15 deletions(-)
+
+diff --git a/common-project-config.pri b/common-project-config.pri
+index 606f70bb..abe6cf6d 100644
+--- a/common-project-config.pri
++++ b/common-project-config.pri
+@@ -13,8 +13,6 @@ RCC_DIR = resources
+
+ # we don't like warnings...
+ QMAKE_CXXFLAGS -= -Werror -Wno-write-strings
+-# Disable RTTI
+-QMAKE_CXXFLAGS += -fno-rtti
+ # Disable exceptions
+ CONFIG += exceptions_off
+ # Use C++11
+diff --git a/src/extensions/cryptsetup/cryptsetup.pro b/src/extensions/cryptsetup/cryptsetup.pro
+index f4b6e53b..5cc214e4 100644
+--- a/src/extensions/cryptsetup/cryptsetup.pro
++++ b/src/extensions/cryptsetup/cryptsetup.pro
+@@ -29,7 +29,6 @@ QT -= gui
+
+ QMAKE_CXXFLAGS += \
+ -fno-exceptions \
+- -fno-rtti \
+ -fvisibility=hidden
+
+ DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII
+diff --git a/src/plugins/plugins.pri b/src/plugins/plugins.pri
+index 2c03e743..074896d5 100644
+--- a/src/plugins/plugins.pri
++++ b/src/plugins/plugins.pri
+@@ -22,8 +22,7 @@ LIBS += -lsignon-plugins
+ QMAKE_LIBDIR += \
+ $${TOP_BUILD_DIR}/lib/plugins
+
+-QMAKE_CXXFLAGS += -fno-exceptions \
+- -fno-rtti
++QMAKE_CXXFLAGS += -fno-exceptions
+
+ headers.path = $${INSTALL_PREFIX}/include/signon-plugins
+
+diff --git a/src/remotepluginprocess/remotepluginprocess.pro b/src/remotepluginprocess/remotepluginprocess.pro
+index 7c2ea007..36b4cbe0 100644
+--- a/src/remotepluginprocess/remotepluginprocess.pro
++++ b/src/remotepluginprocess/remotepluginprocess.pro
+@@ -40,8 +40,7 @@ LIBS += \
+ -lsignon-plugins-common \
+ -lsignon-plugins
+
+-QMAKE_CXXFLAGS += -fno-exceptions \
+- -fno-rtti
++QMAKE_CXXFLAGS += -fno-exceptions
+
+ #DEFINES += QT_NO_CAST_TO_ASCII \
+ # QT_NO_CAST_FROM_ASCII
+diff --git a/tests/extensions/extensions.pri b/tests/extensions/extensions.pri
+index 179cd28d..2fd75955 100644
+--- a/tests/extensions/extensions.pri
++++ b/tests/extensions/extensions.pri
+@@ -20,5 +20,4 @@ INCLUDEPATH += . \
+ $$TOP_SRC_DIR/lib/signond
+
+ QMAKE_CXXFLAGS += \
+- -fno-exceptions \
+- -fno-rtti
++ -fno-exceptions
+diff --git a/tests/libsignon-qt-tests/libsignon-qt-tests.pro b/tests/libsignon-qt-tests/libsignon-qt-tests.pro
+index 43f2d59f..ac87781d 100644
+--- a/tests/libsignon-qt-tests/libsignon-qt-tests.pro
++++ b/tests/libsignon-qt-tests/libsignon-qt-tests.pro
+@@ -36,8 +36,7 @@ INCLUDEPATH += . \
+ $$TOP_SRC_DIR/src/plugins/test
+ DEFINES += SSO_CI_TESTMANAGEMENT
+ DEFINES += "SIGNOND_PLUGINS_DIR=$${SIGNOND_PLUGINS_DIR_QUOTED}"
+-QMAKE_CXXFLAGS += -fno-exceptions \
+- -fno-rtti
++QMAKE_CXXFLAGS += -fno-exceptions
+
+ check.depends = $$TARGET
+ check.commands = "SSO_PLUGINS_DIR=$${TOP_BUILD_DIR}/src/plugins/test SSO_EXTENSIONS_DIR=$${TOP_BUILD_DIR}/non-existing-dir $$RUN_WITH_SIGNOND ./libsignon-qt-tests"
+diff --git a/tests/passwordplugintest/passwordplugintest.pro b/tests/passwordplugintest/passwordplugintest.pro
+index 6132921e..ce16fdcf 100644
+--- a/tests/passwordplugintest/passwordplugintest.pro
++++ b/tests/passwordplugintest/passwordplugintest.pro
+@@ -19,5 +19,4 @@ INCLUDEPATH += $${TOP_SRC_DIR}/lib/plugins \
+ $${TOP_SRC_DIR}/src/plugins \
+ $${TOP_SRC_DIR}/lib
+
+-QMAKE_CXXFLAGS += -fno-exceptions \
+- -fno-rtti
++QMAKE_CXXFLAGS += -fno-exceptions
+diff --git a/tests/signond-tests/signond-tests.pri b/tests/signond-tests/signond-tests.pri
+index 1bbd5a15..e95556ba 100644
+--- a/tests/signond-tests/signond-tests.pri
++++ b/tests/signond-tests/signond-tests.pri
+@@ -34,8 +34,7 @@ INCLUDEPATH += . \
+ $${TOP_SRC_DIR}/lib/plugins/signon-plugins-common/SignOn \
+ $${TOP_SRC_DIR}/lib \
+
+-QMAKE_CXXFLAGS += -fno-exceptions \
+- -fno-rtti
++QMAKE_CXXFLAGS += -fno-exceptions
+
+ check.depends = $$TARGET
+ check.commands = "SSO_PLUGINS_DIR=$${TOP_BUILD_DIR}/src/plugins/test SSO_EXTENSIONS_DIR=$${TOP_BUILD_DIR}/non-existing-dir $$RUN_WITH_SIGNOND ./$$TARGET"
+--
+GitLab
+
diff --git a/net-libs/signond/signond-8.60-r2.ebuild b/net-libs/signond/signond-8.60-r2.ebuild
index c775677aaaa..ac9f38c87f2 100644
--- a/net-libs/signond/signond-8.60-r2.ebuild
+++ b/net-libs/signond/signond-8.60-r2.ebuild
@@ -34,6 +34,7 @@ PATCHES=(
"${FILESDIR}/${P}-consistent-paths.patch" # bug 701142
"${FILESDIR}/${P}-crashfix.patch"
"${FILESDIR}/${P}-unused-dep.patch" # bug 727346
+ "${FILESDIR}/${P}-drop-fno-rtti.patch" # runtime crashes
)
S="${WORKDIR}/${PN}-VERSION_${PV}"
@@ -53,14 +54,6 @@ src_prepare() {
sed -e "/CONFIG += c++11/d" \
-i common-project-config.pri || die "failed fixing CXXFLAGS"
- # fix runtime failures
- sed -e "/fno-rtti/d" \
- -i common-project-config.pri src/plugins/plugins.pri \
- src/{remotepluginprocess/remotepluginprocess,extensions/cryptsetup/cryptsetup}.pro \
- tests/{signond-tests/signond-tests,extensions/extensions}.pri \
- tests/{passwordplugintest/passwordplugintest,libsignon-qt-tests/libsignon-qt-tests}.pro \
- || die "failed disabling -fno-rtti"
-
use doc || sed -e "/include(\s*doc\/doc.pri\s*)/d" \
-i signon.pro lib/SignOn/SignOn.pro lib/plugins/plugins.pro || die