| # Copyright 2020 The Chromium Authors |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//build/buildflag_header.gni") |
| import("//build/config/ios/ios_sdk.gni") |
| import("//ios/build/chrome_build.gni") |
| |
| buildflag_header("buildflags") { |
| header = "credential_provider_buildflags.h" |
| flags = [ |
| "IOS_CREDENTIAL_EXCHANGE_ENABLED=$ios_cpe_enable_credential_exchange", |
| "IOS_CREDENTIAL_PROVIDER_ENABLED=$ios_enable_credential_provider_extension", |
| ] |
| } |
| |
| if (ios_enable_credential_provider_extension) { |
| source_set("model") { |
| sources = [ |
| "archivable_credential+password_form.h", |
| "archivable_credential+password_form.mm", |
| "credential_provider_browser_agent.h", |
| "credential_provider_browser_agent.mm", |
| "credential_provider_migrator.h", |
| "credential_provider_migrator.mm", |
| "credential_provider_service.h", |
| "credential_provider_service.mm", |
| "credential_provider_service_factory.h", |
| "credential_provider_service_factory.mm", |
| "credential_provider_util.h", |
| "credential_provider_util.mm", |
| "ios_credential_provider_infobar_delegate.h", |
| "ios_credential_provider_infobar_delegate.mm", |
| ] |
| public_deps = [ "//base" ] |
| deps = [ |
| ":buildflags", |
| ":features", |
| "//base", |
| "//components/affiliations/core/browser:affiliations", |
| "//components/autofill/core/common", |
| "//components/password_manager/core/browser", |
| "//components/password_manager/core/browser/affiliation:affiliation_match_helper", |
| "//components/password_manager/core/common", |
| "//components/password_manager/core/common:features", |
| "//components/prefs", |
| "//components/signin/public/identity_manager", |
| "//components/webauthn/core/browser:passkey_model", |
| "//ios/chrome/app/strings", |
| "//ios/chrome/browser/affiliations/model", |
| "//ios/chrome/browser/favicon/model", |
| "//ios/chrome/browser/infobars/model", |
| "//ios/chrome/browser/passwords/model", |
| "//ios/chrome/browser/shared/model/application_context", |
| "//ios/chrome/browser/shared/model/browser", |
| "//ios/chrome/browser/shared/model/prefs:pref_names", |
| "//ios/chrome/browser/shared/model/profile", |
| "//ios/chrome/browser/shared/model/profile:features", |
| "//ios/chrome/browser/shared/model/profile:profile_keyed_service_factory", |
| "//ios/chrome/browser/shared/model/web_state_list", |
| "//ios/chrome/browser/shared/public/commands", |
| "//ios/chrome/browser/shared/public/features", |
| "//ios/chrome/browser/shared/ui/symbols", |
| "//ios/chrome/browser/signin/model", |
| "//ios/chrome/browser/signin/model:system_identity", |
| "//ios/chrome/browser/sync/model", |
| "//ios/chrome/browser/webauthn/model", |
| "//ios/chrome/common/app_group", |
| "//ios/chrome/common/credential_provider", |
| "//ios/chrome/common/credential_provider:ui", |
| "//ios/chrome/common/ui/favicon", |
| "//ios/chrome/common/ui/favicon:favicon_constants", |
| "//ios/components/credential_provider_extension:password_util", |
| "//ios/web/public", |
| "//url", |
| ] |
| frameworks = [ |
| "AuthenticationServices.framework", |
| "Foundation.framework", |
| ] |
| } |
| |
| source_set("unit_tests") { |
| testonly = true |
| sources = [ |
| "archivable_credential+password_form_unittest.mm", |
| "credential_provider_browser_agent_unittest.mm", |
| "credential_provider_migrator_unittest.mm", |
| "credential_provider_service_unittest.mm", |
| "credential_provider_util_unittest.mm", |
| "ios_credential_provider_infobar_delegate_unittest.mm", |
| ] |
| deps = [ |
| ":features", |
| ":model", |
| "//base/test:test_support", |
| "//components/affiliations/core/browser:test_support", |
| "//components/autofill/core/common", |
| "//components/favicon/core", |
| "//components/password_manager/core/browser:test_support", |
| "//components/password_manager/core/common", |
| "//components/prefs", |
| "//components/prefs:test_support", |
| "//components/variations:test_support", |
| "//components/webauthn/core/browser:test_support", |
| "//ios/chrome/app/strings", |
| "//ios/chrome/browser/favicon/model", |
| "//ios/chrome/browser/favicon/model:test_support", |
| "//ios/chrome/browser/history/model", |
| "//ios/chrome/browser/infobars/model", |
| "//ios/chrome/browser/shared/model/application_context", |
| "//ios/chrome/browser/shared/model/browser/test:test_support", |
| "//ios/chrome/browser/shared/model/prefs:pref_names", |
| "//ios/chrome/browser/shared/model/profile/test", |
| "//ios/chrome/browser/shared/model/web_state_list", |
| "//ios/chrome/browser/shared/public/commands", |
| "//ios/chrome/browser/signin/model:fake_system_identity", |
| "//ios/chrome/browser/signin/model:fake_system_identity_manager", |
| "//ios/chrome/browser/signin/model:test_support", |
| "//ios/chrome/browser/webauthn/model", |
| "//ios/chrome/common/app_group", |
| "//ios/chrome/common/credential_provider", |
| "//ios/chrome/common/credential_provider:ui", |
| "//ios/chrome/test:test_support", |
| "//ios/web/public/test", |
| "//testing/gtest", |
| "//third_party/ocmock", |
| "//url", |
| ] |
| } |
| } |
| |
| source_set("features") { |
| sources = [ |
| "features.h", |
| "features.mm", |
| ] |
| deps = [ ":buildflags" ] |
| public_deps = [ "//base" ] |
| } |