From eb45ce721298e5ece9f7648d3fac1bd9f462514c Mon Sep 17 00:00:00 2001 From: Avril Date: Sat, 5 Jun 2021 19:14:53 +0100 Subject: [PATCH] update README update Makefile --- Makefile | 4 ++-- README.md | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 6f8163e..cee8aeb 100644 --- a/Makefile +++ b/Makefile @@ -28,8 +28,8 @@ RELEASE_CFLAGS?= -O3 -flto $(OPT_FLAGS) RELEASE_CXXFLAGS?= -O3 -flto $(CXX_OPT_FLAGS) RELEASE_LDFLAGS?= -O3 -flto -DEBUG_CFLAGS?= -O0 -g -DDEBUG -DEBUG_CXXFLAGS?= $(DEBUG_CFLAGS) +DEBUG_CFLAGS?= -O0 -g -DDEBUG +DEBUG_CXXFLAGS?=-O0 -g -DDEBUG DEBUG_LDFLAGS?= # Objects diff --git a/README.md b/README.md index 764480f..9edd796 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,8 @@ Automatic copy-on-write semantic memory slices for use in C (and C++) See `include/cow.h` for documentation on each function. Each function, macro, and type definition in the header will be prefixed with `cow_` or `COW_`. Internal non-prototpyed items use the namespace `_cow_` or `_COW_`. +The C++ interface defines the type `Cow`, a reference-counted wrapper over `cow_t` instances that supports cloning through its subtype, `Cow::Fake`, and automatically ensures the originally created `cow_t` is not destroyed until all its clones are, as well as the namespace `_cow_util` which contains memory accessor helpers `Span` and `Slice` (aka `Span::Slice`). + ## Building Run `make` to build to build the `release` (optimised) target of the library. It will create four files: `libcow-release.a`, `libcow-release.so`, `libcow.a`, and `libcow.so`.