aboutsummaryrefslogtreecommitdiffhomepage
path: root/site/dev/testing
diff options
context:
space:
mode:
authorGravatar Hal Canary <halcanary@google.com>2017-03-02 15:14:07 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-03-06 15:23:55 +0000
commit51aa1f5cce8951f7b2d89351e0ab578aa8d9b619 (patch)
treeda66bee1becb3dfea9073f7f9575b7174a2f38e0 /site/dev/testing
parent06b302585c35000642898752a6d4e7cf5b67ceac (diff)
Documentation: ASAN, MSAN, and TSAN
NOTRY=true Change-Id: I7ed212047a60d323e2e98470fc1eed454d333958 Reviewed-on: https://skia-review.googlesource.com/9170 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org>
Diffstat (limited to 'site/dev/testing')
-rw-r--r--site/dev/testing/xsan.md57
1 files changed, 57 insertions, 0 deletions
diff --git a/site/dev/testing/xsan.md b/site/dev/testing/xsan.md
new file mode 100644
index 0000000000..fc77eda714
--- /dev/null
+++ b/site/dev/testing/xsan.md
@@ -0,0 +1,57 @@
+Testing Skia with MSAN, ASAN, and TSAN
+======================================
+
+Get Clang binaries
+------------------
+
+ CLANGDIR="${HOME}/clang"
+
+ tools/git-sync-deps
+ CC= CXX= infra/bots/assets/clang_linux/create.py -t "$CLANGDIR"
+
+Configure and Compile Skia with MSAN
+------------------------------------
+
+ CLANGDIR="${HOME}/clang"
+ mkdir -p out/msan
+ cat > out/msan/args.gn <<- EOF
+ cc = "${CLANGDIR}/bin/clang"
+ cxx = "${CLANGDIR}/bin/clang++"
+ extra_ldflags = [ "-Wl,-rpath", "-Wl,${CLANGDIR}/msan" ]
+ sanitize = "MSAN"
+ skia_use_fontconfig = false
+ EOF
+ tools/git-sync-deps
+ bin/gn gen out/msan
+ ninja -C out/msan
+
+Configure and Compile Skia with ASAN
+------------------------------------
+
+ CLANGDIR="${HOME}/clang"
+ mkdir -p out/asan
+ cat > out/asan/args.gn <<- EOF
+ cc = "${CLANGDIR}/bin/clang"
+ cxx = "${CLANGDIR}/bin/clang++"
+ sanitize = "ASAN"
+ EOF
+ tools/git-sync-deps
+ bin/gn gen out/asan
+ ninja -C out/asan
+
+Configure and Compile Skia with TSAN
+------------------------------------
+
+ CLANGDIR="${HOME}/clang"
+ mkdir -p out/tsan
+ cat > out/tsan/args.gn <<- EOF
+ cc = "${CLANGDIR}/bin/clang"
+ cxx = "${CLANGDIR}/bin/clang++"
+ sanitize = "TSAN"
+ is_debug = false
+ EOF
+ tools/git-sync-deps
+ bin/gn gen out/tsan
+ ninja -C out/tsan
+
+