blob: 6b5c62897df2fcb07292d258933e9841f0987290 [file] [log] [blame]
Name: Abseil
Short Name: absl
URL: https://github.com/abseil/abseil-cpp
License: Apache 2.0
License File: LICENSE
Version: 0
Revision: 38db52adb2eabc0969195b33b30763e0a1285ef9
Security Critical: yes
Description:
This directory contains the source code of Abseil for C++. This can be used by
Chromium's dependencies, but shouldn't be used by Chromium itself.
See: https://goo.gl/TgnJb8.
How to update Abseil:
1. Download the code from the Abseil git repository (see URL).
2. Copy the content of the Abseil git repo to //third_party/abseil-cpp.
3. From //third_party/abseil-cpp/ launch ./rename_annotations.sh.
This script will rewrite dynamic_annotations and thread_annotations
macros and function inside Abseil in order to avoid ODR violations
and macro clashing with Chromium
(see: https://github.com/abseil/abseil-cpp/issues/122).
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 has been translated to BUILD.gn files.
* Functions and macros in absl/base/dynamic_annotations.{h,cc} and
absl/base/thread_annotations.h have been renamed to avoid ODR
violations and macro clashes with Chromium (see step 3).
* Patches from //third_party/abseil-cpp/patches have been applied.