# Boringssl Library

The folder hosts Boringssl library source code in `src` subfolder. A build
script (BUILD.gn) is added and currently provides a library target configured
to accommodate baremetal use. Specifically, source files that require file
system and posix socket support are excluded from compilation. Multithread and
assembly implementation of crypto algorithm are disabled. To use the library,
add "//third_party/boringssl:boringssl_baremetal" to the dependency list.

`BUILD.generated.gni`, `BUILD.generated_tests.gni`, `crypto_test_data.cc` and
`err_data.c` are generated by `generated_build_files.py` based on the current
version of Boringssl source code. If the version of the source code bumps up,
it may be necessary to re-run the script to make sure they are in sync. The
script only supports python2. To re-generate the files, run:

python2 ./generate_build_files.py gn

TODO(zyecheng): Figure out a rolling policy to auto-update generated files.
