about summary refs log tree commit diff homepage
path: root/.travis.yml
diff options
context:
space:
mode:
authorDan Liew <daniel.liew@imperial.ac.uk>2014-09-14 14:23:15 +0100
committerDan Liew <daniel.liew@imperial.ac.uk>2014-09-15 00:17:10 +0100
commit44d0d9bc1f93da603b8e14c9499e086e220f4694 (patch)
treedc268e235a0642aeb3a3a4c5776abb87e4c4a136 /.travis.yml
parent9dc94bf1f28eb64b2c02172c47b175c75757699f (diff)
downloadklee-44d0d9bc1f93da603b8e14c9499e086e220f4694.tar.gz
Clean up travis build scripts a little.
Diffstat (limited to '.travis.yml')
-rw-r--r--.travis.yml42
1 files changed, 27 insertions, 15 deletions
diff --git a/.travis.yml b/.travis.yml
index 2675e3a8..0a1b4269 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,8 +6,9 @@ env:
     ###########################################################################
     # Configurations
     #
-    # Each line in the "env" section represents a set of environmental variables
-    # pass to a build. Thus each line represents a different build
+    # Each line in the "env" section represents a set of environment variables
+    # passed to a build. Thus each line represents a different build
+    # configuration.
     ###########################################################################
 
     # Check the matrix of:
@@ -17,8 +18,8 @@ env:
     # with Asserts enabled.
 
     # FIXME: Enable when we want to test LLVM3.5
-    #- LLVM_VERSION=3.5 STP_VERSION=UPSTREAM KLEE_UCLIBC=0 DISABLE_ASSERTIONS=1 ENABLE_OPTIMIZED=1
-    #- LLVM_VERSION=3.5 STP_VERSION=UPSTREAM KLEE_UCLIBC=1 DISABLE_ASSERTIONS=1 ENABLE_OPTIMIZED=1
+    #- LLVM_VERSION=3.5 STP_VERSION=UPSTREAM KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1
+    #- LLVM_VERSION=3.5 STP_VERSION=UPSTREAM KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1
     - LLVM_VERSION=3.4 STP_VERSION=UPSTREAM KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1
     - LLVM_VERSION=3.4 STP_VERSION=UPSTREAM KLEE_UCLIBC=1 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1
     - LLVM_VERSION=2.9 STP_VERSION=UPSTREAM KLEE_UCLIBC=0 DISABLE_ASSERTIONS=0 ENABLE_OPTIMIZED=1
@@ -34,40 +35,51 @@ env:
     # FIXME: Do Debug+Asserts builds
 cache: apt
 before_install:
-    # Assume Travis image uses Ubuntu 12.04 LTS
+    ###########################################################################
+    # Set up the locations to get various packages from
+    # We assume the Travis image uses Ubuntu 12.04 LTS
+    ###########################################################################
     - sudo sh -c 'echo "deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.4 main" >> /etc/apt/sources.list.d/llvm.list'
     - sudo sh -c 'echo "deb-src http://llvm.org/apt/precise/ llvm-toolchain-precise-3.4 main" >> /etc/apt/sources.list.d/llvm.list'
     - sudo sh -c 'echo "deb http://llvm.org/apt/precise/ llvm-toolchain-precise-3.5 main" >> /etc/apt/sources.list.d/llvm.list'
     - sudo sh -c 'echo "deb-src http://llvm.org/apt/precise/ llvm-toolchain-precise-3.5 main" >> /etc/apt/sources.list.d/llvm.list'
+    # Needed for CMake
     - sudo add-apt-repository -y ppa:ubuntu-sdk-team/ppa
+    # Needed for new libstdc++ and gcc4.8
     - sudo add-apt-repository --yes ppa:ubuntu-toolchain-r/test/
     - wget -O - http://llvm.org/apt/llvm-snapshot.gpg.key|sudo apt-key add -
-    # Needed for new libstdc++ and gcc4.8
     - sudo apt-get update
+    ###########################################################################
+    # Set up out of source build directory
+    ###########################################################################
+    - export KLEE_SRC=`pwd`
+    - cd ../
+    - mkdir build
+    - cd build/
+    - export BUILD_DIR=`pwd`
+    ###########################################################################
+    # Install stuff
+    ###########################################################################
     # FIXME: STP doesn't need everything from Boost!
     - sudo apt-get install gcc-4.8 g++-4.8 libcap-dev cmake libboost-all-dev
     # Make gcc4.8 the default gcc version
     - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20
     - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 20
-    - sudo apt-get install llvm-${LLVM_VERSION} llvm-${LLVM_VERSION}-dev clang-3.4
-    # Make Clang3.4 the default clang version (for building KLEE)
+    # Make Clang3.4 the default clang version
+    - sudo apt-get install clang-3.4
     - sudo update-alternatives --install /usr/bin/clang clang /usr/bin/clang-3.4 20
     - sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/bin/clang++-3.4 20
+    # Install LLVM and the LLVM bitcode compiler we require to build KLEE
+    - ${KLEE_SRC}/.travis/install-llvm-and-runtime-compiler.sh
     # Install lit (llvm-lit is not available)
     - sudo pip install lit
-    # Setup out of source build
-    - export KLEE_SRC=`pwd`
-    - cd ../
-    - mkdir build
-    - cd build/
-    - export BUILD_DIR=`pwd`
     # Build STP
     - mkdir stp
     - cd stp
     - ${KLEE_SRC}/.travis/stp.sh
     - cd ../
 script:
-    # Get need utlities/libraries for testing KLEE
+    # Get needed utlities/libraries for testing KLEE
     - mkdir test-utils/
     - cd test-utils/
     - ${KLEE_SRC}/.travis/testing-utils.sh