• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1.. _module-pw_third_party_abseil_cpp:
2
3==========
4Abseil C++
5==========
6The ``$dir_pw_third_party/abseil-cpp/`` module provides build files to allow
7optionally including upstream Abseil C++.
8
9.. _module-pw_third_party_abseil_cpp-using_upstream:
10
11-------------------------
12Using upstream Abseil C++
13-------------------------
14If you want to use Abseil C++, you must do the following:
15
16Submodule
17=========
18Add Abseil C++ to your workspace with the following command.
19
20.. code-block:: sh
21
22   git submodule add https://github.com/abseil/abseil-cpp.git \
23     third_party/abseil-cpp/src
24
25GN
26==
27* Set the GN var ``dir_pw_third_party_abseil-cpp`` to the location of the
28  Abseil C++ source.
29
30  If you used the command above, this will be
31  ``//third_party/abseil-cpp/src``
32
33  This can be set in your args.gn or .gn file like:
34  ``dir_pw_third_party_abseil_cpp = "//third_party/abseil-cpp/src"``
35
36Updating
37========
38The GN build files are generated from the third-party Bazel build files using
39$dir_pw_build/py/pw_build/generate_3p_gn.py.
40
41The script uses data taken from ``$dir_pw_third_party/abseil-cpp/repo.json``.
42
43The script should be re-run whenever the submodule is updated or the JSON file
44is modified. Specify the location of the Bazel repository can be specified using
45the ``-w`` option, e.g.
46
47.. code-block:: sh
48
49   python pw_build/py/pw_build/generate_3p_gn.py \
50     -w third_party/abseil-cpp/src
51
52Version
53=======
54The update script was last run for revision `67f9650`_.
55
56.. _67f9650: https://github.com/abseil/abseil-cpp/tree/67f9650c93a4fa04728a5b754ae8297d2c55d898
57.. DO NOT EDIT BELOW THIS LINE. Generated section.
58
59Version
60=======
61The update script was last run for revision `3ab97e72`_.
62
63.. _3ab97e72: https://github.com/abseil/abseil-cpp/tree/3ab97e7212bff931a201c794fa1331960158bbfa
64