about summary refs log tree commit diff homepage
path: root/scripts/build/v-klee.inc
diff options
context:
space:
mode:
authorMartin Nowack <m.nowack@imperial.ac.uk>2019-02-28 11:56:19 +0000
committerCristian Cadar <c.cadar@imperial.ac.uk>2019-03-10 20:10:32 +0000
commitcf930214e12b49e89be4674043d9f461d667baae (patch)
tree90de5ea1c643d0d7ad2c5cf55e862d309e605d48 /scripts/build/v-klee.inc
parentb4d8fe0301b82e8abff0336bf6d1347dff11a853 (diff)
downloadklee-cf930214e12b49e89be4674043d9f461d667baae.tar.gz
Updated dependency build system for KLEE
Provide a single `scripts/build/build.sh` file to build KLEE and its
dependencies.
Diffstat (limited to 'scripts/build/v-klee.inc')
-rw-r--r--scripts/build/v-klee.inc42
1 files changed, 42 insertions, 0 deletions
diff --git a/scripts/build/v-klee.inc b/scripts/build/v-klee.inc
new file mode 100644
index 00000000..d90892f4
--- /dev/null
+++ b/scripts/build/v-klee.inc
@@ -0,0 +1,42 @@
+# Build information for KLEE
+required_variables_klee=(
+  "COVERAGE"
+  "USE_TCMALLOC"
+)
+
+required_variables_check_klee() {
+  check_bool "COVERAGE"
+  check_bool "USE_TCMALLOC"
+}
+
+# On which artifacts does KLEE depend on
+artifact_dependency_klee(){
+  local dependencies=("llvm" "solvers" "gtest")
+  if [[ "${OS}" != "osx" ]]; then
+    dependencies+=(uclibc)
+  fi
+
+  if [[ "${USE_TCMALLOC}" -eq 1 ]]; then
+    dependencies+=("tcmalloc")
+  fi
+
+  for d in "${dependencies[@]}"; do
+    echo "${d}"
+  done
+}
+
+runtime_artifact_dependency_klee(){
+  local dependencies=("")
+  if [[ "${OS}" != "osx" ]]; then
+    echo "uclibc"
+  fi
+  dependencies+=("llvm" "solvers" "gtest")
+
+  if [[ "${USE_TCMALLOC}" -eq 1 ]]; then
+    dependencies+=("tcmalloc")
+  fi
+
+  for d in "${dependencies[@]}"; do
+    echo "${d}"
+  done
+}