Location of the codeThe BoringSSL code lives at https://boringssl.googlesource.com/boringssl.git. It is mapped into the Chromium tree via src/DEPS to src/third_party/boringssl Filing bugsBugs are filed under the label:Cr-Internals-Network-SSL using the Chromium issue tracker. Refer to BUILDING.md for the canonical build instructions. Assuming those haven't changed, set things up to build through ninja by executing: cd src/third_party/boringssl/src mkdir build cd build cmake -GNinja .. ninja Once the ninja files are generated you can re-build from other directories using: ninja -C <path-to-boringssl-src-build> Running the testsSee instructions in BUILDING.md to run the tests. From a Chromium checkout, this incantation may be used: cd src/third_party/boringssl/src ninja -C build && go run util/all_tests.go && (cd ssl/test/runner/ && go fmt && go test) Or, if CMake is 3.2 or higher: cd src/third_party/boringssl/src ninja -C build run_tests Uploading changes for reviewSee CONTRIBUTING.md in the BoringSSL repository. Because BoringSSL lives in a separate repository, it must be "rolled" into Chromium to get the updates. To roll BoringSSL create a changelist in the Chromium repository that modifies src/DEPS and re-generates the gypi and asm files:
There is a script to automate all these steps: python third_party/boringssl/roll_boringssl.py If the roll has added tests (the gypi modifications will list a new test), then you must add a new entry in boringssl_unittest.cc. See util/all_tests.go for how the test is run. For a test which takes no arguments, the new entry should look like this: TEST(BoringSSL, PQueue) { TestSimple("pqueue_test"); } |