LLVM libcxx#

The $pw_external_llvm_libcxx/ module provides various helpers to optionally use LLVM libcxx with pw_libcxx.

Using upstream LLVM libcxx#

If you want to use LLVM libcxx, you must do the following:

Submodule#

Add LLVM libcxx to your workspace with the following command.

$ git submodule add https://llvm.googlesource.com/llvm-project/libcxx \
> third_party/llvm_libcxx/src

Note, this git repository is maintained by Google and is a slice of upstream LLVM including only the libcxx subdirectory.

GN#

  • Set the GN var dir_pw_third_party_llvm_libcxx to the location of the LLVM libcxx source. If you used the command above, this will be //third_party/llvm_libcxx/src.

    This can be set in your args.gn or .gn file:

    dir_pw_third_party_llvm_libcxx = "//third_party/llvm_libcxx_src"
    

Status#

The llvm_libcxx integration in pw_libcxx is under active development.