From 19652a19ad08ae6a268eccce91d782a24b80ef31 Mon Sep 17 00:00:00 2001 From: haonanya Date: Thu, 17 Feb 2022 11:10:15 +0800 Subject: [PATCH] Switch to Github Actions on ocl-open-100 Signed-off-by: haonanya --- .github/workflows/check-in-tree-build.yml | 72 +++++++++++++++++++++++ 1 file changed, 72 insertions(+) create mode 100644 .github/workflows/check-in-tree-build.yml diff --git a/.github/workflows/check-in-tree-build.yml b/.github/workflows/check-in-tree-build.yml new file mode 100644 index 00000000..b200f14e --- /dev/null +++ b/.github/workflows/check-in-tree-build.yml @@ -0,0 +1,72 @@ +name: In-tree build + +on: + push: + branches: + - 'ocl-open-*' + paths-ignore: # no need to check build for: + - 'docs/**' # documentation + - '**.md' # README + pull_request: + branches: + - 'ocl-open-*' + paths-ignore: # no need to check build for: + - 'docs/**' # documentation + - '**.md' # README + schedule: + # Weekly build on Mondays + # Ideally, we might want to simplify our regular nightly build as we + # probably don't need every configuration to be built every day: most of + # them are only necessary in pre-commits to avoid breakages + - cron: 0 0 * * 0 + +env: + LLVM_VERSION: 10 + +jobs: + build_and_test_linux: + name: Linux + strategy: + matrix: + build_type: [Release] + include: + - build_type: Release + fail-fast: false + runs-on: ubuntu-18.04 + steps: + - name: setup git config + run: | + git config --global user.email "<>" + git config --global user.name "GitHub Actions Bot" + - name: Checkout LLVM sources + uses: actions/checkout@v2 + with: + repository: llvm/llvm-project + ref: release/10.x + path: llvm-project + - name: Checkout the translator sources + uses: actions/checkout@v2 + with: + repository: KhronosGroup/SPIRV-LLVM-Translator + ref: llvm_release_100 + path: llvm-project/SPIRV-LLVM-Translator + - name: Checkout opencl-clang sources + uses: actions/checkout@v2 + with: + path: llvm-project/opencl-clang + - name: Configure + run: | + mkdir build && cd build + cmake ${{ github.workspace }}/llvm-project/llvm \ + -DLLVM_ENABLE_PROJECTS="clang" \ + -DLLVM_EXTERNAL_PROJECTS="llvm-spirv;opencl-clang" \ + -DLLVM_EXTERNAL_LLVM_SPIRV_SOURCE_DIR=${{ github.workspace }}/llvm-project/SPIRV-LLVM-Translator \ + -DLLVM_EXTERNAL_OPENCL_CLANG_SOURCE_DIR=${{ github.workspace }}/llvm-project/opencl-clang \ + -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \ + -DLLVM_TARGETS_TO_BUILD="X86" \ + -G "Unix Makefiles" + - name: Build + run: | + cd build + + make opencl-clang -j2