diff options
-rw-r--r-- | .travis.yml | 14 | ||||
-rwxr-xr-x | .travis/klee.sh | 4 | ||||
-rw-r--r-- | Dockerfile | 4 | ||||
-rw-r--r-- | test/Runtime/POSIX/Futimesat.c | 12 |
4 files changed, 18 insertions, 16 deletions
diff --git a/.travis.yml b/.travis.yml index be30c1e2..07ef8a01 100644 --- a/.travis.yml +++ b/.travis.yml @@ -20,7 +20,7 @@ env: # Check the matrix of: # LLVM : {2.9, 3.4} # STP : {2.1.0, master} - # UCLIBC: {ENABLED, DISABLED} + # UCLIBC: {0, klee_uclibc_v1.0.0, klee_0_9_29} // Note ``0`` means disabled # with Asserts enabled. # COVERAGE set indicated that coverage data should be uplaoded to the server, only ONE job should have COVERAGE set @@ -30,19 +30,19 @@ env: #- LLVM_VERSION=3.5 STP_VERSION=master KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 #- LLVM_VERSION=3.5 STP_VERSION=master KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 - LLVM_VERSION=3.4 STP_VERSION=master KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=1 - - LLVM_VERSION=3.4 STP_VERSION=master KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 + - LLVM_VERSION=3.4 STP_VERSION=master KLEE_UCLIBC=klee_0_9_29 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 - LLVM_VERSION=2.9 STP_VERSION=master KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 - - LLVM_VERSION=2.9 STP_VERSION=master KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 + - LLVM_VERSION=2.9 STP_VERSION=master KLEE_UCLIBC=klee_0_9_29 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 - LLVM_VERSION=3.4 STP_VERSION=2.1.0 KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 - - LLVM_VERSION=3.4 STP_VERSION=2.1.0 KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 + - LLVM_VERSION=3.4 STP_VERSION=2.1.0 KLEE_UCLIBC=klee_uclibc_v1.0.0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 - LLVM_VERSION=2.9 STP_VERSION=2.1.0 KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 - - LLVM_VERSION=2.9 STP_VERSION=2.1.0 KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 + - LLVM_VERSION=2.9 STP_VERSION=2.1.0 KLEE_UCLIBC=klee_uclibc_v1.0.0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1 COVERAGE=0 # Check at least one build with Asserts disabled. - - LLVM_VERSION=2.9 STP_VERSION=2.1.0 KLEE_UCLIBC=1 DISABLE_ASSERTIONS=1 ENABLE_OPTIMIZED=1 COVERAGE=0 + - LLVM_VERSION=2.9 STP_VERSION=2.1.0 KLEE_UCLIBC=klee_uclibc_v1.0.0 DISABLE_ASSERTIONS=1 ENABLE_OPTIMIZED=1 COVERAGE=0 # Check at least one Debug+Asserts build - - LLVM_VERSION=3.4 STP_VERSION=master KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=0 COVERAGE=0 + - LLVM_VERSION=3.4 STP_VERSION=master KLEE_UCLIBC=klee_uclibc_v1.0.0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=0 COVERAGE=0 global: - secure: EF/WAc4BdIRUchF3mjATN3/UwtGWtGaRgb5oIIJHjKhgZFdPsgWsXFgaOB0jaK2hfO/svj/LvlasuRIGxeePVjeaiX8ZlVpuHiX67vdYLY+0kCDRwkusRjm60/GbPU9O/Xjgb/d4aWAEkoq5OnsprVTEvU8iY2JHtAqgwR+wW9I= - secure: Hrp1MRSxDUH2GTQg3QR/yUttY/3KmgbFb5e+zyy551dKpHjxJdsNe8bquY9oFoT7KmPQYl0HNNjEv4qWW8RK+HWHOCB55nL1KlGpOG7vAJcUEZg7ScbliGgiovMB6jIQVfeP9FhYngfc13vNZQ5PGlqzfSsHSAbvkwEogBToHVw= diff --git a/.travis/klee.sh b/.travis/klee.sh index 3008c7fb..fbce61e7 100755 --- a/.travis/klee.sh +++ b/.travis/klee.sh @@ -28,8 +28,8 @@ fi ############################################################################### # klee-uclibc ############################################################################### -if [ "${KLEE_UCLIBC}" -eq 1 ]; then - git clone --depth 1 git://github.com/klee/klee-uclibc.git +if [ "${KLEE_UCLIBC}" != "0" ]; then + git clone --depth 1 -b ${KLEE_UCLIBC} git://github.com/klee/klee-uclibc.git cd klee-uclibc ./configure --make-llvm-lib --with-cc "${KLEE_CC}" --with-llvm-config /usr/bin/llvm-config-${LLVM_VERSION} make diff --git a/Dockerfile b/Dockerfile index c15d7034..b6aab804 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,7 +9,7 @@ ENV LLVM_VERSION=3.4 \ STP_VERSION=master \ DISABLE_ASSERTIONS=0 \ ENABLE_OPTIMIZED=1 \ - KLEE_UCLIBC=1 \ + KLEE_UCLIBC=klee_uclibc_v1.0.0 \ KLEE_SRC=/home/klee/klee_src \ COVERAGE=0 \ BUILD_DIR=/home/klee/klee_build @@ -98,7 +98,7 @@ RUN sudo mkdir -p /usr/lib/llvm-${LLVM_VERSION}/build/Release/bin && \ sudo mkdir -p /usr/lib/llvm-${LLVM_VERSION}/build/include && \ sudo ln -s /usr/include/llvm-${LLVM_VERSION}/llvm /usr/lib/llvm-${LLVM_VERSION}/build/include/llvm && \ sudo ln -s /usr/include/llvm-c-${LLVM_VERSION}/llvm-c /usr/lib/llvm-${LLVM_VERSION}/build/include/llvm-c && \ - for static_lib in /usr/lib/llvm-3.4/lib/*.a ; do sudo ln -s ${static_lib} /usr/lib/`basename ${static_lib}`; done + for static_lib in /usr/lib/llvm-${LLVM_VERSION}/lib/*.a ; do sudo ln -s ${static_lib} /usr/lib/`basename ${static_lib}`; done # FIXME: This is **really gross**. The Official Ubuntu LLVM packages don't ship # with ``FileCheck`` or the ``not`` tools so we have to hack building these diff --git a/test/Runtime/POSIX/Futimesat.c b/test/Runtime/POSIX/Futimesat.c index 011fe56f..a6d9dc04 100644 --- a/test/Runtime/POSIX/Futimesat.c +++ b/test/Runtime/POSIX/Futimesat.c @@ -1,8 +1,7 @@ -// RUN: %llvmgcc %s -emit-llvm -O0 -g -c -o %t2.bc -// RUN: touch /tmp/futimesat-dummy +// RUN: %llvmgcc %s -emit-llvm -O0 -g -c -DTDIR=%T -o %t2.bc +// RUN: touch %T/futimesat-dummy // RUN: rm -rf %t.klee-out // RUN: %klee --output-dir=%t.klee-out --posix-runtime --exit-on-error %t2.bc --sym-files 1 10 -// RUN: rm /tmp/futimesat-dummy #include <assert.h> #include <fcntl.h> @@ -11,6 +10,9 @@ #include <time.h> #include <unistd.h> +#define xstr(s) str(s) +#define str(s) #s + int main(int argc, char **argv) { int r; struct stat buf; @@ -29,8 +31,8 @@ int main(int argc, char **argv) { assert(buf.st_atime == times[0].tv_sec && buf.st_mtime == times[1].tv_sec); - /* assumes /tmp exists and is writeable */ - int fd = open("/tmp", O_RDONLY); + /* assumes TDIR exists and is writeable */ + int fd = open( xstr(TDIR) , O_RDONLY); assert(fd > 0); r = futimesat(fd, "futimesat-dummy", times); assert(r != -1); |