about summary refs log tree commit diff homepage
diff options
context:
space:
mode:
authorMartin Nowack <m.nowack@imperial.ac.uk>2019-07-25 16:24:16 +0100
committerCristian Cadar <c.cadar@imperial.ac.uk>2019-07-30 12:38:24 +0100
commit7547a1a17d93e68b62b942253e0c14fd324d1b75 (patch)
treedeff3ad9fa0e0627dcf789256629a3b9139eb393
parente0103f5c669960bca6bfefbb254802ba57442900 (diff)
downloadklee-7547a1a17d93e68b62b942253e0c14fd324d1b75.tar.gz
Provide klee runtime build type as parameter
Allow to build klee runtime with different build parameters using the build script.
-rw-r--r--.travis.yml5
-rw-r--r--Dockerfile2
-rw-r--r--scripts/build/p-klee.inc2
-rw-r--r--scripts/build/v-klee.inc1
4 files changed, 8 insertions, 2 deletions
diff --git a/.travis.yml b/.travis.yml
index e731af67..290797b4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -40,6 +40,7 @@ env:
     - ENABLE_OPTIMIZED: 1
     - ENABLE_DEBUG: 1
     - GTEST_VERSION: 1.7.0
+    - KLEE_RUNTIME_BUILD: "Debug+Asserts"
     - LLVM_VERSION: 6.0
     - METASMT_VERSION: qf_abv
     - MINISAT_VERSION: "master"
@@ -85,8 +86,8 @@ env:
     # Check at least one build with Asserts disabled.
     - SOLVERS=STP DISABLE_ASSERTIONS=1
 
-    # Check without TCMALLOC
-    - USE_TCMALLOC=0
+    # Check without TCMALLOC and with an optimised runtime library
+    - USE_TCMALLOC=0 KLEE_RUNTIME_BUILD="Release+Debug+Asserts"
 
     # Coverage build
     - ENABLE_OPTIMIZED=0 COVERAGE=1
diff --git a/Dockerfile b/Dockerfile
index 7050837d..f9e7c291 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -31,6 +31,8 @@ ENV STP_VERSION=2.3.3
 ENV MINISAT_VERSION=master
 ENV Z3_VERSION=4.8.4
 ENV USE_LIBCXX=1
+ENV KLEE_RUNTIME_BUILD="Debug+Asserts"
+
 COPY . /tmp/klee_src/
 RUN /tmp/klee_src//scripts/build/build.sh --debug --install-system-deps klee
 LABEL maintainer="KLEE Developers"
diff --git a/scripts/build/p-klee.inc b/scripts/build/p-klee.inc
index 8479a2ca..a1520f83 100644
--- a/scripts/build/p-klee.inc
+++ b/scripts/build/p-klee.inc
@@ -138,6 +138,8 @@ fi
   else
     CMAKE_ARGUMENTS+=("-DCMAKE_BUILD_TYPE=Debug")
   fi
+
+  CMAKE_ARGUMENTS+=("-DKLEE_RUNTIME_BUILD_TYPE=${KLEE_RUNTIME_BUILD}")
   
 # TODO: We should support Ninja too
 # Configure KLEE
diff --git a/scripts/build/v-klee.inc b/scripts/build/v-klee.inc
index 62fdf9dd..5f7d9fca 100644
--- a/scripts/build/v-klee.inc
+++ b/scripts/build/v-klee.inc
@@ -1,6 +1,7 @@
 # Build information for KLEE
 required_variables_klee=(
   "COVERAGE"
+  "KLEE_RUNTIME_BUILD"
   "USE_TCMALLOC"
   "USE_LIBCXX"
 )