# Copyright 2021 The IREE Authors
#
# Licensed 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

steps:
  - label: ":zap: Build with tracing enabled"
    commands:
      - "./scripts/git/submodule_versions.py init"
      - "docker run --user=$(id -u):$(id -g) --volume=\\$PWD:\\$IREE_DOCKER_WORKDIR --workdir=\\$IREE_DOCKER_WORKDIR --rm gcr.io/iree-oss/cmake@sha256:57ee32f8b40b727b00054be9f3359f4980aca1556740aa70c3fcfb43eedc1a4f ./build_tools/cmake/build_tracing.sh"
    env:
      IREE_DOCKER_WORKDIR: "/usr/src/github/iree"
    agents:
      - "queue=build"

  - label: ":hammer_and_wrench: Build the runtime only"
    commands:
      - "./scripts/git/submodule_versions.py init"
      - "docker run --user=$(id -u):$(id -g) --volume=\\$PWD:\\$IREE_DOCKER_WORKDIR --workdir=\\$IREE_DOCKER_WORKDIR --rm gcr.io/iree-oss/cmake@sha256:57ee32f8b40b727b00054be9f3359f4980aca1556740aa70c3fcfb43eedc1a4f ./build_tools/cmake/build_runtime.sh"
    env:
      IREE_DOCKER_WORKDIR: "/usr/src/github/iree"
    agents:
      - "queue=build"

  - label: ":gnu: Build with GCC"
    key: "build-gcc"
    commands:
      - "./scripts/git/submodule_versions.py init"
      - "docker run --user=$(id -u):$(id -g) --volume=\\$PWD:\\$IREE_DOCKER_WORKDIR --workdir=\\$IREE_DOCKER_WORKDIR --rm gcr.io/iree-oss/cmake-gcc@sha256:828a43d9d090b819445155bd0ed82fb0dd6daa4eddca705dbac8d0d8fd6a01f8 ./build_tools/cmake/clean_build.sh"
    env:
      IREE_DOCKER_WORKDIR: "/usr/src/github/iree"
    agents:
      - "queue=build"

  - label: ":linux: Build host install"
    key: "build-host-install"
    commands:
      - "./scripts/git/submodule_versions.py init"
      - "docker run --user=$(id -u):$(id -g) --volume=\\$PWD:\\$IREE_DOCKER_WORKDIR --workdir=\\$IREE_DOCKER_WORKDIR --rm gcr.io/iree-oss/cmake@sha256:57ee32f8b40b727b00054be9f3359f4980aca1556740aa70c3fcfb43eedc1a4f ./build_tools/cmake/build_host_install.sh"
      - "tar -czvf build-artifacts.tgz build-host/install"
    artifact_paths: "build-artifacts.tgz"
    env:
      IREE_DOCKER_WORKDIR: "/usr/src/github/iree"
    agents:
      - "queue=build"

  - label: ":webassembly: Build WebAssembly runtime with Emscripten"
    depends_on: "build-host-install"
    commands:
      - "buildkite-agent artifact download --step build-host-install build-artifacts.tgz ./"
      - "tar xzf build-artifacts.tgz"
      - "./scripts/git/submodule_versions.py init"
      - "docker run --user=$(id -u):$(id -g) --volume=\\$PWD:\\$IREE_DOCKER_WORKDIR --workdir=\\$IREE_DOCKER_WORKDIR --rm gcr.io/iree-oss/cmake-emscripten@sha256:d73aa7b643608e81ec253e62639ac6ec59387957509a3e894464ac8e6e8c6da8 ./build_tools/cmake/build_runtime_emscripten.sh"
    env:
      IREE_DOCKER_WORKDIR: "/usr/src/github/iree"
    agents:
      - "queue=build"
