diff --git a/.circleci/config.yml b/.circleci/config.yml index d2bd27f9..ac120f40 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -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