| Index: components/prefs/BUILD.gn | 
| diff --git a/components/prefs/BUILD.gn b/components/prefs/BUILD.gn | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..9b89e320e7a2675b1418e2a64ebb0e6abe9d6c51 | 
| --- /dev/null | 
| +++ b/components/prefs/BUILD.gn | 
| @@ -0,0 +1,106 @@ | 
| +# 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. | 
| + | 
| +component("prefs") { | 
| +  sources = [ | 
| +    "default_pref_store.cc", | 
| +    "default_pref_store.h", | 
| +    "json_pref_store.cc", | 
| +    "json_pref_store.h", | 
| +    "overlay_user_pref_store.cc", | 
| +    "overlay_user_pref_store.h", | 
| +    "pref_change_registrar.cc", | 
| +    "pref_change_registrar.h", | 
| +    "pref_member.cc", | 
| +    "pref_member.h", | 
| +    "pref_notifier_impl.cc", | 
| +    "pref_notifier_impl.h", | 
| +    "pref_registry.cc", | 
| +    "pref_registry.h", | 
| +    "pref_registry_simple.cc", | 
| +    "pref_registry_simple.h", | 
| +    "pref_service.cc", | 
| +    "pref_service.h", | 
| +    "pref_service_factory.cc", | 
| +    "pref_service_factory.h", | 
| +    "pref_store.cc", | 
| +    "pref_store.h", | 
| +    "pref_value_map.cc", | 
| +    "pref_value_map.h", | 
| +    "pref_value_store.cc", | 
| +    "pref_value_store.h", | 
| +    "scoped_user_pref_update.cc", | 
| +    "scoped_user_pref_update.h", | 
| +    "value_map_pref_store.cc", | 
| +    "value_map_pref_store.h", | 
| +  ] | 
| +  if (!is_ios) { | 
| +    sources += [ | 
| +      "base_prefs_export.h", | 
| +      "persistent_pref_store.h", | 
| +      "pref_filter.h", | 
| +      "pref_notifier.h", | 
| +      "pref_observer.h", | 
| +      "writeable_pref_store.h", | 
| +    ] | 
| +  } | 
| + | 
| +  defines = [ "BASE_PREFS_IMPLEMENTATION" ] | 
| + | 
| +  deps = [ | 
| +    "//base", | 
| +  ] | 
| + | 
| +  if (!is_debug) { | 
| +    configs -= [ "//build/config/compiler:default_optimization" ] | 
| +    configs += [ "//build/config/compiler:optimize_max" ] | 
| +  } | 
| +} | 
| + | 
| +source_set("test_support") { | 
| +  testonly = true | 
| +  sources = [ | 
| +    "mock_pref_change_callback.cc", | 
| +    "mock_pref_change_callback.h", | 
| +    "pref_store_observer_mock.cc", | 
| +    "pref_store_observer_mock.h", | 
| +    "testing_pref_service.cc", | 
| +    "testing_pref_service.h", | 
| +    "testing_pref_store.cc", | 
| +    "testing_pref_store.h", | 
| +  ] | 
| + | 
| +  public_deps = [ | 
| +    ":prefs", | 
| +  ] | 
| +  deps = [ | 
| +    "//base", | 
| +    "//testing/gmock", | 
| +    "//testing/gtest", | 
| +  ] | 
| +} | 
| + | 
| +source_set("unit_tests") { | 
| +  testonly = true | 
| +  sources = [ | 
| +    "default_pref_store_unittest.cc", | 
| +    "json_pref_store_unittest.cc", | 
| +    "overlay_user_pref_store_unittest.cc", | 
| +    "pref_change_registrar_unittest.cc", | 
| +    "pref_member_unittest.cc", | 
| +    "pref_notifier_impl_unittest.cc", | 
| +    "pref_service_unittest.cc", | 
| +    "pref_value_map_unittest.cc", | 
| +    "pref_value_store_unittest.cc", | 
| +    "scoped_user_pref_update_unittest.cc", | 
| +  ] | 
| + | 
| +  deps = [ | 
| +    ":test_support", | 
| +    "//base", | 
| +    "//base/test:test_support", | 
| +    "//testing/gmock", | 
| +    "//testing/gtest", | 
| +  ] | 
| +} | 
|  |