import("//third_party/protobuf/proto_library.gni") config("anonymous_tokens_config") { include_dirs = [ "overrides", "src", ] } source_set("anonymous_tokens_public_key_client") { sources = [ "src/anonymous_tokens/cpp/client/anonymous_tokens_public_key_client.cc", "src/anonymous_tokens/cpp/client/anonymous_tokens_public_key_client.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":proto_utils", ":status_utils", ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", ] } source_set("anonymous_tokens_rsa_bssa_client") { sources = [ "src/anonymous_tokens/cpp/client/anonymous_tokens_rsa_bssa_client.cc", "src/anonymous_tokens/cpp/client/anonymous_tokens_rsa_bssa_client.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":anonymous_tokens_pb_openssl_converters", ":crypto_utils", ":rsa_blinder", ":status_utils", ] public_deps = [ ":anonymous_tokens_cc_proto", ":proto_utils", "//third_party/abseil-cpp:absl", ] } source_set("anonymous_tokens_redemption_client") { sources = [ "src/anonymous_tokens/cpp/client/anonymous_tokens_redemption_client.cc", "src/anonymous_tokens/cpp/client/anonymous_tokens_redemption_client.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":constants" ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", ] } source_set("anonymous_tokens_pb_openssl_converters") { sources = [ "src/anonymous_tokens/cpp/crypto/anonymous_tokens_pb_openssl_converters.cc", "src/anonymous_tokens/cpp/crypto/anonymous_tokens_pb_openssl_converters.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":anonymous_tokens_cc_proto", ":constants", ":crypto_utils", ":status_utils", "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", ] } proto_library("anonymous_tokens_cc_proto") { sources = [ "src/anonymous_tokens/proto/anonymous_tokens.proto" ] component_build_force_source_set = true cc_generator_options = "lite=true:" proto_in_dir = "src" } if (is_android) { import("//build/config/android/rules.gni") proto_java_library("anonymous_tokens_java_proto") { sources = [ "src/anonymous_tokens/proto/anonymous_tokens.proto" ] proto_path = "src/" } } source_set("proto_utils") { sources = [ "src/anonymous_tokens/cpp/shared/proto_utils.cc", "src/anonymous_tokens/cpp/shared/proto_utils.h", ] public_configs = [ ":anonymous_tokens_config" ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", ] } source_set("status_utils") { sources = [ "src/anonymous_tokens/cpp/shared/status_utils.h" ] public_configs = [ ":anonymous_tokens_config" ] public_deps = [ "//third_party/abseil-cpp:absl" ] } source_set("blinder") { sources = [ "src/anonymous_tokens/cpp/crypto/blinder.h" ] public_configs = [ ":anonymous_tokens_config" ] public_deps = [ "//third_party/abseil-cpp:absl" ] } source_set("constants") { sources = [ "src/anonymous_tokens/cpp/crypto/constants.h" ] public_configs = [ ":anonymous_tokens_config" ] public_deps = [ "//third_party/abseil-cpp:absl" ] } source_set("crypto_utils") { sources = [ "src/anonymous_tokens/cpp/crypto/crypto_utils.cc", "src/anonymous_tokens/cpp/crypto/crypto_utils.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":constants", ":status_utils", ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] } source_set("rsa_blinder") { sources = [ "src/anonymous_tokens/cpp/crypto/rsa_blinder.cc", "src/anonymous_tokens/cpp/crypto/rsa_blinder.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":blinder", ":constants", ":crypto_utils", ":status_utils", ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] } source_set("blind_signer") { sources = [ "src/anonymous_tokens/cpp/crypto/blind_signer.h" ] public_configs = [ ":anonymous_tokens_config" ] public_deps = [ "//third_party/abseil-cpp:absl" ] } source_set("rsa_blind_signer") { sources = [ "src/anonymous_tokens/cpp/crypto/rsa_blind_signer.cc", "src/anonymous_tokens/cpp/crypto/rsa_blind_signer.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":anonymous_tokens_pb_openssl_converters", ":blind_signer", ":constants", ":crypto_utils", ":status_utils", ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] } source_set("verifier") { sources = [ "src/anonymous_tokens/cpp/crypto/verifier.h" ] public_configs = [ ":anonymous_tokens_config" ] public_deps = [ "//third_party/abseil-cpp:absl" ] } source_set("rsa_ssa_pss_verifier") { sources = [ "src/anonymous_tokens/cpp/crypto/rsa_ssa_pss_verifier.cc", "src/anonymous_tokens/cpp/crypto/rsa_ssa_pss_verifier.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":anonymous_tokens_pb_openssl_converters", ":constants", ":crypto_utils", ":status_utils", ":verifier", ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] } source_set("rsa_bssa_public_metadata_client") { sources = [ "src/anonymous_tokens/cpp/privacy_pass/rsa_bssa_public_metadata_client.cc", "src/anonymous_tokens/cpp/privacy_pass/rsa_bssa_public_metadata_client.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":constants", ":crypto_utils", ":rsa_blinder", ":status_utils", ":tokens_encodings", ] public_deps = [ "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] } source_set("tokens_encodings") { sources = [ "src/anonymous_tokens/cpp/privacy_pass/token_encodings.cc", "src/anonymous_tokens/cpp/privacy_pass/token_encodings.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":status_utils" ] public_deps = [ "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] } static_library("anonymous_tokens_test_support") { testonly = true sources = [ "overrides/anonymous_tokens/cpp/testing/testdata_utils.h", "src/anonymous_tokens/cpp/testing/proto_utils.cc", "src/anonymous_tokens/cpp/testing/proto_utils.h", "src/anonymous_tokens/cpp/testing/utils.cc", "src/anonymous_tokens/cpp/testing/utils.h", "testdata_utils_impl.cc", "testdata_utils_impl.h", ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":constants", ":crypto_utils", ":status_utils", "//base:base", ] public_deps = [ ":anonymous_tokens_cc_proto", "//third_party/abseil-cpp:absl", "//third_party/boringssl", ] } bundle_data("test_data") { visibility = [ ":anonymous_tokens_tests" ] testonly = true sources = [ "src/anonymous_tokens/testdata/strong_rsa_modulus2048_example.binarypb", "src/anonymous_tokens/testdata/strong_rsa_modulus2048_example_2.binarypb", "src/anonymous_tokens/testdata/strong_rsa_modulus3072_example.binarypb", "src/anonymous_tokens/testdata/strong_rsa_modulus4096_example.binarypb", ] outputs = [ "{{bundle_resources_dir}}/" + "{{source_root_relative_dir}}/{{source_file_part}}" ] } source_set("anonymous_tokens_tests") { testonly = true sources = [ "src/anonymous_tokens/cpp/client/anonymous_tokens_public_key_client_test.cc", "src/anonymous_tokens/cpp/client/anonymous_tokens_redemption_client_test.cc", "src/anonymous_tokens/cpp/client/anonymous_tokens_rsa_bssa_client_test.cc", "src/anonymous_tokens/cpp/crypto/anonymous_tokens_pb_openssl_converters_test.cc", "src/anonymous_tokens/cpp/crypto/crypto_utils_test.cc", "src/anonymous_tokens/cpp/crypto/rsa_blind_signer_test.cc", "src/anonymous_tokens/cpp/crypto/rsa_blinder_test.cc", "src/anonymous_tokens/cpp/crypto/rsa_ssa_pss_verifier_test.cc", "src/anonymous_tokens/cpp/privacy_pass/rsa_bssa_public_metadata_client_test.cc", "src/anonymous_tokens/cpp/privacy_pass/token_encodings_test.cc", "src/anonymous_tokens/cpp/shared/proto_utils_test.cc", ] data = [ "src/anonymous_tokens/testdata/" ] public_configs = [ ":anonymous_tokens_config" ] deps = [ ":anonymous_tokens_pb_openssl_converters", ":anonymous_tokens_public_key_client", ":anonymous_tokens_redemption_client", ":anonymous_tokens_rsa_bssa_client", ":anonymous_tokens_test_support", ":constants", ":crypto_utils", ":proto_utils", ":rsa_blind_signer", ":rsa_blinder", ":rsa_bssa_public_metadata_client", ":rsa_ssa_pss_verifier", ":status_utils", ":tokens_encodings", "//testing/gmock", "//testing/gtest", "//third_party/abseil-cpp:absl", ] if (is_ios) { deps += [ ":test_data" ] } }