cppgc: Update README

Give a little bit of introduction to Oilpan and provide a few links to
navigate the project.

Bug: chromium:1056170
Change-Id: I4ef8c256c8de7932e3393017be6c58ba48ca45f2
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3114141
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Cr-Commit-Position: refs/heads/main@{#76457}
This commit is contained in:
Michael Lippautz 2021-08-24 13:02:29 +02:00 committed by V8 LUCI CQ
parent 438989d6c1
commit 22cd803263
5 changed files with 19 additions and 6 deletions

View File

@ -5892,8 +5892,8 @@ if (want_v8_shell) {
} }
} }
v8_executable("cppgc_sample") { v8_executable("cppgc_hello_world") {
sources = [ "samples/cppgc/cppgc-sample.cc" ] sources = [ "samples/cppgc/hello-world.cc" ]
if (v8_current_cpu == "riscv64") { if (v8_current_cpu == "riscv64") {
libs = [ "atomic" ] libs = [ "atomic" ]

View File

@ -1,3 +1,16 @@
# C++ Garbage Collection # Oilpan: C++ Garbage Collection
This directory provides an open-source garbage collection library for C++. Oilpan is an open-source garbage collection library for C++ that can be used stand-alone or in collaboration with V8's JavaScript garbage collector.
**Key properties**
- Trace-based garbage collection;
- Precise on-heap memory layout;
- Conservative on-stack memory layout;
- Allows for collection with and without considering stack;
- Incremental and concurrent marking;
- Incremental and concurrent sweeping;
- Non-incremental and non-concurrent compaction for selected spaces;
See the [Hello World](https://chromium.googlesource.com/v8/v8/+/main/samples/cppgc/hello-world.cc) example on how to get started using Oilpan to manage C++ code.
Oilpan follows V8's project organization, see e.g. on how we accept [contributions](https://v8.dev/docs/contribute) and [provide a stable API](https://v8.dev/docs/api).

View File

@ -409,7 +409,7 @@ else{else_cond}
deps=['Threads::Threads'], deps=['Threads::Threads'],
desc='Main library'), desc='Main library'),
'sample': 'sample':
Target(name='cppgc_sample', Target(name='cppgc_hello_world',
cmake='add_executable', cmake='add_executable',
deps=['cppgc'], deps=['cppgc'],
desc='Example'), desc='Example'),

View File

@ -50,7 +50,7 @@ cmake -GNinja $rootdir || fail "Failed to execute cmake"
# Build all targets. # Build all targets.
ninja cppgc || fail "Failed to build cppgc" ninja cppgc || fail "Failed to build cppgc"
ninja cppgc_sample || fail "Failed to build sample" ninja cppgc_hello_world || fail "Failed to build sample"
ninja cppgc_unittests || fail "Failed to build unittests" ninja cppgc_unittests || fail "Failed to build unittests"
# Run unittests. # Run unittests.