| // This file defines BoringSSL's build, expressed in terms of the input source |
| // files that BoringSSL developers edit. It is a JSON file with line comments, |
| // with line comments removed before parsing. It drives ./util/pregenerate which |
| // converts some of those inputs (e.g. perlasm files) into pre-generated |
| // outputs. This produces a more simplified build, which is then converted into |
| // build files of various syntaxes. |
| // |
| // When modifying this file, run `go run ./util/pregenerate`. See gen/README.md |
| // for more details, and util/pregenerate/build.go for the schema. |
| // |
| // TODO(crbug.com/boringssl/542): Moving build inputs to this file is still work |
| // in progress, so this file is currently incomplete. |
| { |
| "bcm": { |
| "perlasm_aarch64": [ |
| {"src": "crypto/fipsmodule/aes/asm/aesv8-armx.pl", "dst": "aesv8-armv8"}, |
| {"src": "crypto/fipsmodule/modes/asm/aesv8-gcm-armv8.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/armv8-mont.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/bn-armv8.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghash-neon-armv8.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghashv8-armx.pl", "dst": "ghashv8-armv8"}, |
| {"src": "crypto/fipsmodule/ec/asm/p256_beeu-armv8-asm.pl"}, |
| {"src": "crypto/fipsmodule/ec/asm/p256-armv8-asm.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha1-armv8.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha512-armv8.pl", "args": ["sha256"], "dst": "sha256-armv8"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha512-armv8.pl", "args": ["sha512"]}, |
| {"src": "crypto/fipsmodule/aes/asm/vpaes-armv8.pl"} |
| ], |
| "perlasm_arm": [ |
| {"src": "crypto/fipsmodule/aes/asm/aesv8-armx.pl", "dst": "aesv8-armv7"}, |
| {"src": "crypto/fipsmodule/bn/asm/armv4-mont.pl"}, |
| {"src": "crypto/fipsmodule/aes/asm/bsaes-armv7.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghash-armv4.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghashv8-armx.pl", "dst": "ghashv8-armv7"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha1-armv4-large.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha256-armv4.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha512-armv4.pl"}, |
| {"src": "crypto/fipsmodule/aes/asm/vpaes-armv7.pl"} |
| ], |
| "perlasm_x86": [ |
| {"src": "crypto/fipsmodule/aes/asm/aesni-x86.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/bn-586.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/co-586.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghash-ssse3-x86.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghash-x86.pl"}, |
| {"src": "crypto/fipsmodule/md5/asm/md5-586.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha1-586.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha256-586.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha512-586.pl"}, |
| {"src": "crypto/fipsmodule/aes/asm/vpaes-x86.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/x86-mont.pl"} |
| ], |
| "perlasm_x86_64": [ |
| {"src": "crypto/fipsmodule/modes/asm/aesni-gcm-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/aes/asm/aesni-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghash-ssse3-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/modes/asm/ghash-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/md5/asm/md5-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/ec/asm/p256_beeu-x86_64-asm.pl"}, |
| {"src": "crypto/fipsmodule/ec/asm/p256-x86_64-asm.pl"}, |
| {"src": "crypto/fipsmodule/rand/asm/rdrand-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/rsaz-avx2.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha1-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha512-x86_64.pl", "args": ["sha256"], "dst": "sha256-x86_64"}, |
| {"src": "crypto/fipsmodule/sha/asm/sha512-x86_64.pl", "args": ["sha512"]}, |
| {"src": "crypto/fipsmodule/aes/asm/vpaes-x86_64.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/x86_64-mont.pl"}, |
| {"src": "crypto/fipsmodule/bn/asm/x86_64-mont5.pl"} |
| ] |
| }, |
| "crypto": { |
| "err_data": [ |
| "crypto/err/*.errordata" |
| ], |
| "asm": [ |
| "crypto/curve25519/asm/x25519-asm-arm.S", |
| "crypto/hrss/asm/poly_rq_mul.S", |
| "crypto/poly1305/poly1305_arm_asm.S", |
| "third_party/fiat/asm/fiat_curve25519_adx_mul.S", |
| "third_party/fiat/asm/fiat_curve25519_adx_square.S", |
| "third_party/fiat/asm/fiat_p256_adx_mul.S", |
| "third_party/fiat/asm/fiat_p256_adx_sqr.S" |
| ], |
| "perlasm_aarch64": [ |
| {"src": "crypto/chacha/asm/chacha-armv8.pl"}, |
| {"src": "crypto/cipher_extra/asm/chacha20_poly1305_armv8.pl"} |
| ], |
| "perlasm_arm": [ |
| {"src": "crypto/chacha/asm/chacha-armv4.pl"} |
| ], |
| "perlasm_x86": [ |
| {"src": "crypto/chacha/asm/chacha-x86.pl"} |
| ], |
| "perlasm_x86_64": [ |
| {"src": "crypto/chacha/asm/chacha-x86_64.pl"}, |
| {"src": "crypto/cipher_extra/asm/aes128gcmsiv-x86_64.pl"}, |
| {"src": "crypto/cipher_extra/asm/chacha20_poly1305_x86_64.pl"} |
| ] |
| }, |
| "pki": { |
| "srcs": [ |
| "pki/cert_error_id.cc", |
| "pki/cert_error_params.cc", |
| "pki/cert_errors.cc", |
| "pki/cert_issuer_source_static.cc", |
| "pki/certificate.cc", |
| "pki/certificate_policies.cc", |
| "pki/common_cert_errors.cc", |
| "pki/crl.cc", |
| "pki/encode_values.cc", |
| "pki/extended_key_usage.cc", |
| "pki/general_names.cc", |
| "pki/input.cc", |
| "pki/ip_util.cc", |
| "pki/name_constraints.cc", |
| "pki/ocsp.cc", |
| "pki/ocsp_verify_result.cc", |
| "pki/parse_certificate.cc", |
| "pki/parse_name.cc", |
| "pki/parse_values.cc", |
| "pki/parsed_certificate.cc", |
| "pki/parser.cc", |
| "pki/path_builder.cc", |
| "pki/pem.cc", |
| "pki/revocation_util.cc", |
| "pki/signature_algorithm.cc", |
| "pki/simple_path_builder_delegate.cc", |
| "pki/string_util.cc", |
| "pki/trust_store_collection.cc", |
| "pki/trust_store_in_memory.cc", |
| "pki/trust_store.cc", |
| "pki/verify_certificate_chain.cc", |
| "pki/verify_error.cc", |
| "pki/verify_name_match.cc", |
| "pki/verify_signed_data.cc" |
| ] |
| }, |
| "ssl": { |
| "srcs": [ |
| "ssl/bio_ssl.cc", |
| "ssl/d1_both.cc", |
| "ssl/d1_lib.cc", |
| "ssl/d1_pkt.cc", |
| "ssl/d1_srtp.cc", |
| "ssl/dtls_method.cc", |
| "ssl/dtls_record.cc", |
| "ssl/encrypted_client_hello.cc", |
| "ssl/extensions.cc", |
| "ssl/handoff.cc", |
| "ssl/handshake_client.cc", |
| "ssl/handshake_server.cc", |
| "ssl/handshake.cc", |
| "ssl/s3_both.cc", |
| "ssl/s3_lib.cc", |
| "ssl/s3_pkt.cc", |
| "ssl/ssl_aead_ctx.cc", |
| "ssl/ssl_asn1.cc", |
| "ssl/ssl_buffer.cc", |
| "ssl/ssl_cert.cc", |
| "ssl/ssl_cipher.cc", |
| "ssl/ssl_credential.cc", |
| "ssl/ssl_file.cc", |
| "ssl/ssl_key_share.cc", |
| "ssl/ssl_lib.cc", |
| "ssl/ssl_privkey.cc", |
| "ssl/ssl_session.cc", |
| "ssl/ssl_stat.cc", |
| "ssl/ssl_transcript.cc", |
| "ssl/ssl_versions.cc", |
| "ssl/ssl_x509.cc", |
| "ssl/t1_enc.cc", |
| "ssl/tls_method.cc", |
| "ssl/tls_record.cc", |
| "ssl/tls13_both.cc", |
| "ssl/tls13_client.cc", |
| "ssl/tls13_enc.cc", |
| "ssl/tls13_server.cc" |
| ] |
| }, |
| "decrepit": { |
| "srcs": [ |
| "decrepit/bio/base64_bio.c", |
| "decrepit/blowfish/blowfish.c", |
| "decrepit/cast/cast.c", |
| "decrepit/cast/cast_tables.c", |
| "decrepit/cfb/cfb.c", |
| "decrepit/des/cfb64ede.c", |
| "decrepit/dh/dh_decrepit.c", |
| "decrepit/dsa/dsa_decrepit.c", |
| "decrepit/evp/dss1.c", |
| "decrepit/evp/evp_do_all.c", |
| "decrepit/obj/obj_decrepit.c", |
| "decrepit/rc4/rc4_decrepit.c", |
| "decrepit/ripemd/ripemd.c", |
| "decrepit/rsa/rsa_decrepit.c", |
| "decrepit/ssl/ssl_decrepit.c", |
| "decrepit/x509/x509_decrepit.c", |
| "decrepit/xts/xts.c" |
| ] |
| }, |
| "test_support": { |
| "srcs": [ |
| "crypto/test/abi_test.cc", |
| "crypto/test/file_test.cc", |
| "crypto/test/file_util.cc", |
| "crypto/test/test_util.cc", |
| "crypto/test/wycheproof_util.cc" |
| ], |
| "perlasm_aarch64": [ |
| {"src": "crypto/test/asm/trampoline-armv8.pl"} |
| ], |
| "perlasm_arm": [ |
| {"src": "crypto/test/asm/trampoline-armv4.pl"} |
| ], |
| "perlasm_x86": [ |
| {"src": "crypto/test/asm/trampoline-x86.pl"} |
| ], |
| "perlasm_x86_64": [ |
| {"src": "crypto/test/asm/trampoline-x86_64.pl"} |
| ] |
| }, |
| "crypto_test": { |
| "srcs": [ |
| "crypto/abi_self_test.cc", |
| "crypto/asn1/asn1_test.cc", |
| "crypto/base64/base64_test.cc", |
| "crypto/bio/bio_test.cc", |
| "crypto/blake2/blake2_test.cc", |
| "crypto/buf/buf_test.cc", |
| "crypto/bytestring/bytestring_test.cc", |
| "crypto/chacha/chacha_test.cc", |
| "crypto/cipher_extra/aead_test.cc", |
| "crypto/cipher_extra/cipher_test.cc", |
| "crypto/compiler_test.cc", |
| "crypto/conf/conf_test.cc", |
| "crypto/constant_time_test.cc", |
| "crypto/cpu_arm_linux_test.cc", |
| "crypto/crypto_test.cc", |
| "crypto/curve25519/ed25519_test.cc", |
| "crypto/curve25519/spake25519_test.cc", |
| "crypto/curve25519/x25519_test.cc", |
| "crypto/ecdh_extra/ecdh_test.cc", |
| "crypto/dh_extra/dh_test.cc", |
| "crypto/digest_extra/digest_test.cc", |
| "crypto/dsa/dsa_test.cc", |
| "crypto/err/err_test.cc", |
| "crypto/evp/evp_extra_test.cc", |
| "crypto/evp/evp_test.cc", |
| "crypto/evp/pbkdf_test.cc", |
| "crypto/evp/scrypt_test.cc", |
| "crypto/fipsmodule/aes/aes_test.cc", |
| "crypto/fipsmodule/bn/bn_test.cc", |
| "crypto/fipsmodule/cmac/cmac_test.cc", |
| "crypto/fipsmodule/ec/ec_test.cc", |
| "crypto/fipsmodule/ec/p256-nistz_test.cc", |
| "crypto/fipsmodule/ec/p256_test.cc", |
| "crypto/fipsmodule/ecdsa/ecdsa_test.cc", |
| "crypto/fipsmodule/hkdf/hkdf_test.cc", |
| "crypto/fipsmodule/md5/md5_test.cc", |
| "crypto/fipsmodule/modes/gcm_test.cc", |
| "crypto/fipsmodule/rand/ctrdrbg_test.cc", |
| "crypto/fipsmodule/rand/fork_detect_test.cc", |
| "crypto/fipsmodule/service_indicator/service_indicator_test.cc", |
| "crypto/fipsmodule/sha/sha_test.cc", |
| "crypto/hpke/hpke_test.cc", |
| "crypto/hmac_extra/hmac_test.cc", |
| "crypto/hrss/hrss_test.cc", |
| "crypto/impl_dispatch_test.cc", |
| "crypto/keccak/keccak_test.cc", |
| "crypto/kyber/kyber_test.cc", |
| "crypto/lhash/lhash_test.cc", |
| "crypto/obj/obj_test.cc", |
| "crypto/pem/pem_test.cc", |
| "crypto/pkcs7/pkcs7_test.cc", |
| "crypto/pkcs8/pkcs8_test.cc", |
| "crypto/pkcs8/pkcs12_test.cc", |
| "crypto/poly1305/poly1305_test.cc", |
| "crypto/pool/pool_test.cc", |
| "crypto/rand_extra/rand_test.cc", |
| "crypto/rand_extra/getentropy_test.cc", |
| "crypto/refcount_test.cc", |
| "crypto/rsa_extra/rsa_test.cc", |
| "crypto/self_test.cc", |
| "crypto/stack/stack_test.cc", |
| "crypto/siphash/siphash_test.cc", |
| "crypto/spx/spx_test.cc", |
| "crypto/thread_test.cc", |
| // TODO(crbug.com/boringssl/542): This should be in test_support, so |
| // that all tests can use it. But it depends on GetTestData, which |
| // is not currently usable outside of crypto_test. |
| "crypto/test/file_test_gtest.cc", |
| "crypto/test/gtest_main.cc", |
| "crypto/trust_token/trust_token_test.cc", |
| "crypto/x509/tab_test.cc", |
| "crypto/x509/x509_test.cc", |
| "crypto/x509/x509_time_test.cc" |
| ], |
| "data": [ |
| "crypto/blake2/blake2b256_tests.txt", |
| "crypto/cipher_extra/test/*.txt", |
| "crypto/cipher_extra/test/nist_cavp/*.txt", |
| "crypto/curve25519/ed25519_tests.txt", |
| "crypto/ecdh_extra/ecdh_tests.txt", |
| "crypto/evp/evp_tests.txt", |
| "crypto/evp/scrypt_tests.txt", |
| "crypto/fipsmodule/aes/aes_tests.txt", |
| "crypto/fipsmodule/bn/test/*.txt", |
| "crypto/fipsmodule/cmac/cavp_3des_cmac_tests.txt", |
| "crypto/fipsmodule/cmac/cavp_aes128_cmac_tests.txt", |
| "crypto/fipsmodule/cmac/cavp_aes192_cmac_tests.txt", |
| "crypto/fipsmodule/cmac/cavp_aes256_cmac_tests.txt", |
| "crypto/fipsmodule/ec/ec_scalar_base_mult_tests.txt", |
| "crypto/fipsmodule/ec/p256-nistz_tests.txt", |
| "crypto/fipsmodule/ecdsa/ecdsa_sign_tests.txt", |
| "crypto/fipsmodule/ecdsa/ecdsa_verify_tests.txt", |
| "crypto/fipsmodule/modes/gcm_tests.txt", |
| "crypto/fipsmodule/rand/ctrdrbg_vectors.txt", |
| "crypto/hmac_extra/hmac_tests.txt", |
| "crypto/hpke/hpke_test_vectors.txt", |
| "crypto/keccak/keccak_tests.txt", |
| "crypto/kyber/kyber_tests.txt", |
| "crypto/pkcs8/test/*.p12", |
| "crypto/poly1305/poly1305_tests.txt", |
| "crypto/siphash/siphash_tests.txt", |
| "crypto/spx/spx_tests.txt", |
| "crypto/spx/spx_tests_deterministic.txt", |
| "crypto/x509/test/*.pem", |
| "third_party/wycheproof_testvectors/*.txt" |
| ] |
| }, |
| "urandom_test": { |
| "srcs": [ |
| "crypto/fipsmodule/rand/urandom_test.cc" |
| ] |
| }, |
| "pki_test": { |
| "srcs": [ |
| "crypto/test/gtest_main.cc", |
| "pki/cert_issuer_source_static_unittest.cc", |
| "pki/certificate_unittest.cc", |
| "pki/certificate_policies_unittest.cc", |
| "pki/crl_unittest.cc", |
| "pki/encode_values_unittest.cc", |
| "pki/extended_key_usage_unittest.cc", |
| "pki/general_names_unittest.cc", |
| "pki/input_unittest.cc", |
| "pki/ip_util_unittest.cc", |
| "pki/mock_signature_verify_cache.cc", |
| "pki/name_constraints_unittest.cc", |
| "pki/nist_pkits_unittest.cc", |
| "pki/ocsp_unittest.cc", |
| "pki/parse_certificate_unittest.cc", |
| "pki/parse_name_unittest.cc", |
| "pki/parse_values_unittest.cc", |
| "pki/parsed_certificate_unittest.cc", |
| "pki/parser_unittest.cc", |
| "pki/path_builder_pkits_unittest.cc", |
| "pki/path_builder_unittest.cc", |
| "pki/path_builder_verify_certificate_chain_unittest.cc", |
| "pki/pem_unittest.cc", |
| "pki/signature_algorithm_unittest.cc", |
| "pki/simple_path_builder_delegate_unittest.cc", |
| "pki/string_util_unittest.cc", |
| "pki/test_helpers.cc", |
| "pki/trust_store_collection_unittest.cc", |
| "pki/trust_store_in_memory_unittest.cc", |
| "pki/verify_certificate_chain_pkits_unittest.cc", |
| "pki/verify_certificate_chain_unittest.cc", |
| "pki/verify_name_match_unittest.cc", |
| "pki/verify_signed_data_unittest.cc" |
| ], |
| "data": [ |
| "pki/testdata/cert_issuer_source_static_unittest/*.pem", |
| "pki/testdata/certificate_policies_unittest/*.pem", |
| "pki/testdata/crl_unittest/*.pem", |
| "pki/testdata/name_constraints_unittest/*.pem", |
| "pki/testdata/nist-pkits/certs/*.crt", |
| "pki/testdata/nist-pkits/crls/*.crl", |
| "pki/testdata/ocsp_unittest/*.pem", |
| "pki/testdata/parse_certificate_unittest/*.pem", |
| "pki/testdata/parse_certificate_unittest/*/*.pem", |
| "pki/testdata/path_builder_unittest/*.pem", |
| "pki/testdata/path_builder_unittest/*/*.pem", |
| "pki/testdata/verify_certificate_chain_unittest/*/*.pem", |
| "pki/testdata/verify_certificate_chain_unittest/*/*.test", |
| "pki/testdata/verify_certificate_chain_unittest/pkits_errors/*.txt", |
| "pki/testdata/verify_name_match_unittest/names/*.pem", |
| "pki/testdata/verify_signed_data_unittest/*.pem", |
| "pki/testdata/verify_unittest/google-leaf.der", |
| "pki/testdata/verify_unittest/self-issued.pem" |
| ] |
| }, |
| "ssl_test": { |
| "srcs": [ |
| "crypto/test/gtest_main.cc", |
| "ssl/span_test.cc", |
| "ssl/ssl_c_test.c", |
| "ssl/ssl_test.cc" |
| ] |
| }, |
| "decrepit_test": { |
| "srcs": [ |
| "crypto/test/gtest_main.cc", |
| "decrepit/blowfish/blowfish_test.cc", |
| "decrepit/cast/cast_test.cc", |
| "decrepit/cfb/cfb_test.cc", |
| "decrepit/des/des_test.cc", |
| "decrepit/evp/evp_test.cc", |
| "decrepit/ripemd/ripemd_test.cc", |
| "decrepit/xts/xts_test.cc" |
| ] |
| }, |
| "bssl": { |
| "srcs": [ |
| "tool/args.cc", |
| "tool/ciphers.cc", |
| "tool/client.cc", |
| "tool/const.cc", |
| "tool/digest.cc", |
| "tool/fd.cc", |
| "tool/file.cc", |
| "tool/generate_ech.cc", |
| "tool/generate_ed25519.cc", |
| "tool/genrsa.cc", |
| "tool/pkcs12.cc", |
| "tool/rand.cc", |
| "tool/server.cc", |
| "tool/sign.cc", |
| "tool/speed.cc", |
| "tool/tool.cc", |
| "tool/transport_common.cc" |
| ] |
| } |
| } |