summaryrefslogtreecommitdiffstats
path: root/kde/patch/akonadi/akonadi_revert-abs-path.patch
blob: 3b48253d46d894c2b85ba3317f9acf6a663b3264 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
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