Eliminate WebCore include paths when compiling Chromium code.

In the process of trying to do this, I discovered some unnecessary
config.h includes as well as some remaining WebCore function calls.

R=dglazkov
BUG=none
TEST=none

Review URL: http://codereview.chromium.org/1521010

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43574 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/DEPS b/DEPS
index 4f00401..d85f27cc 100644
--- a/DEPS
+++ b/DEPS
@@ -221,10 +221,6 @@
   # this should probably change.
   "+unicode",
   "+testing",
-
-  # Allow anybody to include files from the "public" Skia directory in the
-  # webkit port. This is shared between the webkit port and Chrome.
-  "+webkit/port/platform/graphics/skia/public",
 ]
 
 
diff --git a/chrome/chrome_browser.gypi b/chrome/chrome_browser.gypi
index c5f34f9a..a308197 100755
--- a/chrome/chrome_browser.gypi
+++ b/chrome/chrome_browser.gypi
@@ -33,6 +33,7 @@
         '../webkit/webkit.gyp:appcache',
         '../webkit/webkit.gyp:database',
         '../webkit/webkit.gyp:glue',
+        '../webkit/webkit.gyp:webkit_resources',
       ],
       'include_dirs': [
         '..',
@@ -3071,12 +3072,6 @@
             'browser/jumplist.cc',
           ],
         }],
-        # views depends on webkit headers.
-        ['OS=="win" or chromeos==1 or toolkit_views==1',{
-          'dependencies': [
-            '../third_party/WebKit/WebCore/WebCore.gyp/WebCore.gyp:webcore',
-          ],
-        }],
       ],
     },
     {
diff --git a/chrome/chrome_renderer.gypi b/chrome/chrome_renderer.gypi
index 252baee..9e80e36 100755
--- a/chrome/chrome_renderer.gypi
+++ b/chrome/chrome_renderer.gypi
@@ -20,11 +20,9 @@
         '../third_party/icu/icu.gyp:icui18n',
         '../third_party/icu/icu.gyp:icuuc',
         '../third_party/npapi/npapi.gyp:npapi',
-        # TODO(yaar): Should only stop depending on webcore and depend
-        # only on webkit.
-        '../third_party/WebKit/WebCore/WebCore.gyp/WebCore.gyp:webcore',
         '../third_party/WebKit/WebKit/chromium/WebKit.gyp:webkit',
         '../webkit/webkit.gyp:glue',
+        '../webkit/webkit.gyp:webkit_resources',
       ],
       'include_dirs': [
         '..',
diff --git a/chrome/renderer/render_thread.cc b/chrome/renderer/render_thread.cc
index 494af01e..a1e3a28 100644
--- a/chrome/renderer/render_thread.cc
+++ b/chrome/renderer/render_thread.cc
@@ -4,8 +4,6 @@
 
 #include "chrome/renderer/render_thread.h"
 
-#include <v8.h>
-
 #include <algorithm>
 #include <limits>
 #include <map>
@@ -80,6 +78,7 @@
 #include "webkit/extensions/v8/gears_extension.h"
 #include "webkit/extensions/v8/interval_extension.h"
 #include "webkit/extensions/v8/playback_extension.h"
+#include "v8/include/v8.h"
 
 #if defined(OS_WIN)
 #include <windows.h>
diff --git a/skia/ext/platform_canvas_unittest.cc b/skia/ext/platform_canvas_unittest.cc
index df3b65a13..2219d123 100644
--- a/skia/ext/platform_canvas_unittest.cc
+++ b/skia/ext/platform_canvas_unittest.cc
@@ -16,9 +16,6 @@
 
 #include "SkColor.h"
 
-// TODO(maruel): Removes once notImplemented() is not necessary anymore.
-#include "NotImplemented.h"
-
 namespace skia {
 
 namespace {
diff --git a/webkit/extensions/v8/benchmarking_extension.cc b/webkit/extensions/v8/benchmarking_extension.cc
index 0583f70..bac46773 100644
--- a/webkit/extensions/v8/benchmarking_extension.cc
+++ b/webkit/extensions/v8/benchmarking_extension.cc
@@ -2,12 +2,13 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "config.h"
-#include "Cache.h"
 #include "base/stats_table.h"
+#include "third_party/WebKit/WebKit/chromium/public/WebCache.h"
 #include "webkit/extensions/v8/benchmarking_extension.h"
 #include "webkit/glue/webkit_glue.h"
 
+using WebKit::WebCache;
+
 namespace extensions_v8 {
 
 const char* kBenchmarkingExtensionName = "v8/Benchmarking";
@@ -57,9 +58,7 @@
     // TODO(mbelshe): should be enable/disable?
     webkit_glue::SetCacheMode(false);
 
-    // Disabling and re-enabling the cache forces it to flush.
-    WebCore::cache()->setDisabled(true);
-    WebCore::cache()->setDisabled(false);
+    WebCache::clear();
     return v8::Undefined();
   }
 
diff --git a/webkit/extensions/v8/gc_extension.cc b/webkit/extensions/v8/gc_extension.cc
index 50fbc4df..87460118 100644
--- a/webkit/extensions/v8/gc_extension.cc
+++ b/webkit/extensions/v8/gc_extension.cc
@@ -2,7 +2,6 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "config.h"
 #include "webkit/extensions/v8/gc_extension.h"
 
 namespace extensions_v8 {
diff --git a/webkit/extensions/v8/gears_extension.cc b/webkit/extensions/v8/gears_extension.cc
index 5bcd6cd..200135d 100644
--- a/webkit/extensions/v8/gears_extension.cc
+++ b/webkit/extensions/v8/gears_extension.cc
@@ -2,7 +2,6 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "config.h"
 #include "webkit/extensions/v8/gears_extension.h"
 
 namespace extensions_v8 {
diff --git a/webkit/extensions/v8/interval_extension.cc b/webkit/extensions/v8/interval_extension.cc
index 3383c71a..95b69a5 100644
--- a/webkit/extensions/v8/interval_extension.cc
+++ b/webkit/extensions/v8/interval_extension.cc
@@ -2,7 +2,6 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "config.h"
 #include "webkit/extensions/v8/interval_extension.h"
 #include "base/time.h"
 
diff --git a/webkit/extensions/v8/playback_extension.cc b/webkit/extensions/v8/playback_extension.cc
index 42d0525..63838fb 100644
--- a/webkit/extensions/v8/playback_extension.cc
+++ b/webkit/extensions/v8/playback_extension.cc
@@ -2,7 +2,6 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "config.h"
 #include "webkit/extensions/v8/playback_extension.h"
 
 namespace extensions_v8 {
diff --git a/webkit/extensions/v8/profiler_extension.cc b/webkit/extensions/v8/profiler_extension.cc
index cbfc721..8f393d4 100644
--- a/webkit/extensions/v8/profiler_extension.cc
+++ b/webkit/extensions/v8/profiler_extension.cc
@@ -2,7 +2,6 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "config.h"
 #include "webkit/extensions/v8/profiler_extension.h"
 
 #include "base/profiler.h"
diff --git a/webkit/glue/webkit_glue.gypi b/webkit/glue/webkit_glue.gypi
index 765a642..58a582a6 100644
--- a/webkit/glue/webkit_glue.gypi
+++ b/webkit/glue/webkit_glue.gypi
@@ -111,7 +111,9 @@
       'dependencies': [
         '<(DEPTH)/app/app.gyp:app_base',
         '<(DEPTH)/net/net.gyp:net',
-        '<(webkit_src_dir)/WebCore/WebCore.gyp/WebCore.gyp:webcore',
+        '<(DEPTH)/third_party/icu/icu.gyp:icui18n',
+        '<(DEPTH)/third_party/icu/icu.gyp:icuuc',
+        '<(webkit_src_dir)/WebKit/chromium/WebKit.gyp:webkit',
         'webkit_resources',
         'webkit_strings',
       ],
diff --git a/webkit/tools/test_shell/image_decoder_unittest.cc b/webkit/tools/test_shell/image_decoder_unittest.cc
index 062a067..1ca545e 100644
--- a/webkit/tools/test_shell/image_decoder_unittest.cc
+++ b/webkit/tools/test_shell/image_decoder_unittest.cc
@@ -2,8 +2,6 @@
 // Use of this source code is governed by a BSD-style license that can be
 // found in the LICENSE file.
 
-#include "config.h"
-
 #include "webkit/tools/test_shell/image_decoder_unittest.h"
 
 #include "base/file_path.h"
diff --git a/webkit/tools/test_shell/image_decoder_unittest.h b/webkit/tools/test_shell/image_decoder_unittest.h
index 76fffee..103fb66 100644
--- a/webkit/tools/test_shell/image_decoder_unittest.h
+++ b/webkit/tools/test_shell/image_decoder_unittest.h
@@ -8,12 +8,6 @@
 #include <string>
 #include <vector>
 
-#if COMPILER(MSVC)
-#pragma warning(disable: 4355) // 'this' used in initializer list
-#endif
-
-#undef LOG
-
 #include "base/basictypes.h"
 #include "base/file_path.h"
 #include "base/scoped_ptr.h"
diff --git a/webkit/tools/test_shell/test_shell.gypi b/webkit/tools/test_shell/test_shell.gypi
index fe16c54..84c085f 100644
--- a/webkit/tools/test_shell/test_shell.gypi
+++ b/webkit/tools/test_shell/test_shell.gypi
@@ -36,13 +36,12 @@
         '<(DEPTH)/skia/skia.gyp:skia',
         '<(DEPTH)/testing/gmock.gyp:gmock',
         '<(DEPTH)/testing/gtest.gyp:gtest',
-        '<(DEPTH)/third_party/npapi/npapi.gyp:npapi',
-        '<(DEPTH)/third_party/WebKit/WebCore/WebCore.gyp/WebCore.gyp:webcore',
         '<(DEPTH)/third_party/WebKit/WebKit/chromium/WebKit.gyp:webkit',
         '<(DEPTH)/webkit/webkit.gyp:appcache',
         '<(DEPTH)/webkit/webkit.gyp:database',
         '<(DEPTH)/webkit/webkit.gyp:glue',
         '<(DEPTH)/webkit/webkit.gyp:inspector_resources',
+        '<(DEPTH)/webkit/webkit.gyp:webkit_resources',
         '<(DEPTH)/webkit/webkit.gyp:webkit_support',
         'npapi_layout_test_plugin',
       ],
@@ -118,7 +117,6 @@
       'export_dependent_settings': [
         '<(DEPTH)/base/base.gyp:base',
         '<(DEPTH)/net/net.gyp:net',
-        '<(DEPTH)/third_party/WebKit/WebCore/WebCore.gyp/WebCore.gyp:webcore',
         '<(DEPTH)/third_party/WebKit/WebKit/chromium/WebKit.gyp:webkit',
         '<(DEPTH)/webkit/webkit.gyp:glue',
       ],
@@ -238,6 +236,7 @@
       'dependencies': [
         'test_shell_common',
         '<(DEPTH)/net/net.gyp:net_test_support',
+        '<(DEPTH)/skia/skia.gyp:skia',
         '<(DEPTH)/tools/imagediff/image_diff.gyp:image_diff',
       ],
       'defines': [
diff --git a/webkit/tools/test_shell/test_shell_main.cc b/webkit/tools/test_shell/test_shell_main.cc
index ee194a58..9dc8108 100644
--- a/webkit/tools/test_shell/test_shell_main.cc
+++ b/webkit/tools/test_shell/test_shell_main.cc
@@ -39,6 +39,10 @@
 #include "webkit/tools/test_shell/test_shell_switches.h"
 #include "webkit/tools/test_shell/test_shell_webkit_init.h"
 
+#if defined(OS_WIN)
+#pragma warning(disable: 4996)
+#endif
+
 static const size_t kPathBufSize = 2048;
 
 using WebKit::WebScriptController;
diff --git a/webkit/tools/test_shell/test_shell_platform_delegate_mac.mm b/webkit/tools/test_shell/test_shell_platform_delegate_mac.mm
index be7f9c2..b02da7d 100644
--- a/webkit/tools/test_shell/test_shell_platform_delegate_mac.mm
+++ b/webkit/tools/test_shell/test_shell_platform_delegate_mac.mm
@@ -13,10 +13,10 @@
 #include "base/chrome_application_mac.h"
 #include "base/command_line.h"
 #include "base/logging.h"
+#include "third_party/WebKit/WebKit/mac/WebCoreSupport/WebSystemInterface.h"
 #include "webkit/tools/test_shell/test_shell.h"
 #include "webkit/tools/test_shell/test_shell_platform_delegate.h"
 #include "webkit/tools/test_shell/test_shell_switches.h"
-#include "WebSystemInterface.h"
 
 static NSAutoreleasePool *gTestShellAutoreleasePool = nil;
 
diff --git a/webkit/tools/webcore_unit_tests/BMPImageDecoder_unittest.cpp b/webkit/tools/webcore_unit_tests/BMPImageDecoder_unittest.cpp
index ea51d01..8c7e0830 100644
--- a/webkit/tools/webcore_unit_tests/BMPImageDecoder_unittest.cpp
+++ b/webkit/tools/webcore_unit_tests/BMPImageDecoder_unittest.cpp
@@ -1,32 +1,6 @@
-// Copyright (c) 2008, Google Inc. All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#include "config.h"
+// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
 
 #include "third_party/WebKit/WebKit/chromium/public/WebImageDecoder.h"
 #include "webkit/tools/test_shell/image_decoder_unittest.h"
diff --git a/webkit/tools/webcore_unit_tests/ICOImageDecoder_unittest.cpp b/webkit/tools/webcore_unit_tests/ICOImageDecoder_unittest.cpp
index cce64dd..6e1859b2 100644
--- a/webkit/tools/webcore_unit_tests/ICOImageDecoder_unittest.cpp
+++ b/webkit/tools/webcore_unit_tests/ICOImageDecoder_unittest.cpp
@@ -1,33 +1,6 @@
-// Copyright (c) 2008, Google Inc.
-// All rights reserved.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#include "config.h"
+// Copyright (c) 2010 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
 
 #include "base/file_path.h"
 #include "base/file_util.h"