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 5if (is_android) { 6 import("//build/config/android/config.gni") 7} 8 9config("password_manager_config") { 10 # Sync (not supported in Android WebView). 11 if (!is_android || !is_android_webview_build) { 12 defines = [ "PASSWORD_MANAGER_ENABLE_SYNC" ] 13 } 14} 15 16static_library("browser") { 17 sources = [ 18 "browser_save_password_progress_logger.cc", 19 "browser_save_password_progress_logger.h", 20 "log_receiver.h", 21 "log_router.cc", 22 "log_router.h", 23 "login_database.cc", 24 "login_database.h", 25 "login_database_mac.cc", 26 "login_database_posix.cc", 27 "login_database_win.cc", 28 "login_model.h", 29 "password_autofill_manager.cc", 30 "password_autofill_manager.h", 31 "password_form_manager.cc", 32 "password_form_manager.h", 33 "password_generation_manager.cc", 34 "password_generation_manager.h", 35 "password_manager.cc", 36 "password_manager.h", 37 "password_manager_client.cc", 38 "password_manager_client.h", 39 "password_manager_driver.h", 40 "password_manager_internals_service.cc", 41 "password_manager_internals_service.h", 42 "password_manager_metrics_util.cc", 43 "password_manager_metrics_util.h", 44 "password_store.cc", 45 "password_store.h", 46 "password_store_change.h", 47 "password_store_consumer.cc", 48 "password_store_consumer.h", 49 "password_store_default.cc", 50 "password_store_default.h", 51 "password_store_sync.cc", 52 "password_store_sync.h", 53 "psl_matching_helper.cc", 54 "psl_matching_helper.h", 55 "webdata/logins_table.cc", 56 "webdata/logins_table.h", 57 "webdata/logins_table_win.cc", 58 "webdata/password_web_data_service_win.cc", 59 "webdata/password_web_data_service_win.h", 60 ] 61 62 deps = [ 63 "//base", 64 "//components/autofill/core/common", 65 "//components/keyed_service/core", 66 "//components/os_crypt", 67 "//components/password_manager/core/common", 68 "//net", 69 "//sql", 70 "//url", 71 ] 72 73 if (is_mac) { 74 # TODO(blundell): Provide the iOS login DB implementation and then 75 # also exclude the POSIX one from iOS. http://crbug.com/341429 76 sources -= [ "login_database_posix.cc" ] 77 } else if (is_win) { 78 # TODO(jschuh): crbug.com/167187 fix size_t to int truncations. 79 cflags = [ "/wd4267" ] 80 } 81 82 public_configs = [ ":password_manager_config" ] 83 84 # Sync (not supported in Android WebView). 85 if (!is_android || !is_android_webview_build) { 86 sources += [ 87 "password_syncable_service.cc", 88 "password_syncable_service.h", 89 ] 90 deps += [ "//sync" ] 91 } 92} 93 94source_set("test_support") { 95 testonly = true 96 sources = [ 97 "mock_password_store.cc", 98 "mock_password_store.h", 99 "password_form_data.cc", 100 "password_form_data.h", 101 "stub_password_manager_client.cc", 102 "stub_password_manager_client.h", 103 "stub_password_manager_driver.cc", 104 "stub_password_manager_driver.h", 105 "test_password_store.cc", 106 "test_password_store.h", 107 ] 108 109 public_deps = [ 110 ":browser", 111 ] 112 deps = [ 113 "//base", 114 "//components/autofill/core/common", 115 "//testing/gmock", 116 "//testing/gtest", 117 ] 118} 119