Update To 11.40.268.0
[platform/framework/web/crosswalk.git] / src / components / invalidation / BUILD.gn
index c1e581b..cf9a294 100644 (file)
@@ -1,6 +1,9 @@
 # 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.
+if (is_android) {
+  import("//build/config/android/rules.gni")
+}
 
 static_library("invalidation") {
   sources = [
@@ -92,6 +95,31 @@ static_library("invalidation") {
     "//third_party/protobuf:protobuf_lite",
     # "//third_party/cacheinvalidation/src/google/cacheinvalidation:cacheinvalidation_proto_cpp",
   ]
+
+  if (is_android) {
+    sources += [
+      "android/component_jni_registrar.cc",
+      "android/component_jni_registrar.h",
+      "invalidation_service_android.cc",
+      "invalidation_service_android.h",
+    ]
+    deps += [ ":jni_headers" ]
+  }
+}
+
+static_library("unittests") {
+  testonly = true
+  sources = []
+  deps = [
+    ":invalidation",
+    ":test_support",
+  ]
+  if (is_android) {
+    deps += [
+      ":javatests",
+      ":jni_headers",
+    ]
+  }
 }
 
 static_library("test_support") {
@@ -114,12 +142,6 @@ static_library("test_support") {
     "unacked_invalidation_set_test_util.cc",
     "unacked_invalidation_set_test_util.h",
   ]
-  if (!is_android) {
-    sources += [
-      "p2p_invalidation_service.cc",
-      "p2p_invalidation_service.h",
-    ]
-  }
 
   deps = [
     "//base",
@@ -136,4 +158,45 @@ static_library("test_support") {
     "//third_party/protobuf:protobuf_lite",
     # "//third_party/cacheinvalidation/src/google/cacheinvalidation:cacheinvalidation_proto_cpp",
   ]
+
+  if (is_android) {
+    deps += [
+      ":jni_headers",
+    ]
+  } else {
+    sources += [
+      "p2p_invalidation_service.cc",
+      "p2p_invalidation_service.h",
+    ]
+  }
+}
+
+if (is_android) {
+  android_library("java") {
+    deps = [
+      "//base:base_java",
+      "//sync/android:sync_java",
+      "//third_party/cacheinvalidation:cacheinvalidation_javalib",
+      "//third_party/cacheinvalidation:cacheinvalidation_proto_java",
+      "//third_party/jsr-305:jsr_305_javalib",
+    ]
+    DEPRECATED_java_in_dir = "android/java/src"
+  }
+  android_library("javatests") {
+    deps = [
+      ":java",
+      "//base:base_java",
+      "//base:base_java_test_support",
+      "//sync/android:sync_java",
+      "//third_party/cacheinvalidation:cacheinvalidation_javalib",
+      "//third_party/cacheinvalidation:cacheinvalidation_proto_java",
+    ]
+    DEPRECATED_java_in_dir = "android/javatests/src"
+  }
+  generate_jni("jni_headers") {
+    sources = [
+      "android/java/src/org/chromium/components/invalidation/InvalidationService.java",
+    ]
+    jni_package = "components/invalidation"
+  }
 }