blob: 487733d0a66e37cfe6a84cafeb883d423c1363be [file] [log] [blame]
Name: Abseil
Short Name: absl
URL: https://github.com/abseil/abseil-cpp
License: Apache-2.0
License File: LICENSE
Version: N/A
Revision: 5b1e199db4bc8f83f3d2dc1ced3dee7576ceedc2
Update Mechanism: Manual
Security Critical: yes
Shipped: yes
Description:
This directory contains the source code of Abseil for C++. This can be used by
Chromium, subject to the guidance at
https://chromium.googlesource.com/chromium/src/+/main/styleguide/c++/c++-features.md;
it can be used without restriction by Chromium's dependencies, except that
objects compiled into Chromium itself cannot use anything relying on
absl::base_internal::FastTypeId (see https://crbug.com/1096380).
How to update Abseil:
1. From your source root run third_party/abseil-cpp/roll_abseil.py to download the code from the Abseil git repository and apply chromium specific patches.
2. Update BUILD.gn files to match changes in BUILD.bazel
If there is a new test, add dependcy on it from absl_tests in the
third_party/abseil-cpp/BUILD.gn target
3. From your source root run third_party/abseil-cpp/generate_def_files.py to
regenerate Windows symbol definition files.
4. If abseil adds new features, update styleguide/c++/c++-features.md and add headers for that feature into exclude list in root DEPS
5. Verify your roll no-ops upon `third_party/abseil-cpp/roll_abseil.py --no-branch --no-pull --no-upload --revision <Revision>`
How to review a roll:
1. `git cl patch <CL number>`, then verify that `third_party/abseil-cpp/roll_abseil.py --no-branch --no-pull --no-upload --revision <Revision>`
no-ops.
2. Check that changes to the .def files exist, or whether there is a comment in the CL description calling out they don't change.
3. Check that every change in BUILD.bazel is matched by a counterpart in BUILD.gn.
Local Modifications:
* absl/copts.bzl has been translated to //third_party/absl-cpp/BUILD.gn. Both
files contain lists of compiler flags in order to reduce duplication.
* All the BUILD.bazel files have been translated to BUILD.gn files.
* Patches from //third_party/abseil-cpp/patches have been applied.
* Increment this number to silence presubmits about modifying files in
third_party when regenerating absl .def files: 3