#===----------------------------------------------------------------------===## # # Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. # See https://llvm.org/LICENSE.txt for license information. # SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception # #===----------------------------------------------------------------------===## # # This file describes the various pre-commit CI bots used to test Clang against # libc++ under various configurations. Unlike the usual libc++ CI pipeline, # which aims to test libc++ itself, this pipeline aims to test Clang by # compiling libc++ and running its test suite against the just-built Clang, # in various configurations. # env: LLVM_HEAD_VERSION: "16" steps: - label: "Building clang" commands: - "mkdir install" - "cmake -S llvm -B build -G Ninja -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=install -DLLVM_ENABLE_PROJECTS=\"clang;compiler-rt\"" - "ninja -C build install-clang install-clang-resource-headers" - "buildkite-agent artifact upload 'install/**/*'" env: CC: "clang-${LLVM_HEAD_VERSION}" CXX: "clang++-${LLVM_HEAD_VERSION}" agents: queue: "libcxx-builders" os: "linux" retry: automatic: - exit_status: -1 # Agent was lost limit: 2 timeout_in_minutes: 120 - wait - label: "C++03" commands: - "buildkite-agent artifact download 'install/**' ." - "export CC=$(pwd)/install/bin/clang" - "export CXX=$(pwd)/install/bin/clang++" - "chmod +x install/bin/clang install/bin/clang++" - "libcxx/utils/ci/run-buildbot generic-cxx03" artifact_paths: - "**/test-results.xml" - "**/crash_diagnostics/*" env: LLVM_SYMBOLIZER_PATH: "/usr/bin/llvm-symbolizer-${LLVM_HEAD_VERSION}" # TODO: Should we build that from scratch? CLANG_CRASH_DIAGNOSTICS_DIR: "crash_diagnostics" agents: queue: "libcxx-builders" os: "linux" retry: automatic: - exit_status: -1 # Agent was lost limit: 2 timeout_in_minutes: 120 - label: "C++2b" commands: - "buildkite-agent artifact download 'install/**' ." - "export CC=$(pwd)/install/bin/clang" - "export CXX=$(pwd)/install/bin/clang++" - "chmod +x install/bin/clang install/bin/clang++" - "libcxx/utils/ci/run-buildbot generic-cxx2b" artifact_paths: - "**/test-results.xml" - "**/crash_diagnostics/*" env: LLVM_SYMBOLIZER_PATH: "/usr/bin/llvm-symbolizer-${LLVM_HEAD_VERSION}" # TODO: Should we build that from scratch? CLANG_CRASH_DIAGNOSTICS_DIR: "crash_diagnostics" agents: queue: "libcxx-builders" os: "linux" retry: automatic: - exit_status: -1 # Agent was lost limit: 2 timeout_in_minutes: 120 - label: "Modules" commands: - "buildkite-agent artifact download 'install/**' ." - "export CC=$(pwd)/install/bin/clang" - "export CXX=$(pwd)/install/bin/clang++" - "chmod +x install/bin/clang install/bin/clang++" - "libcxx/utils/ci/run-buildbot generic-modules" artifact_paths: - "**/test-results.xml" - "**/crash_diagnostics/*" env: LLVM_SYMBOLIZER_PATH: "/usr/bin/llvm-symbolizer-${LLVM_HEAD_VERSION}" # TODO: Should we build that from scratch? CLANG_CRASH_DIAGNOSTICS_DIR: "crash_diagnostics" agents: queue: "libcxx-builders" os: "linux" retry: automatic: - exit_status: -1 # Agent was lost limit: 2 timeout_in_minutes: 120