summaryrefslogtreecommitdiffstats
path: root/kde/patch/akonadi/akonadi_revert-abs-path.patch
diff options
context:
space:
mode:
Diffstat (limited to 'kde/patch/akonadi/akonadi_revert-abs-path.patch')
-rw-r--r--kde/patch/akonadi/akonadi_revert-abs-path.patch70
1 files changed, 70 insertions, 0 deletions
diff --git a/kde/patch/akonadi/akonadi_revert-abs-path.patch b/kde/patch/akonadi/akonadi_revert-abs-path.patch
new file mode 100644
index 0000000..3b48253
--- /dev/null
+++ b/kde/patch/akonadi/akonadi_revert-abs-path.patch
@@ -0,0 +1,70 @@
+commit d98e29a07f4acc3bf01f06f25b3eef5522397e2e
+Author: Andreas Sturmlechner <andreas.sturmlechner@gmail.com>
+Date: Thu Jan 5 22:41:02 2017 +0100
+
+ Revert "Workaround an include loop on case-insensitive systems"
+
+ Do not hardcode absolute patchs to GCC headers.
+
+ This reverts commit 59b9d6b79425c9ec1e5df059a2593580048c4adf.
+
+ REVIEW: 129788
+
+diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
+index 72589cd..6ac851e 100644
+--- a/src/core/CMakeLists.txt
++++ b/src/core/CMakeLists.txt
+@@ -257,21 +257,6 @@ ecm_generate_headers(AkonadiCore_jobs_HEADERS
+ RELATIVE jobs
+ )
+
+-# This is a workaround for conflict between our "Exception" fancy header and
+-# C++ stdlib's "exception" header which occurs in case-insensitive systems.
+-# For that reason we generate std_exception.h file, which contains an absolute
+-# path to the stdlib's exception header file, which resolves the ambiguity
+-# when including <exception> from within Akonadi.
+-include(FindStdlibInclude)
+-findStdlibInclude("exception" std_exception_file)
+-if (NOT "${std_exception_file}" STREQUAL "")
+- configure_file(${CMAKE_CURRENT_SOURCE_DIR}/std_exception.h.in
+- ${CMAKE_CURRENT_BINARY_DIR}/std_exception.h
+- )
+-else()
+- message(FATAL_ERROR "stdlib <exception> include absolute path not found")
+-endif()
+-
+ set(akonadicore_dbus_xml ${Akonadi_SOURCE_DIR}/src/interfaces/org.freedesktop.Akonadi.NotificationManager.xml)
+ qt5_add_dbus_interface(akonadicore_dbus_SRCS ${akonadicore_dbus_xml} notificationmanagerinterface)
+
+@@ -338,7 +323,6 @@ install(TARGETS
+
+ install(FILES
+ ${CMAKE_CURRENT_BINARY_DIR}/akonadicore_export.h
+- ${CMAKE_CURRENT_BINARY_DIR}/std_exception.h
+ ${AkonadiCore_base_HEADERS}
+ ${AkonadiCore_models_HEADERS}
+ ${AkonadiCore_jobs_HEADERS}
+diff --git a/src/core/exception.h b/src/core/exception.h
+index d07ca71..2a376df 100644
+--- a/src/core/exception.h
++++ b/src/core/exception.h
+@@ -20,16 +20,11 @@
+ #ifndef AKONADI_EXCEPTION_H
+ #define AKONADI_EXCEPTION_H
+
+-// The std_exception.h file is generated at build-time and #includes C++ stdlib
+-// header "exception" by aboslute path. This is to workaround an include loop on
+-// case-insensitive systems, where #include <exception> includes our "Exception"
+-// fancy header instead of stdlib's exception, causing an endless loop of
+-// includes between "Exception" and "exception.h".
+-#include "std_exception.h"
+-
+ #include "akonadicore_export.h"
++#include <QObject>
++#include <QByteArray>
++#include <exception>
+
+-class QByteArray;
+ class QString;
+
+ namespace Akonadi