From 20ee11dd188e1538f8cdd17a289dc6f9c63a011e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 17 Apr 2016 12:35:41 -0700
Subject: [PATCH] WebKitMacros: Append to -I and not to -isystem

gcc-6 has now introduced stdlib.h in libstdc++ for better
compliance and its including the C library stdlib.h using
include_next which is sensitive to order of system header
include paths. Its infact better to not tinker with the
system header include paths at all. Since adding /usr/include
to -system is redundant and compiler knows about it moreover
now with gcc6 it interferes with compiler's functioning
and ends up with compile errors e.g.

/usr/include/c++/6.0.0/cstdlib:75:25: fatal error: stdlib.h: No such file or directory

This is also an issue with clang (when using libstdc++ >= 6)

Upstream bug: https://bugs.webkit.org/show_bug.cgi?id=161697

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Upstream-Status: Pending
---
 Source/JavaScriptCore/shell/CMakeLists.txt             | 2 +-
 Source/WebCore/PlatformGTK.cmake                       | 6 +++---
 Source/WebKit2/PlatformGTK.cmake                       | 2 +-
 Source/cmake/WebKitMacros.cmake                        | 2 +-
 Tools/DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt | 2 +-
 Tools/ImageDiff/CMakeLists.txt                         | 2 +-
 Tools/MiniBrowser/gtk/CMakeLists.txt                   | 2 +-
 Tools/TestWebKitAPI/PlatformGTK.cmake                  | 2 +-
 Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt    | 2 +-
 Tools/WebKitTestRunner/CMakeLists.txt                  | 2 +-
 10 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/Source/JavaScriptCore/shell/CMakeLists.txt b/Source/JavaScriptCore/shell/CMakeLists.txt
index 155c797..80fe22b 100644
--- a/Source/JavaScriptCore/shell/CMakeLists.txt
+++ b/Source/JavaScriptCore/shell/CMakeLists.txt
@@ -20,7 +20,7 @@ WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
 
 WEBKIT_WRAP_SOURCELIST(${JSC_SOURCES})
 include_directories(./ ${JavaScriptCore_INCLUDE_DIRECTORIES})
-include_directories(SYSTEM ${JavaScriptCore_SYSTEM_INCLUDE_DIRECTORIES})
+include_directories(${JavaScriptCore_SYSTEM_INCLUDE_DIRECTORIES})
 add_executable(jsc ${JSC_SOURCES})
 target_link_libraries(jsc ${JSC_LIBRARIES})
 
diff --git a/Source/WebCore/PlatformGTK.cmake b/Source/WebCore/PlatformGTK.cmake
index 567bd79..1fabea8 100644
--- a/Source/WebCore/PlatformGTK.cmake
+++ b/Source/WebCore/PlatformGTK.cmake
@@ -340,7 +340,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2)
         ${GTK2_INCLUDE_DIRS}
         ${GDK2_INCLUDE_DIRS}
     )
-    target_include_directories(WebCorePlatformGTK2 SYSTEM PRIVATE
+    target_include_directories(WebCorePlatformGTK2 PRIVATE
         ${WebCore_SYSTEM_INCLUDE_DIRECTORIES}
     )
     target_link_libraries(WebCorePlatformGTK2
@@ -365,7 +365,7 @@ WEBKIT_SET_EXTRA_COMPILER_FLAGS(WebCorePlatformGTK)
 target_include_directories(WebCorePlatformGTK PRIVATE
     ${WebCore_INCLUDE_DIRECTORIES}
 )
-target_include_directories(WebCorePlatformGTK SYSTEM PRIVATE
+target_include_directories(WebCorePlatformGTK PRIVATE
     ${WebCore_SYSTEM_INCLUDE_DIRECTORIES}
     ${GTK_INCLUDE_DIRS}
     ${GDK_INCLUDE_DIRS}
@@ -383,7 +383,7 @@ include_directories(
     "${DERIVED_SOURCES_GOBJECT_DOM_BINDINGS_DIR}"
 )
 
-include_directories(SYSTEM
+include_directories(
     ${WebCore_SYSTEM_INCLUDE_DIRECTORIES}
 )
 
diff --git a/Source/WebKit2/PlatformGTK.cmake b/Source/WebKit2/PlatformGTK.cmake
index e4805a4..c57df5d 100644
--- a/Source/WebKit2/PlatformGTK.cmake
+++ b/Source/WebKit2/PlatformGTK.cmake
@@ -822,7 +822,7 @@ if (ENABLE_PLUGIN_PROCESS_GTK2)
     target_include_directories(WebKitPluginProcess2 PRIVATE
         ${WebKit2CommonIncludeDirectories}
     )
-    target_include_directories(WebKitPluginProcess2 SYSTEM PRIVATE
+    target_include_directories(WebKitPluginProcess2 PRIVATE
          ${WebKit2CommonSystemIncludeDirectories}
          ${GTK2_INCLUDE_DIRS}
          ${GDK2_INCLUDE_DIRS}
diff --git a/Source/cmake/WebKitMacros.cmake b/Source/cmake/WebKitMacros.cmake
index 043e78e..8b3b642 100644
--- a/Source/cmake/WebKitMacros.cmake
+++ b/Source/cmake/WebKitMacros.cmake
@@ -224,7 +224,7 @@ endmacro()
 
 macro(WEBKIT_FRAMEWORK _target)
     include_directories(${${_target}_INCLUDE_DIRECTORIES})
-    include_directories(SYSTEM ${${_target}_SYSTEM_INCLUDE_DIRECTORIES})
+    include_directories(${${_target}_SYSTEM_INCLUDE_DIRECTORIES})
     add_library(${_target} ${${_target}_LIBRARY_TYPE}
         ${${_target}_HEADERS}
         ${${_target}_SOURCES}
diff --git a/Tools/DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt b/Tools/DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt
index c431667..6dff244 100644
--- a/Tools/DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt
+++ b/Tools/DumpRenderTree/TestNetscapePlugIn/CMakeLists.txt
@@ -42,7 +42,7 @@ set(WebKitTestNetscapePlugin_SYSTEM_INCLUDE_DIRECTORIES
 )
 
 include_directories(${WebKitTestNetscapePlugin_INCLUDE_DIRECTORIES})
-include_directories(SYSTEM ${WebKitTestNetscapePlugin_SYSTEM_INCLUDE_DIRECTORIES})
+include_directories(${WebKitTestNetscapePlugin_SYSTEM_INCLUDE_DIRECTORIES})
 
 set(WebKitTestNetscapePlugin_LIBRARIES
     ${X11_LIBRARIES}
diff --git a/Tools/ImageDiff/CMakeLists.txt b/Tools/ImageDiff/CMakeLists.txt
index b15443f..87e03bf 100644
--- a/Tools/ImageDiff/CMakeLists.txt
+++ b/Tools/ImageDiff/CMakeLists.txt
@@ -14,6 +14,6 @@ set(IMAGE_DIFF_LIBRARIES
 WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
 
 include_directories(${IMAGE_DIFF_INCLUDE_DIRECTORIES})
-include_directories(SYSTEM ${IMAGE_DIFF_SYSTEM_INCLUDE_DIRECTORIES})
+include_directories(${IMAGE_DIFF_SYSTEM_INCLUDE_DIRECTORIES})
 add_executable(ImageDiff ${IMAGE_DIFF_SOURCES})
 target_link_libraries(ImageDiff ${IMAGE_DIFF_LIBRARIES})
diff --git a/Tools/MiniBrowser/gtk/CMakeLists.txt b/Tools/MiniBrowser/gtk/CMakeLists.txt
index 0704bc6..619e5a5 100644
--- a/Tools/MiniBrowser/gtk/CMakeLists.txt
+++ b/Tools/MiniBrowser/gtk/CMakeLists.txt
@@ -58,7 +58,7 @@ endif ()
 add_definitions(-DGDK_VERSION_MIN_REQUIRED=GDK_VERSION_3_6)
 
 include_directories(${MiniBrowser_INCLUDE_DIRECTORIES})
-include_directories(SYSTEM ${MiniBrowser_SYSTEM_INCLUDE_DIRECTORIES})
+include_directories(${MiniBrowser_SYSTEM_INCLUDE_DIRECTORIES})
 add_executable(MiniBrowser ${MiniBrowser_SOURCES})
 target_link_libraries(MiniBrowser ${MiniBrowser_LIBRARIES})
 
diff --git a/Tools/TestWebKitAPI/PlatformGTK.cmake b/Tools/TestWebKitAPI/PlatformGTK.cmake
index 7552cc2..2eb44d5 100644
--- a/Tools/TestWebKitAPI/PlatformGTK.cmake
+++ b/Tools/TestWebKitAPI/PlatformGTK.cmake
@@ -20,7 +20,7 @@ include_directories(
     ${WEBKIT2_DIR}/UIProcess/API/gtk
 )
 
-include_directories(SYSTEM
+include_directories(
     ${GDK3_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
     ${GTK3_INCLUDE_DIRS}
diff --git a/Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt b/Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt
index b0b4739..434e4ca 100644
--- a/Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt
+++ b/Tools/TestWebKitAPI/Tests/WebKit2Gtk/CMakeLists.txt
@@ -23,7 +23,7 @@ include_directories(
     ${TOOLS_DIR}/TestWebKitAPI/gtk/WebKit2Gtk
 )
 
-include_directories(SYSTEM
+include_directories(
     ${ATSPI_INCLUDE_DIRS}
     ${GLIB_INCLUDE_DIRS}
     ${GSTREAMER_INCLUDE_DIRS}
diff --git a/Tools/WebKitTestRunner/CMakeLists.txt b/Tools/WebKitTestRunner/CMakeLists.txt
index 7db90f2..a4f917f 100644
--- a/Tools/WebKitTestRunner/CMakeLists.txt
+++ b/Tools/WebKitTestRunner/CMakeLists.txt
@@ -116,7 +116,7 @@ GENERATE_BINDINGS(WebKitTestRunner_SOURCES
 WEBKIT_INCLUDE_CONFIG_FILES_IF_EXISTS()
 
 include_directories(${WebKitTestRunner_INCLUDE_DIRECTORIES})
-include_directories(SYSTEM ${WebKitTestRunner_SYSTEM_INCLUDE_DIRECTORIES})
+include_directories(${WebKitTestRunner_SYSTEM_INCLUDE_DIRECTORIES})
 
 add_library(TestRunnerInjectedBundle SHARED ${WebKitTestRunnerInjectedBundle_SOURCES})
 target_link_libraries(TestRunnerInjectedBundle ${WebKitTestRunner_LIBRARIES})
-- 
2.9.3

