Add GCC 8, Clang 6, Clang 7 to Circle CI

This commit is contained in:
Sebastian Messmer 2018-09-27 23:28:25 -07:00
parent 88a87d304b
commit 06b2b1d5f1
1 changed files with 87 additions and 21 deletions

View File

@ -37,14 +37,14 @@ references:
sudo touch /etc/apt/sources.list.d/clang.list
sudo chmod o+w /etc/apt/sources.list.d/clang.list
cat > /etc/apt/sources.list.d/clang.list << EOF
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.7 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.7 main
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.8 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.8 main
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-4.0 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-4.0 main
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-5.0 main
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-6.0 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-6.0 main
deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-7 main
deb-src http://apt.llvm.org/trusty/ llvm-toolchain-trusty-7 main
EOF
sudo chmod o-w /etc/apt/sources.list.d/clang.list
@ -253,7 +253,25 @@ jobs:
APT_COMPILER_PACKAGE: "g++-7"
CXXFLAGS: ""
BUILD_TYPE: "Release"
clang_4_0_debug:
gcc_8_debug:
<<: *job_definition
environment:
CC: gcc-8
CXX: g++-8
BUILD_TOOLSET: gcc
APT_COMPILER_PACKAGE: "g++-8"
CXXFLAGS: ""
BUILD_TYPE: "Debug"
gcc_8_release:
<<: *job_definition
environment:
CC: gcc-8
CXX: g++-8
BUILD_TOOLSET: gcc
APT_COMPILER_PACKAGE: "g++-8"
CXXFLAGS: ""
BUILD_TYPE: "Release"
clang_4_debug:
<<: *job_definition
environment:
CC: clang-4.0
@ -262,7 +280,7 @@ jobs:
APT_COMPILER_PACKAGE: clang-4.0
CXXFLAGS: ""
BUILD_TYPE: "Debug"
clang_4_0_release:
clang_4_release:
<<: *job_definition
environment:
CC: clang-4.0
@ -271,7 +289,7 @@ jobs:
APT_COMPILER_PACKAGE: clang-4.0
CXXFLAGS: ""
BUILD_TYPE: "Release"
clang_5_0_debug:
clang_5_debug:
<<: *job_definition
environment:
CC: clang-5.0
@ -280,7 +298,7 @@ jobs:
APT_COMPILER_PACKAGE: clang-5.0
CXXFLAGS: ""
BUILD_TYPE: "Debug"
clang_5_0_release:
clang_5_release:
<<: *job_definition
environment:
CC: clang-5.0
@ -289,22 +307,58 @@ jobs:
APT_COMPILER_PACKAGE: clang-5.0
CXXFLAGS: ""
BUILD_TYPE: "Release"
clang_6_debug:
<<: *job_definition
environment:
CC: clang-6.0
CXX: clang++-6.0
BUILD_TOOLSET: clang
APT_COMPILER_PACKAGE: clang-6.0
CXXFLAGS: ""
BUILD_TYPE: "Debug"
clang_6_release:
<<: *job_definition
environment:
CC: clang-6.0
CXX: clang++-6.0
BUILD_TOOLSET: clang
APT_COMPILER_PACKAGE: clang-6.0
CXXFLAGS: ""
BUILD_TYPE: "Release"
clang_7_debug:
<<: *job_definition
environment:
CC: clang-7
CXX: clang++-7
BUILD_TOOLSET: clang
APT_COMPILER_PACKAGE: clang-7
CXXFLAGS: ""
BUILD_TYPE: "Debug"
clang_7_release:
<<: *job_definition
environment:
CC: clang-7
CXX: clang++-7
BUILD_TOOLSET: clang
APT_COMPILER_PACKAGE: clang-7
CXXFLAGS: ""
BUILD_TYPE: "Release"
no_compatibility:
<<: *job_definition
environment:
CC: clang-5.0
CXX: clang++-5.0
CC: clang-7
CXX: clang++-7
BUILD_TOOLSET: clang
APT_COMPILER_PACKAGE: clang-5.0
APT_COMPILER_PACKAGE: clang-7
CXXFLAGS: "-DCRYFS_NO_COMPATIBILITY"
BUILD_TYPE: "Debug"
address_sanitizer:
<<: *job_definition
environment:
CC: clang-5.0
CXX: clang++-5.0
CC: clang-7
CXX: clang++-7
BUILD_TOOLSET: clang
APT_COMPILER_PACKAGE: clang-5.0
APT_COMPILER_PACKAGE: clang-7
CXXFLAGS: "-O2 -fsanitize=address -fno-omit-frame-pointer -fno-common -fsanitize-address-use-after-scope"
BUILD_TYPE: "Debug"
# Note: Leak detection is disabled because libfuse itself is leaky...
@ -313,10 +367,10 @@ jobs:
thread_sanitizer:
<<: *job_definition
environment:
CC: clang-5.0
CXX: clang++-5.0
CC: clang-7
CXX: clang++-7
BUILD_TOOLSET: clang
APT_COMPILER_PACKAGE: clang-5.0
APT_COMPILER_PACKAGE: clang-7
CXXFLAGS: "-O2 -fsanitize=thread -fno-omit-frame-pointer"
BUILD_TYPE: "Debug"
DISABLE_BROKEN_TSAN_TESTS: true
@ -338,13 +392,25 @@ workflows:
<<: *enable_for_tags
- gcc_7_release:
<<: *enable_for_tags
- clang_4_0_debug:
- gcc_8_debug:
<<: *enable_for_tags
- clang_4_0_release:
- gcc_8_release:
<<: *enable_for_tags
- clang_5_0_debug:
- clang_4_debug:
<<: *enable_for_tags
- clang_5_0_release:
- clang_4_release:
<<: *enable_for_tags
- clang_5_debug:
<<: *enable_for_tags
- clang_5_release:
<<: *enable_for_tags
- clang_6_debug:
<<: *enable_for_tags
- clang_6_release:
<<: *enable_for_tags
- clang_7_debug:
<<: *enable_for_tags
- clang_7_release:
<<: *enable_for_tags
- no_compatibility:
<<: *enable_for_tags