chromium/components/ip_protection/android/android_auth_client_lib/cpp/BUILD.gn

# Copyright 2024 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/config/android/config.gni")
import("//build/config/android/rules.gni")
import("//testing/test.gni")
import("//third_party/jni_zero/jni_zero.gni")

generate_jni("jni_headers") {
  sources = [
    "//components/ip_protection/android/android_auth_client_lib/client/java/src/org/chromium/components/ip_protection_auth/BindCallbackListener.java",
    "//components/ip_protection/android/android_auth_client_lib/client/java/src/org/chromium/components/ip_protection_auth/ByteArrayCallbackListener.java",
    "//components/ip_protection/android/android_auth_client_lib/client/java/src/org/chromium/components/ip_protection_auth/IpProtectionAuthClient.java",
  ]
}

source_set("native") {
  sources = [
    "bind_callback_listener.cc",
    "bind_callback_listener.h",
    "byte_array_callback_listener.cc",
    "byte_array_callback_listener.h",
    "ip_protection_auth_client.cc",
    "ip_protection_auth_client.h",
    "ip_protection_auth_client_interface.h",
  ]
  deps = [
    ":jni_headers",
    "//base",
    "//net/third_party/quiche:blind_sign_auth_proto",
  ]
}

source_set("ip_protection_auth_test_natives") {
  testonly = true
  deps = [
    ":native",
    "//base:base_javatests_lib",
    "//base/test:test_support",
    "//components/ip_protection/android/android_auth_client_lib/javatests:jni_headers",
    "//net/third_party/quiche:blind_sign_auth_proto",
    "//third_party/anonymous_tokens:anonymous_tokens_cc_proto",
  ]

  sources = [ "ip_protection_auth_test_natives.cc" ]
}