blob: fc7133018b553f1ba8e3027c4839222ffaba63f0 [file] [log] [blame]
Avi Drissman8ba1bad2022-09-13 19:22:361# Copyright 2014 The Chromium Authors
jianli40890032015-04-29 21:55:342# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
ralphnathaned5c0e02017-06-14 20:54:565import("//components/gcm_driver/config.gni")
6
Richard Knoll882414b82019-08-05 15:19:487if (is_android) {
8 import("//build/config/android/rules.gni")
9}
10
brettw77617612016-07-13 22:40:0611static_library("instance_id") {
jianli40890032015-04-29 21:55:3412 sources = [
13 "instance_id.cc",
14 "instance_id.h",
15 "instance_id_driver.cc",
16 "instance_id_driver.h",
Tatiana Gornak0d34d742018-04-25 08:47:1917 "instance_id_profile_service.cc",
18 "instance_id_profile_service.h",
jianli40890032015-04-29 21:55:3419 ]
20
21 deps = [
22 "//base",
Tatiana Gornak0d34d742018-04-25 08:47:1923 "//components/gcm_driver:gcm_buildflags",
24 "//components/keyed_service/core:core",
25 "//components/prefs:prefs",
agrieved7a71c882015-11-20 19:53:2826 "//crypto",
Helen Li5f3d96a2018-08-10 20:37:2427 "//services/network/public/mojom",
jianli40890032015-04-29 21:55:3428 ]
29
ralphnathaned5c0e02017-06-14 20:54:5630 if (use_gcm_from_platform) {
Sylvain Defresne88a44f8e2020-09-16 09:35:2131 assert(is_android)
jianli40890032015-04-29 21:55:3432 sources += [
33 "instance_id_android.cc",
34 "instance_id_android.h",
35 ]
johnme2f8daf92016-04-15 18:17:4436 deps += [ "android:jni_headers" ]
Sylvain Defresne88a44f8e2020-09-16 09:35:2137 } else {
38 sources += [
39 "instance_id_impl.cc",
40 "instance_id_impl.h",
41 ]
jianli40890032015-04-29 21:55:3442 }
43}
jianli2104ce612015-05-06 00:24:3444
brettw77617612016-07-13 22:40:0645static_library("test_support") {
jianli2104ce612015-05-06 00:24:3446 testonly = true
47 sources = [
jianli10018b2d2015-05-11 21:14:1348 "fake_gcm_driver_for_instance_id.cc",
49 "fake_gcm_driver_for_instance_id.h",
jianli2104ce612015-05-06 00:24:3450 ]
51
Nico Weber2517f5c2020-01-13 17:54:5552 public_deps = [ ":instance_id" ]
johnme8638071c2016-04-22 16:07:3353 deps = [
brettw2629c442015-11-26 02:42:1954 "//base",
Peter Beverloo34139462018-04-10 14:18:0655 "//components/gcm_driver",
jianli2104ce612015-05-06 00:24:3456 "//testing/gtest",
57 ]
johnme8638071c2016-04-22 16:07:3358
59 if (is_android) {
Sylvain Defresne88a44f8e2020-09-16 09:35:2160 sources += [
61 "scoped_use_fake_instance_id_android.cc",
62 "scoped_use_fake_instance_id_android.h",
63 ]
johnme8638071c2016-04-22 16:07:3364 deps += [ "android:test_support_jni_headers" ]
65 }
jianli2104ce612015-05-06 00:24:3466}
peter245ad212015-07-09 11:30:5967
68source_set("unit_tests") {
69 testonly = true
Nico Weber2517f5c2020-01-13 17:54:5570 sources = [ "instance_id_driver_unittest.cc" ]
peter245ad212015-07-09 11:30:5971
72 deps = [
73 ":instance_id",
74 ":test_support",
brettw2629c442015-11-26 02:42:1975 "//base",
Scott Violet9ae82892018-03-01 18:38:1276 "//components/gcm_driver:gcm_buildflags",
brettw2629c442015-11-26 02:42:1977 "//google_apis/gcm",
johnme627dc8c72016-08-19 21:49:3978 "//net:test_support",
peter245ad212015-07-09 11:30:5979 "//testing/gtest",
80 ]
81}
Richard Knoll882414b82019-08-05 15:19:4882
83if (is_android) {
84 java_cpp_enum("instance_id_java_enums_srcjar") {
Nico Weber2517f5c2020-01-13 17:54:5585 sources = [ "instance_id.h" ]
Richard Knoll882414b82019-08-05 15:19:4886 }
87}