# Copyright 2014 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.

# GYP version: storage/storage_common.gyp:storage_common
component("common") {
  output_name = "storage_common"
  sources = [
    "blob_storage/blob_item_bytes_request.cc",
    "blob_storage/blob_item_bytes_request.h",
    "blob_storage/blob_item_bytes_response.cc",
    "blob_storage/blob_item_bytes_response.h",
    "blob_storage/blob_storage_constants.h",
    "data_element.cc",
    "data_element.h",
    "database/database_connections.cc",
    "database/database_connections.h",
    "database/database_identifier.cc",
    "database/database_identifier.h",
    "fileapi/directory_entry.cc",
    "fileapi/directory_entry.h",
    "fileapi/file_system_info.cc",
    "fileapi/file_system_info.h",
    "fileapi/file_system_mount_option.h",
    "fileapi/file_system_types.h",
    "fileapi/file_system_util.cc",
    "fileapi/file_system_util.h",
    "quota/quota_status_code.cc",
    "quota/quota_status_code.h",
    "quota/quota_types.h",
    "storage_common_export.h",
  ]

  # TODO(jschuh): crbug.com/167187 fix size_t to int truncations.
  configs += [ "//build/config/compiler:no_size_t_to_int_warning" ]

  defines = [ "STORAGE_COMMON_IMPLEMENTATION" ]

  deps = [
    "//base",
    "//base/third_party/dynamic_annotations",
    "//net",
    "//third_party/WebKit/public:blink_headers",
    "//url",
  ]
}
