Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/share/mk Document MKLIBCSANITIZER in bsd.README



details:   https://anonhg.NetBSD.org/src/rev/f600cadcb427
branches:  trunk
changeset: 363405:f600cadcb427
user:      kamil <kamil%NetBSD.org@localhost>
date:      Wed Jul 25 23:30:22 2018 +0000

description:
Document MKLIBCSANITIZER in bsd.README

It's a special kind of a sanitizer inside libc.

diffstat:

 share/mk/bsd.README |  24 +++++++++++++++++++++++-
 1 files changed, 23 insertions(+), 1 deletions(-)

diffs (38 lines):

diff -r 6df3eb614896 -r f600cadcb427 share/mk/bsd.README
--- a/share/mk/bsd.README       Wed Jul 25 22:07:59 2018 +0000
+++ b/share/mk/bsd.README       Wed Jul 25 23:30:22 2018 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: bsd.README,v 1.380 2018/07/25 19:15:19 kamil Exp $
+#      $NetBSD: bsd.README,v 1.381 2018/07/25 23:30:22 kamil Exp $
 #      @(#)bsd.README  8.2 (Berkeley) 4/2/94
 
 This is the README file for the make "include" files for the NetBSD
@@ -276,6 +276,28 @@
                (libraries and support programs).
                Default: yes
 
+MKLIBCSANITIZER        If "yes", use the selected sanitizer inside libc to compile
+               userland programs and libraries as defined in
+               USE_LIBCSANITIZER, which defaults to "undefined".
+
+               The undefined behavior detector is currently the only supported
+               sanitizer in this mode. Its runtime differs from the UBSan
+               available in MKSANITIZER, and it is reimplemented from scratch
+               as micro-UBSan in the user mode (uUBSan). Its code is shared
+               with the kernel mode variation (kUBSan). The runtime is
+               stripped down from C++ features, in particular -fsanitize=vptr
+               is not supported and explicitly disabled. The only runtime
+               configuration is restricted to the LIBC_UBSAN environment
+               variable, that is designed to be safe for hardening.
+
+               The USE_LIBCSANITIZER value is passed to the -fsanitize=
+               argument to the compiler in CFLAGS and CXXFLAGS, but not in
+               LDFLAGS, as the runtime part is located inside libc.
+
+               Additional sanitizer arguments can be passed through
+               LIBCSANITIZERFLAGS.
+               Default: no
+
 MKLIBCXX       If not "no", build and install libc++.
                Default: no
 



Home | Main Index | Thread Index | Old Index