# Copyright (c) 2016 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.

# This file is created by generate_build_files.py. Do not edit manually.

_test_support_sources = [
  "src/crypto/test/file_test.cc",
  "src/crypto/test/file_test.h",
  "src/crypto/test/malloc.cc",
  "src/crypto/test/scoped_types.h",
  "src/crypto/test/test_util.cc",
  "src/crypto/test/test_util.h",
  "src/ssl/test/async_bio.h",
  "src/ssl/test/packeted_bio.h",
  "src/ssl/test/scoped_types.h",
  "src/ssl/test/test_config.h",
]

template("create_tests") {
  executable("boringssl_aes_test") {
    sources = [
      "src/crypto/aes/aes_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_asn1_test") {
    sources = [
      "src/crypto/asn1/asn1_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_base64_test") {
    sources = [
      "src/crypto/base64/base64_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_bio_test") {
    sources = [
      "src/crypto/bio/bio_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_bn_test") {
    sources = [
      "src/crypto/bn/bn_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_bytestring_test") {
    sources = [
      "src/crypto/bytestring/bytestring_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_chacha_test") {
    sources = [
      "src/crypto/chacha/chacha_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_aead_test") {
    sources = [
      "src/crypto/cipher/aead_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_cipher_test") {
    sources = [
      "src/crypto/cipher/cipher_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_cmac_test") {
    sources = [
      "src/crypto/cmac/cmac_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_constant_time_test") {
    sources = [
      "src/crypto/constant_time_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_ed25519_test") {
    sources = [
      "src/crypto/curve25519/ed25519_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_spake25519_test") {
    sources = [
      "src/crypto/curve25519/spake25519_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_x25519_test") {
    sources = [
      "src/crypto/curve25519/x25519_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_dh_test") {
    sources = [
      "src/crypto/dh/dh_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_digest_test") {
    sources = [
      "src/crypto/digest/digest_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_dsa_test") {
    sources = [
      "src/crypto/dsa/dsa_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_ec_test") {
    sources = [
      "src/crypto/ec/ec_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_example_mul") {
    sources = [
      "src/crypto/ec/example_mul.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_ecdsa_test") {
    sources = [
      "src/crypto/ecdsa/ecdsa_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_err_test") {
    sources = [
      "src/crypto/err/err_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_evp_extra_test") {
    sources = [
      "src/crypto/evp/evp_extra_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_evp_test") {
    sources = [
      "src/crypto/evp/evp_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_pbkdf_test") {
    sources = [
      "src/crypto/evp/pbkdf_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_hkdf_test") {
    sources = [
      "src/crypto/hkdf/hkdf_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_hmac_test") {
    sources = [
      "src/crypto/hmac/hmac_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_lhash_test") {
    sources = [
      "src/crypto/lhash/lhash_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_gcm_test") {
    sources = [
      "src/crypto/modes/gcm_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_newhope_statistical_test") {
    sources = [
      "src/crypto/newhope/newhope_statistical_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_newhope_test") {
    sources = [
      "src/crypto/newhope/newhope_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_newhope_vectors_test") {
    sources = [
      "src/crypto/newhope/newhope_vectors_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_obj_test") {
    sources = [
      "src/crypto/obj/obj_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_pkcs12_test") {
    sources = [
      "src/crypto/pkcs8/pkcs12_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_pkcs8_test") {
    sources = [
      "src/crypto/pkcs8/pkcs8_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_poly1305_test") {
    sources = [
      "src/crypto/poly1305/poly1305_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_refcount_test") {
    sources = [
      "src/crypto/refcount_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_rsa_test") {
    sources = [
      "src/crypto/rsa/rsa_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_thread_test") {
    sources = [
      "src/crypto/thread_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_pkcs7_test") {
    sources = [
      "src/crypto/x509/pkcs7_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_x509_test") {
    sources = [
      "src/crypto/x509/x509_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_tab_test") {
    sources = [
      "src/crypto/x509v3/tab_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_v3name_test") {
    sources = [
      "src/crypto/x509v3/v3name_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_pqueue_test") {
    sources = [
      "src/ssl/pqueue/pqueue_test.c",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  executable("boringssl_ssl_test") {
    sources = [
      "src/ssl/ssl_test.cc",
    ]
    sources += _test_support_sources
    if (defined(invoker.configs_exclude)) {
      configs -= invoker.configs_exclude
    }
    configs += invoker.configs
    deps = invoker.deps
  }

  group(target_name) {
    deps = [
      ":boringssl_aead_test",
      ":boringssl_aes_test",
      ":boringssl_asn1_test",
      ":boringssl_base64_test",
      ":boringssl_bio_test",
      ":boringssl_bn_test",
      ":boringssl_bytestring_test",
      ":boringssl_chacha_test",
      ":boringssl_cipher_test",
      ":boringssl_cmac_test",
      ":boringssl_constant_time_test",
      ":boringssl_dh_test",
      ":boringssl_digest_test",
      ":boringssl_dsa_test",
      ":boringssl_ec_test",
      ":boringssl_ecdsa_test",
      ":boringssl_ed25519_test",
      ":boringssl_err_test",
      ":boringssl_evp_extra_test",
      ":boringssl_evp_test",
      ":boringssl_example_mul",
      ":boringssl_gcm_test",
      ":boringssl_hkdf_test",
      ":boringssl_hmac_test",
      ":boringssl_lhash_test",
      ":boringssl_newhope_statistical_test",
      ":boringssl_newhope_test",
      ":boringssl_newhope_vectors_test",
      ":boringssl_obj_test",
      ":boringssl_pbkdf_test",
      ":boringssl_pkcs12_test",
      ":boringssl_pkcs7_test",
      ":boringssl_pkcs8_test",
      ":boringssl_poly1305_test",
      ":boringssl_pqueue_test",
      ":boringssl_refcount_test",
      ":boringssl_rsa_test",
      ":boringssl_spake25519_test",
      ":boringssl_ssl_test",
      ":boringssl_tab_test",
      ":boringssl_thread_test",
      ":boringssl_v3name_test",
      ":boringssl_x25519_test",
      ":boringssl_x509_test",
    ]
  }
}
