commit | d71686c8eb616d459e640a95f98b0b12bfa6fb5d | [log] [tgz] |
---|---|---|
author | Lukasz Anforowicz <lukasza@google.com> | Fri Feb 17 14:29:55 2023 -0800 |
committer | Copybara-Service <copybara-worker@google.com> | Fri Feb 17 14:30:40 2023 -0800 |
tree | 19ed39a88f62f13f1183042e1d9e1804da91daac | |
parent | a271c37bc9312bdf2ab8a14eab04cf29cefc8a75 [diff] |
Rename `rstd` to `rs_std`. We are still discussing whether in the long-term we want to have both `rs_std` (with C++ bindings for Rust standard library) and `rs_ffi` (with C++ helpers for working with Rust language and its builtin types like `char`). But regardless of the outcome of this discussion, there is a `rs_std` C++ library and namespace in the future, so renaming `rstd` to `rs_std` seems like a step in the right direction. And until this discussion reaches actionable conclusions, it seems fine to keep `Char` (or `rs_char` or `rchar` after renaming) in the `rs_std` namespace. PiperOrigin-RevId: 510522956
Extremely experimental interop tooling for C++ and Rust.
Please don‘t use, this is an experiment and we don’t yet know where will it take us. There will be breaking changes without warning. Unfortunately, we can't take contributions at this point.
$ apt install clang lld bazel $ git clone git@github.com:google/crubit.git $ cd crubit $ bazel build --linkopt=-fuse-ld=/usr/bin/ld.lld //rs_bindings_from_cc:rs_bindings_from_cc_impl
$ git clone https://github.com/llvm/llvm-project $ cd llvm-project $ CC=clang CXX=clang++ cmake -S llvm -B build -DLLVM_ENABLE_PROJECTS='clang' -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=install $ cmake --build build -j $ # wait... $ cmake --install build $ cd ../crubit $ LLVM_INSTALL_PATH=../llvm-project/install bazel build //rs_bindings_from_cc:rs_bindings_from_cc_impl