tree: 6815d6c45c9d369924e75ea3ac1ee36e297842b6 [path history] [tgz]
  1. amd64/
  2. arm/
  3. arm64/
  4. x86/
  5. make.defaults
  6. package.use.mask
  7. profile.bashrc
  8. README.md
profiles/ubsan/README.md

Chrome OS undefined behavior sanitizer build profile

This directory contains the changes needed to build a board's packages with undefined behavior sanitizer.

Building a board with undefined behavior sanitizer

To build packages with memory sanitizer (ubsan) for a board, create a profile in the overlays and point its parent to the appropriate architecture here. For example, to add an ubsan profile for eve:

$ mkdir -p overlays/overlay-eve/profiles/ubsan
$ printf "../base\nchromiumos:ubsan/amd64\n" > \
    overlays/overlay-eve/profiles/ubsan/parent

A private profile may be needed as well.

$ mkdir -p private-overlays/overlay-eve-private/profiles/ubsan
$ printf "../base\neve:ubsan\n" > \
    private-overlays/overlay-eve-private/profiles/ubsan/parent

To build the eve board with ubsan profile, do:

$ setup_board --board=eve --profile=ubsan
$ build_packages --board=eve