summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortfarina <tfarina@chromium.org>2015-04-28 12:04:16 -0700
committerCommit bot <commit-bot@chromium.org>2015-04-28 19:04:55 +0000
commit15525c4fa7633018873aa4fec407a14c5cf64840 (patch)
treefd85c6b087a7c9a2c08494970703058bce25a992
parentcd4ff3af3ba883510a0fe1f802c35210c44247cb (diff)
downloadchromium_src-15525c4fa7633018873aa4fec407a14c5cf64840.zip
chromium_src-15525c4fa7633018873aa4fec407a14c5cf64840.tar.gz
chromium_src-15525c4fa7633018873aa4fec407a14c5cf64840.tar.bz2
gpu: Fix dependency cycle between service_sources and config_sources.
ERROR Dependency cycle: //gpu/command_buffer/service:service_sources -> //gpu/config:config_sources -> //gpu/command_buffer/service:service_sources The problem was that gpu/command_buffer/service already include from gpu/config, but gpu/config were also including from gpu/command_buffer/service for gpu_switches.h, creating the above dependency cycle. By moving the required switch down to gpu/config, we broke this dependency cycle. With that 'gn check' passes for gpu/config with the following command lines: $ gn gen out-gn/Debug $ gn check out-gn/Debug //gpu/config/* gpu/command_buffer/service needs more work to pass 'gn check' though. BUG=367595,376000 TEST=see above R=sievers@chromium.org Review URL: https://codereview.chromium.org/1103403002 Cr-Commit-Position: refs/heads/master@{#327344}
-rw-r--r--content/browser/gpu/gpu_data_manager_impl_private.cc1
-rw-r--r--content/browser/gpu/gpu_data_manager_impl_private_unittest.cc2
-rw-r--r--content/gpu/gpu_main.cc1
-rw-r--r--gpu/command_buffer/service/BUILD.gn1
-rw-r--r--gpu/command_buffer/service/feature_info.cc1
-rw-r--r--gpu/command_buffer/service/feature_info_unittest.cc2
-rw-r--r--gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc2
-rw-r--r--gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc2
-rw-r--r--gpu/command_buffer/service/gles2_cmd_decoder_unittest_programs.cc3
-rw-r--r--gpu/command_buffer/service/gles2_cmd_decoder_unittest_textures.cc3
-rw-r--r--gpu/command_buffer/service/gpu_switches.cc6
-rw-r--r--gpu/command_buffer/service/gpu_switches.h3
-rw-r--r--gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc2
-rw-r--r--gpu/config/BUILD.gn3
-rw-r--r--gpu/config/gpu_switches.cc12
-rw-r--r--gpu/config/gpu_switches.h16
-rw-r--r--gpu/config/gpu_util.cc2
-rw-r--r--gpu/gpu.gyp1
-rw-r--r--gpu/gpu_config.gypi2
19 files changed, 48 insertions, 17 deletions
diff --git a/content/browser/gpu/gpu_data_manager_impl_private.cc b/content/browser/gpu/gpu_data_manager_impl_private.cc
index 1362375..68d4974 100644
--- a/content/browser/gpu/gpu_data_manager_impl_private.cc
+++ b/content/browser/gpu/gpu_data_manager_impl_private.cc
@@ -29,6 +29,7 @@
#include "gpu/config/gpu_driver_bug_workaround_type.h"
#include "gpu/config/gpu_feature_type.h"
#include "gpu/config/gpu_info_collector.h"
+#include "gpu/config/gpu_switches.h"
#include "gpu/config/gpu_util.h"
#include "ui/base/ui_base_switches.h"
#include "ui/gl/gl_implementation.h"
diff --git a/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc b/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc
index 8bcb010..41223ac 100644
--- a/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc
+++ b/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc
@@ -8,9 +8,9 @@
#include "base/time/time.h"
#include "content/browser/gpu/gpu_data_manager_impl_private.h"
#include "content/public/browser/gpu_data_manager_observer.h"
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/config/gpu_feature_type.h"
#include "gpu/config/gpu_info.h"
+#include "gpu/config/gpu_switches.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "url/gurl.h"
diff --git a/content/gpu/gpu_main.cc b/content/gpu/gpu_main.cc
index 1b16afe..eebb732 100644
--- a/content/gpu/gpu_main.cc
+++ b/content/gpu/gpu_main.cc
@@ -35,6 +35,7 @@
#include "content/public/common/main_function_params.h"
#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/config/gpu_info_collector.h"
+#include "gpu/config/gpu_switches.h"
#include "gpu/config/gpu_util.h"
#include "ui/events/platform/platform_event_source.h"
#include "ui/gl/gl_implementation.h"
diff --git a/gpu/command_buffer/service/BUILD.gn b/gpu/command_buffer/service/BUILD.gn
index 4d71c71..ab25805 100644
--- a/gpu/command_buffer/service/BUILD.gn
+++ b/gpu/command_buffer/service/BUILD.gn
@@ -149,6 +149,7 @@ source_set("service_sources") {
"//base",
"//base/third_party/dynamic_annotations",
"//crypto",
+ "//gpu/config:config_sources",
"//third_party/angle:translator",
"//third_party/protobuf:protobuf_lite",
"//third_party/re2",
diff --git a/gpu/command_buffer/service/feature_info.cc b/gpu/command_buffer/service/feature_info.cc
index 098ab64..bea43c5 100644
--- a/gpu/command_buffer/service/feature_info.cc
+++ b/gpu/command_buffer/service/feature_info.cc
@@ -14,6 +14,7 @@
#include "base/strings/string_util.h"
#include "gpu/command_buffer/service/gl_utils.h"
#include "gpu/command_buffer/service/gpu_switches.h"
+#include "gpu/config/gpu_switches.h"
#include "ui/gl/gl_fence.h"
#include "ui/gl/gl_implementation.h"
diff --git a/gpu/command_buffer/service/feature_info_unittest.cc b/gpu/command_buffer/service/feature_info_unittest.cc
index a32eec9..4e7b1d5 100644
--- a/gpu/command_buffer/service/feature_info_unittest.cc
+++ b/gpu/command_buffer/service/feature_info_unittest.cc
@@ -8,10 +8,10 @@
#include "base/memory/scoped_ptr.h"
#include "base/strings/string_number_conversions.h"
#include "gpu/command_buffer/service/gpu_service_test.h"
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/service/test_helper.h"
#include "gpu/command_buffer/service/texture_manager.h"
#include "gpu/config/gpu_driver_bug_workaround_type.h"
+#include "gpu/config/gpu_switches.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_fence.h"
#include "ui/gl/gl_implementation.h"
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
index d3a20b3..e65d006 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc
@@ -16,12 +16,12 @@
#include "gpu/command_buffer/service/context_state.h"
#include "gpu/command_buffer/service/gl_surface_mock.h"
#include "gpu/command_buffer/service/gles2_cmd_decoder.h"
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/service/image_manager.h"
#include "gpu/command_buffer/service/mailbox_manager.h"
#include "gpu/command_buffer/service/mocks.h"
#include "gpu/command_buffer/service/program_manager.h"
#include "gpu/command_buffer/service/test_helper.h"
+#include "gpu/config/gpu_switches.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_implementation.h"
#include "ui/gl/gl_mock.h"
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc
index 87e95b7..bb0286d 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_drawing.cc
@@ -17,12 +17,12 @@
#include "gpu/command_buffer/service/gl_surface_mock.h"
#include "gpu/command_buffer/service/gles2_cmd_decoder_unittest.h"
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/service/image_manager.h"
#include "gpu/command_buffer/service/mailbox_manager.h"
#include "gpu/command_buffer/service/mocks.h"
#include "gpu/command_buffer/service/program_manager.h"
#include "gpu/command_buffer/service/test_helper.h"
+#include "gpu/config/gpu_switches.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_implementation.h"
#include "ui/gl/gl_mock.h"
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_programs.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_programs.cc
index afb9fc7..d63f8a2 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_programs.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_programs.cc
@@ -16,13 +16,12 @@
#include "gpu/command_buffer/service/context_state.h"
#include "gpu/command_buffer/service/gl_surface_mock.h"
#include "gpu/command_buffer/service/gles2_cmd_decoder_unittest.h"
-
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/service/image_manager.h"
#include "gpu/command_buffer/service/mailbox_manager.h"
#include "gpu/command_buffer/service/mocks.h"
#include "gpu/command_buffer/service/program_manager.h"
#include "gpu/command_buffer/service/test_helper.h"
+#include "gpu/config/gpu_switches.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_implementation.h"
#include "ui/gl/gl_mock.h"
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_textures.cc b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_textures.cc
index 259072f..6d35f3d 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_textures.cc
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_textures.cc
@@ -17,13 +17,12 @@
#include "gpu/command_buffer/service/context_state.h"
#include "gpu/command_buffer/service/gl_surface_mock.h"
#include "gpu/command_buffer/service/gles2_cmd_decoder_unittest.h"
-
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/service/image_manager.h"
#include "gpu/command_buffer/service/mailbox_manager.h"
#include "gpu/command_buffer/service/mocks.h"
#include "gpu/command_buffer/service/program_manager.h"
#include "gpu/command_buffer/service/test_helper.h"
+#include "gpu/config/gpu_switches.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "ui/gl/gl_image_stub.h"
#include "ui/gl/gl_implementation.h"
diff --git a/gpu/command_buffer/service/gpu_switches.cc b/gpu/command_buffer/service/gpu_switches.cc
index 2e4e083..d2ca490 100644
--- a/gpu/command_buffer/service/gpu_switches.cc
+++ b/gpu/command_buffer/service/gpu_switches.cc
@@ -3,7 +3,8 @@
// found in the LICENSE file.
#include "gpu/command_buffer/service/gpu_switches.h"
-#include "base/basictypes.h"
+
+#include "base/macros.h"
namespace switches {
@@ -43,9 +44,6 @@ const char kEnforceGLMinimums[] = "enforce-gl-minimums";
// Sets the total amount of memory that may be allocated for GPU resources
const char kForceGpuMemAvailableMb[] = "force-gpu-mem-available-mb";
-// Pass a set of GpuDriverBugWorkaroundType ids, seperated by ','.
-const char kGpuDriverBugWorkarounds[] = "gpu-driver-bug-workarounds";
-
// Sets the maximum size of the in-memory gpu program cache, in kb
const char kGpuProgramCacheSizeKb[] = "gpu-program-cache-size-kb";
diff --git a/gpu/command_buffer/service/gpu_switches.h b/gpu/command_buffer/service/gpu_switches.h
index 47364a10..ac6883a 100644
--- a/gpu/command_buffer/service/gpu_switches.h
+++ b/gpu/command_buffer/service/gpu_switches.h
@@ -7,6 +7,7 @@
#ifndef GPU_COMMAND_BUFFER_SERVICE_GPU_SWITCHES_H_
#define GPU_COMMAND_BUFFER_SERVICE_GPU_SWITCHES_H_
+#include "gpu/config/gpu_switches.h"
#include "gpu/gpu_export.h"
namespace switches {
@@ -22,7 +23,6 @@ GPU_EXPORT extern const char kEnableGPUServiceLoggingGPU[];
GPU_EXPORT extern const char kDisableGpuProgramCache[];
GPU_EXPORT extern const char kEnforceGLMinimums[];
GPU_EXPORT extern const char kForceGpuMemAvailableMb[];
-GPU_EXPORT extern const char kGpuDriverBugWorkarounds[];
GPU_EXPORT extern const char kGpuProgramCacheSizeKb[];
GPU_EXPORT extern const char kDisableGpuShaderDiskCache[];
GPU_EXPORT extern const char kEnableShareGroupAsyncTextureUpload[];
@@ -37,4 +37,3 @@ GPU_EXPORT extern const int kNumGpuSwitches;
} // namespace switches
#endif // GPU_COMMAND_BUFFER_SERVICE_GPU_SWITCHES_H_
-
diff --git a/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc b/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
index fdad315..3ce80f9 100644
--- a/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
+++ b/gpu/command_buffer/tests/gl_clear_framebuffer_unittest.cc
@@ -14,9 +14,9 @@
#include "base/command_line.h"
#include "base/strings/string_number_conversions.h"
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/command_buffer/tests/gl_manager.h"
#include "gpu/command_buffer/tests/gl_test_utils.h"
+#include "gpu/config/gpu_switches.h"
#include "testing/gmock/include/gmock/gmock.h"
#include "testing/gtest/include/gtest/gtest.h"
diff --git a/gpu/config/BUILD.gn b/gpu/config/BUILD.gn
index add90ec..0a2c135 100644
--- a/gpu/config/BUILD.gn
+++ b/gpu/config/BUILD.gn
@@ -49,6 +49,8 @@ source_set("config_sources") {
"gpu_info_collector_ozone.cc",
"gpu_info_collector_win.cc",
"gpu_info_collector_x11.cc",
+ "gpu_switches.cc",
+ "gpu_switches.h",
"gpu_test_config.cc",
"gpu_test_config.h",
"gpu_test_expectations_parser.cc",
@@ -66,7 +68,6 @@ source_set("config_sources") {
deps = [
"//base",
- "//gpu/command_buffer/service:service_sources",
"//third_party/re2",
"//ui/gl",
]
diff --git a/gpu/config/gpu_switches.cc b/gpu/config/gpu_switches.cc
new file mode 100644
index 0000000..fdf9f0e
--- /dev/null
+++ b/gpu/config/gpu_switches.cc
@@ -0,0 +1,12 @@
+// Copyright 2015 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 "gpu/config/gpu_switches.h"
+
+namespace switches {
+
+// Pass a set of GpuDriverBugWorkaroundType ids, seperated by ','.
+const char kGpuDriverBugWorkarounds[] = "gpu-driver-bug-workarounds";
+
+} // namespace switches
diff --git a/gpu/config/gpu_switches.h b/gpu/config/gpu_switches.h
new file mode 100644
index 0000000..f6375ca
--- /dev/null
+++ b/gpu/config/gpu_switches.h
@@ -0,0 +1,16 @@
+// Copyright 2015 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.
+
+#ifndef GPU_CONFIG_GPU_SWITCHES_H_
+#define GPU_CONFIG_GPU_SWITCHES_H_
+
+#include "gpu/gpu_export.h"
+
+namespace switches {
+
+GPU_EXPORT extern const char kGpuDriverBugWorkarounds[];
+
+} // namespace switches
+
+#endif // GPU_CONFIG_GPU_SWITCHES_H_
diff --git a/gpu/config/gpu_util.cc b/gpu/config/gpu_util.cc
index 0fb8a7f..5d67988 100644
--- a/gpu/config/gpu_util.cc
+++ b/gpu/config/gpu_util.cc
@@ -10,10 +10,10 @@
#include "base/logging.h"
#include "base/strings/string_number_conversions.h"
#include "base/strings/string_split.h"
-#include "gpu/command_buffer/service/gpu_switches.h"
#include "gpu/config/gpu_control_list_jsons.h"
#include "gpu/config/gpu_driver_bug_list.h"
#include "gpu/config/gpu_info_collector.h"
+#include "gpu/config/gpu_switches.h"
#include "ui/gl/gl_switches.h"
namespace gpu {
diff --git a/gpu/gpu.gyp b/gpu/gpu.gyp
index 9b50458..6e1874d 100644
--- a/gpu/gpu.gyp
+++ b/gpu/gpu.gyp
@@ -505,6 +505,7 @@
'dependencies': [
'command_buffer_common',
'disk_cache_proto',
+ 'gpu_config',
],
# TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
'msvs_disabled_warnings': [4267, ],
diff --git a/gpu/gpu_config.gypi b/gpu/gpu_config.gypi
index 2b94403..6869199 100644
--- a/gpu/gpu_config.gypi
+++ b/gpu/gpu_config.gypi
@@ -36,6 +36,8 @@
'config/gpu_info_collector_ozone.cc',
'config/gpu_info_collector_win.cc',
'config/gpu_info_collector_x11.cc',
+ 'config/gpu_switches.cc',
+ 'config/gpu_switches.h',
'config/gpu_test_config.cc',
'config/gpu_test_config.h',
'config/gpu_test_expectations_parser.cc',