1# Copyright 2014 The Chromium Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5config("storage_config") {
6  if (is_android) {
7    defines = [ "APPCACHE_USE_SIMPLE_CACHE" ]
8  }
9}
10
11component("storage") {
12  output_name = "webkit_storage_browser"
13  sources = [
14    "webkit_storage_browser_export.h",
15    "appcache/appcache.cc",
16    "appcache/appcache.h",
17    "appcache/appcache_backend_impl.cc",
18    "appcache/appcache_backend_impl.h",
19    "appcache/appcache_database.cc",
20    "appcache/appcache_database.h",
21    "appcache/appcache_disk_cache.cc",
22    "appcache/appcache_disk_cache.h",
23    "appcache/appcache_entry.h",
24    "appcache/appcache_executable_handler.h",
25    "appcache/appcache_group.cc",
26    "appcache/appcache_group.h",
27    "appcache/appcache_histograms.cc",
28    "appcache/appcache_histograms.h",
29    "appcache/appcache_host.cc",
30    "appcache/appcache_host.h",
31    "appcache/appcache_policy.h",
32    "appcache/appcache_quota_client.cc",
33    "appcache/appcache_quota_client.h",
34    "appcache/appcache_request_handler.cc",
35    "appcache/appcache_request_handler.h",
36    "appcache/appcache_response.cc",
37    "appcache/appcache_response.h",
38    "appcache/appcache_service_impl.cc",
39    "appcache/appcache_service_impl.h",
40    "appcache/appcache_service.h",
41    "appcache/appcache_storage.cc",
42    "appcache/appcache_storage.h",
43    "appcache/appcache_storage_impl.cc",
44    "appcache/appcache_storage_impl.h",
45    "appcache/appcache_working_set.cc",
46    "appcache/appcache_working_set.h",
47    "appcache/appcache_update_job.cc",
48    "appcache/appcache_update_job.h",
49    "appcache/appcache_url_request_job.cc",
50    "appcache/appcache_url_request_job.h",
51    "appcache/manifest_parser.cc",
52    "appcache/manifest_parser.h",
53    "blob/blob_data_handle.cc",
54    "blob/blob_data_handle.h",
55    "blob/blob_storage_context.cc",
56    "blob/blob_storage_context.h",
57    "blob/blob_url_request_job.cc",
58    "blob/blob_url_request_job.h",
59    "blob/blob_url_request_job_factory.cc",
60    "blob/blob_url_request_job_factory.h",
61    "blob/file_stream_reader.cc",
62    "blob/file_stream_reader.h",
63    "blob/local_file_stream_reader.cc",
64    "blob/local_file_stream_reader.h",
65    "blob/view_blob_internals_job.cc",
66    "blob/view_blob_internals_job.h",
67    "database/database_quota_client.cc",
68    "database/database_quota_client.h",
69    "database/database_tracker.cc",
70    "database/database_tracker.h",
71    "database/database_util.cc",
72    "database/database_util.h",
73    "database/databases_table.cc",
74    "database/databases_table.h",
75    "database/vfs_backend.cc",
76    "database/vfs_backend.h",
77    "fileapi/async_file_util.h",
78    "fileapi/async_file_util_adapter.cc",
79    "fileapi/async_file_util_adapter.h",
80    "fileapi/copy_or_move_file_validator.h",
81    "fileapi/copy_or_move_operation_delegate.cc",
82    "fileapi/copy_or_move_operation_delegate.h",
83    "fileapi/dragged_file_util.cc",
84    "fileapi/dragged_file_util.h",
85    "fileapi/external_mount_points.cc",
86    "fileapi/external_mount_points.h",
87    "fileapi/file_observers.h",
88    "fileapi/file_permission_policy.h",
89    "fileapi/file_stream_writer.h",
90    "fileapi/file_system_backend.h",
91    "fileapi/file_system_context.cc",
92    "fileapi/file_system_context.h",
93    "fileapi/file_system_dir_url_request_job.cc",
94    "fileapi/file_system_dir_url_request_job.h",
95    "fileapi/file_system_file_stream_reader.cc",
96    "fileapi/file_system_file_stream_reader.h",
97    "fileapi/file_system_file_util.cc",
98    "fileapi/file_system_file_util.h",
99    "fileapi/file_system_operation.h",
100    "fileapi/file_system_operation_context.cc",
101    "fileapi/file_system_operation_context.h",
102    "fileapi/file_system_operation_impl.cc",
103    "fileapi/file_system_operation_impl.h",
104    "fileapi/file_system_operation_runner.cc",
105    "fileapi/file_system_operation_runner.h",
106    "fileapi/file_system_options.cc",
107    "fileapi/file_system_options.h",
108    "fileapi/file_system_quota_client.cc",
109    "fileapi/file_system_quota_client.h",
110    "fileapi/file_system_quota_util.h",
111    "fileapi/file_system_url.cc",
112    "fileapi/file_system_url.h",
113    "fileapi/file_system_url_request_job.cc",
114    "fileapi/file_system_url_request_job.h",
115    "fileapi/file_system_url_request_job_factory.cc",
116    "fileapi/file_system_url_request_job_factory.h",
117    "fileapi/file_system_usage_cache.cc",
118    "fileapi/file_system_usage_cache.h",
119    "fileapi/file_writer_delegate.cc",
120    "fileapi/file_writer_delegate.h",
121    "fileapi/isolated_context.cc",
122    "fileapi/isolated_context.h",
123    "fileapi/isolated_file_system_backend.cc",
124    "fileapi/isolated_file_system_backend.h",
125    "fileapi/local_file_stream_writer.cc",
126    "fileapi/local_file_stream_writer.h",
127    "fileapi/local_file_util.cc",
128    "fileapi/local_file_util.h",
129    "fileapi/mount_points.cc",
130    "fileapi/mount_points.h",
131    "fileapi/native_file_util.cc",
132    "fileapi/native_file_util.h",
133    "fileapi/obfuscated_file_util.cc",
134    "fileapi/obfuscated_file_util.h",
135    "fileapi/open_file_system_mode.h",
136    "fileapi/plugin_private_file_system_backend.cc",
137    "fileapi/plugin_private_file_system_backend.h",
138    "fileapi/quota/open_file_handle.cc",
139    "fileapi/quota/open_file_handle.h",
140    "fileapi/quota/open_file_handle_context.cc",
141    "fileapi/quota/open_file_handle_context.h",
142    "fileapi/quota/quota_backend_impl.cc",
143    "fileapi/quota/quota_backend_impl.h",
144    "fileapi/quota/quota_reservation.cc",
145    "fileapi/quota/quota_reservation.h",
146    "fileapi/quota/quota_reservation_buffer.cc",
147    "fileapi/quota/quota_reservation_buffer.h",
148    "fileapi/quota/quota_reservation_manager.cc",
149    "fileapi/quota/quota_reservation_manager.h",
150    "fileapi/recursive_operation_delegate.cc",
151    "fileapi/recursive_operation_delegate.h",
152    "fileapi/remove_operation_delegate.cc",
153    "fileapi/remove_operation_delegate.h",
154    "fileapi/sandbox_directory_database.cc",
155    "fileapi/sandbox_directory_database.h",
156    "fileapi/sandbox_file_stream_writer.cc",
157    "fileapi/sandbox_file_stream_writer.h",
158    "fileapi/sandbox_file_system_backend.cc",
159    "fileapi/sandbox_file_system_backend.h",
160    "fileapi/sandbox_file_system_backend_delegate.cc",
161    "fileapi/sandbox_file_system_backend_delegate.h",
162    "fileapi/sandbox_isolated_origin_database.cc",
163    "fileapi/sandbox_isolated_origin_database.h",
164    "fileapi/sandbox_origin_database.cc",
165    "fileapi/sandbox_origin_database.h",
166    "fileapi/sandbox_origin_database_interface.cc",
167    "fileapi/sandbox_origin_database_interface.h",
168    "fileapi/sandbox_prioritized_origin_database.cc",
169    "fileapi/sandbox_prioritized_origin_database.h",
170    "fileapi/sandbox_quota_observer.cc",
171    "fileapi/sandbox_quota_observer.h",
172    "fileapi/task_runner_bound_observer_list.h",
173    "fileapi/timed_task_helper.cc",
174    "fileapi/timed_task_helper.h",
175    "fileapi/transient_file_util.cc",
176    "fileapi/transient_file_util.h",
177    "quota/quota_callbacks.h",
178    "quota/quota_client.h",
179    "quota/quota_database.cc",
180    "quota/quota_database.h",
181    "quota/quota_manager.cc",
182    "quota/quota_manager.h",
183    "quota/quota_manager_proxy.cc",
184    "quota/quota_manager_proxy.h",
185    "quota/quota_task.cc",
186    "quota/quota_task.h",
187    "quota/quota_temporary_storage_evictor.cc",
188    "quota/quota_temporary_storage_evictor.h",
189    "quota/special_storage_policy.cc",
190    "quota/special_storage_policy.h",
191    "quota/storage_monitor.cc",
192    "quota/storage_monitor.h",
193    "quota/storage_observer.cc",
194    "quota/storage_observer.h",
195    "quota/usage_tracker.cc",
196    "quota/usage_tracker.h",
197  ]
198
199  defines = [ "WEBKIT_STORAGE_BROWSER_IMPLEMENTATION" ]
200  configs += [ "//build/config/compiler:wexit_time_destructors" ]
201  direct_dependent_configs = [ ":storage_config" ]
202  if (is_win) {
203    cflags = [ "/wd4267" ]  # TODO(jschuh): fix size_t to int truncations.
204  }
205
206  deps = [
207    "//base",
208    "//base:i18n",
209    "//base/third_party/dynamic_annotations",
210    "//net",
211    "//sql",
212    "//third_party/leveldatabase",
213    "//third_party/sqlite",
214    "//url",
215    "//webkit/common",
216    "//webkit/common:storage",
217  ]
218
219  # TODO(GYP) support chrome_multiple_dll
220  #['chrome_multiple_dll!=1', {
221  #  'dependencies': [
222  #    '<(DEPTH)/third_party/WebKit/public/blink.gyp:blink',
223  #  ],
224  #}],
225}
226
227executable("dump_file_system") {
228  sources = [
229    "fileapi/dump_file_system.cc",
230  ]
231
232  deps = [
233    ":storage",
234    "//base",
235    "//webkit/common:storage",
236  ]
237}
238