Fuchsia: Add BUILD.gn for ret2spec_sa demo
* ret2spec_sa is a demo of a Spectre V2 variant focused on attacking
return address stacks / link stacks.
* Add the demo as a binary to get started; next we will wire in our
mitigations and test the building blocks (for example, x86_ras_fill)
Bug: 12540 Speculative Execution Mitigations.
Bug: 33667 Spectre mitigations?
Change-Id: Icaca5cd77f553733172b4f828eacc1dd899b45fb
diff --git a/BUILD.gn b/BUILD.gn
new file mode 100644
index 0000000..0983c79
--- /dev/null
+++ b/BUILD.gn
@@ -0,0 +1,33 @@
+# Copyright 2020 The Fuchsia Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import("//build/package.gni")
+
+executable("ret2spec_sa_bin") {
+ output_name = "ret2spec_sa"
+
+ sources = [
+ "demos/ret2spec_sa.cc",
+ "demos/cache_sidechannel.cc",
+ "demos/utils.cc",
+ "demos/instr.cc",
+ ]
+
+ include_dirs = [
+ "demos",
+ ]
+
+ deps = [ "//zircon/public/lib/fdio" ]
+}
+
+package("safeside") {
+ deps = [ ":ret2spec_sa_bin" ]
+
+ binaries = [
+ {
+ name = "ret2spec_sa"
+ shell = true
+ },
+ ]
+}