Skip to content
This repository has been archived by the owner on Sep 27, 2019. It is now read-only.

Commit

Permalink
LLVM 3.9 for macOS (#1482)
Browse files Browse the repository at this point in the history
* Replace LLVM 3.7 with 3.9.

* Export new LLVM_DIR.

* Replace exported path again.

* Remove old, commented out Jenkins targets.

* Revert Linux changes.

* One more.
  • Loading branch information
mbutrovich authored and pervazea committed Sep 28, 2018
1 parent 6898305 commit 3bc6d46
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 233 deletions.
4 changes: 2 additions & 2 deletions .travis.yml
Expand Up @@ -14,7 +14,7 @@ matrix:
- PELOTON_BUILD_TYPE=Debug
- SANITIZER=Address
- COVERALLS=Off

- LLVM_DIR=/usr/local/Cellar/llvm@3.9/3.9.1_1
# Linux builds for gcc 5
- os: linux
sudo: required
Expand Down Expand Up @@ -71,7 +71,7 @@ script:
- mkdir build
- cd build
# run cmake. NOTE: the PATH is made explicit to avoid automatic selection of the preinstalled llvm version in the Travis trusty image
- PATH=/usr/lib/llvm-3.7/bin:/usr/bin:$PATH cmake -DCOVERALLS=$COVERALLS -DCMAKE_PREFIX_PATH=`llvm-config-3.7 --prefix` -DCMAKE_BUILD_TYPE=$PELOTON_BUILD_TYPE -DUSE_SANITIZER=$SANITIZER ..
- PATH=/usr/lib/llvm-3.7/bin:/usr/bin:$PATH cmake -DCOVERALLS=$COVERALLS -DCMAKE_BUILD_TYPE=$PELOTON_BUILD_TYPE -DUSE_SANITIZER=$SANITIZER ..
# build
- make -j4
# run tests
Expand Down
233 changes: 3 additions & 230 deletions Jenkinsfile
Expand Up @@ -100,244 +100,17 @@ pipeline {
steps {
sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
sh 'python script/validators/source_validator.py'
sh 'export LLVM_DIR=/usr/local/Cellar/llvm@3.9/3.9.1_1'
sh 'mkdir build'
sh 'cd build && cmake -DCMAKE_PREFIX_PATH=`llvm-config-3.7 --prefix` -DCMAKE_BUILD_TYPE=Debug -DUSE_SANITIZER=Address -DCOVERALLS=False .. && make -j4'
sh 'cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DUSE_SANITIZER=Address -DCOVERALLS=False .. && make -j4'
sh 'cd build && ASAN_OPTIONS=detect_container_overflow=0 make check -j4'
sh 'cd build && make install'
sh 'cd build && bash ../script/testing/psql/psql_test.sh'
sh 'cd build && python ../script/validators/jdbc_validator.py'
sh 'cd build && ASAN_OPTIONS=detect_container_overflow=0 python ../script/testing/junit/run_junit.py'
}
}

// stage('Debian Stretch/gcc-6.3.0/llvm-3.8.1 (Debug)') {
// agent { docker { image 'debian:stretch' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DUSE_SANITIZER=Address -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo apt-get -qq update && sudo apt-get -qq -y --no-install-recommends install wget default-jdk default-jre' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }

// stage('Debian Stretch/gcc-6.3.0/llvm-3.8.1 (Release)') {
// agent { docker { image 'debian:stretch' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && cmake -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo apt-get -qq update && sudo apt-get -qq -y --no-install-recommends install wget default-jdk default-jre' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }

// stage('Fedora 26/gcc-7.1.1/llvm-4.0.1 (Debug)') {
// agent { docker { image 'fedora:26' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && cmake -DCMAKE_BUILD_TYPE=Debug -DUSE_SANITIZER=Address -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo dnf -q install -y wget java-devel' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }

// stage('Fedora 26/gcc-7.1.1/llvm-4.0.1 (Release)') {
// agent { docker { image 'fedora:26' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && cmake -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo dnf -q install -y wget java-devel' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }

// stage('Fedora 27/gcc-7.2.1/llvm-4.0.1 (Debug)') {
// agent { docker { image 'fedora:27' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python ./script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && PATH=/usr/lib64/llvm4.0/bin:$PATH cmake -DCMAKE_CXX_FLAGS="-isystem /usr/include/llvm4.0" -DCMAKE_BUILD_TYPE=Debug -DUSE_SANITIZER=Address -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo dnf -q install -y wget java-devel' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }

// stage('Fedora 27/gcc-7.2.1/llvm-4.0.1 (Release)') {
// agent { docker { image 'fedora:27' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python ./script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && PATH=/usr/lib64/llvm4.0/bin:$PATH cmake -DCMAKE_CXX_FLAGS="-isystem /usr/include/llvm4.0" -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo dnf -q install -y wget java-devel' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }

// stage('CentOS 7/gcc-4.8.5/llvm-3.9.1 (Debug)') {
// agent { docker { image 'centos:7' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && cmake3 -DCMAKE_BUILD_TYPE=Debug -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo yum -q install -y wget java-devel' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }

// stage('CentOS 7/gcc-4.8.5/llvm-3.9.1 (Release)') {
// agent { docker { image 'centos:7' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && cmake3 -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4'
// sh 'cd build && make check -j4'
// sh 'cd build && make install'
// sh 'cd build && bash ../script/testing/psql/psql_test.sh'
// sh 'sudo yum -q install -y wget java-devel' // prerequisites for jdbc_validator
// sh 'cd build && python ../script/validators/jdbc_validator.py'
// sh 'cd build && python ../script/testing/junit/run_junit.py'
// }
// }
// end gcc builds

// begin clang builds
// stage('Ubuntu Xenial/clang-3.7.1/llvm-3.7.1 (Debug)') {
// agent { docker { image 'ubuntu:xenial' } }
// steps {
// sh 'sudo /bin/bash -c "source ./peloton/script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang-3.7 CXX=clang++-3.7 cmake -DCMAKE_BUILD_TYPE=Debug -DCOVERALLS=False .. && make -j4 && make install'
// }
// }

// stage('Ubuntu Xenial/clang-3.7.1/llvm-3.7.1 (Release)') {
// agent { docker { image 'ubuntu:xenial' } }
// steps {
// sh 'sudo /bin/bash -c "source ./peloton/script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang-3.7 CXX=clang++-3.7 cmake -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4 && make install'
// }
// }

// stage('Ubuntu Trusty/clang-3.7.1/llvm-3.7.1 (Debug)') {
// agent { docker { image 'ubuntu:trusty' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang-3.7 CXX=clang++-3.7 cmake -DCMAKE_BUILD_TYPE=Debug -DCOVERALLS=False .. && make -j4'
// }
// }

// stage('Ubuntu Trusty/clang-3.7.1/llvm-3.7.1 (Release)') {
// agent { docker { image 'ubuntu:trusty' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang-3.7 CXX=clang++-3.7 cmake -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4'
// }
// }

// stage('Fedora 26/clang-4.0.1/llvm-4.0.1 (Debug)') {
// agent { docker { image 'fedora:26' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang CXX=clang++ cmake -DCMAKE_BUILD_TYPE=Debug -DCOVERALLS=False .. && make -j4'
// }
// }

// stage('Fedora 26/clang-4.0.1/llvm-4.0.1 (Release)') {
// agent { docker { image 'fedora:26' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang CXX=clang++ cmake -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4'
// }
// }

// stage('Fedora 27/clang-4.0.1/llvm-4.0.1 (Debug)') {
// agent { docker { image 'fedora:27' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang CXX=clang++ cmake -DCMAKE_BUILD_TYPE=Debug -DCOVERALLS=False .. && make -j4'
// }
// }

// stage('Fedora 27/clang-4.0.1/llvm-4.0.1 (Release)') {
// agent { docker { image 'fedora:27' } }
// steps {
// sh 'sudo /bin/bash -c "source ./script/installation/packages.sh"'
// sh 'python script/validators/source_validator.py'
// sh 'mkdir build'
// sh 'cd build && CC=clang CXX=clang++ cmake -DCMAKE_BUILD_TYPE=Release -DCOVERALLS=False .. && make -j4'
// }
// }

// Omit this configuration for now since the corresponding version of clang does not seem to be available on this platform
// stage('CentOS 7/clang-??/llvm-3.9.1') {
// agent { docker { image 'centos:7' } }
// steps {
// sh 'lsb_release -a'
// }
// }
// end clang builds
}
}
}

// Process test results from the first build stage
// post {
// always {
// dir("${WORKSPACE}/../builds/${BUILD_ID}") {
// step([$class: 'XUnitBuilder', testTimeMargin: '3000', thresholdMode: 1, thresholds: [[$class: 'FailedThreshold', failureNewThreshold: '', failureThreshold: '', unstableNewThreshold: '', unstableThreshold: ''], [$class: 'SkippedThreshold', failureNewThreshold: '', failureThreshold: '', unstableNewThreshold: '', unstableThreshold: '']], tools: [[$class: 'GoogleTestType', deleteOutputFiles: true, failIfNotNew: true, pattern: 'test/*_test.xml', skipNoTestFiles: false, stopProcessingIfError: true]]])
// }
// }
// }
}
}
2 changes: 1 addition & 1 deletion script/installation/packages.sh
Expand Up @@ -219,7 +219,7 @@ elif [ "$DISTRO" = "DARWIN" ]; then
brew install lcov
brew install libpqxx
brew install libedit
brew install llvm@3.7
brew install llvm@3.9
brew install postgresql
brew install libffi
brew install tbb
Expand Down

0 comments on commit 3bc6d46

Please sign in to comment.