#!/usr/bin/env bash # When changing this file, you need to bump the following # .gitlab-ci/image-tags.yml tags: # DEBIAN_TEST_ANDROID_TAG # KERNEL_ROOTFS_TAG set -uex uncollapsed_section_start angle "Building ANGLE" # Do a very early check to make sure the tag is correct without the need of # setting up the environment variables locally ci_tag_build_time_check "ANGLE_TAG" ANGLE_REV="a3f2545f6bb3e8d27827dceb2b4e901673995ad1" # Set ANGLE_ARCH based on DEBIAN_ARCH if it hasn't been explicitly defined if [[ -z "${ANGLE_ARCH:-}" ]]; then case "$DEBIAN_ARCH" in amd64) ANGLE_ARCH=x64;; arm64) ANGLE_ARCH=arm64;; esac fi # DEPOT tools git clone --depth 1 https://chromium.googlesource.com/chromium/tools/depot_tools.git /depot-tools export PATH=/depot-tools:$PATH export DEPOT_TOOLS_UPDATE=0 mkdir /angle-build mkdir /angle pushd /angle-build git init git remote add origin https://chromium.googlesource.com/angle/angle.git git fetch --depth 1 origin "$ANGLE_REV" git checkout FETCH_HEAD echo "$ANGLE_REV" > /angle/version GCLIENT_CUSTOM_VARS=() GCLIENT_CUSTOM_VARS+=('--custom-var=angle_enable_cl=False') GCLIENT_CUSTOM_VARS+=('--custom-var=angle_enable_cl_testing=False') GCLIENT_CUSTOM_VARS+=('--custom-var=angle_enable_vulkan_validation_layers=False') GCLIENT_CUSTOM_VARS+=('--custom-var=angle_enable_wgpu=False') GCLIENT_CUSTOM_VARS+=('--custom-var=build_angle_deqp_tests=False') GCLIENT_CUSTOM_VARS+=('--custom-var=build_angle_perftests=False') if [[ "$ANGLE_TARGET" == "android" ]]; then GCLIENT_CUSTOM_VARS+=('--custom-var=checkout_android=True') fi # source preparation gclient config --name REPLACE-WITH-A-DOT --unmanaged \ "${GCLIENT_CUSTOM_VARS[@]}" \ https://chromium.googlesource.com/angle/angle.git sed -e 's/REPLACE-WITH-A-DOT/./;' -i .gclient sed -e 's|"custom_deps" : {|"custom_deps" : {\ "third_party/clspv/src": None,\ "third_party/dawn": None,\ "third_party/glmark2/src": None,\ "third_party/libjpeg_turbo": None,\ "third_party/llvm/src": None,\ "third_party/OpenCL-CTS/src": None,\ "third_party/SwiftShader": None,\ "third_party/VK-GL-CTS/src": None,\ "third_party/vulkan-validation-layers/src": None,|' -i .gclient gclient sync --no-history -j"${FDO_CI_CONCURRENT:-4}" mkdir -p out/Release cat > out/Release/args.gn <> out/Release/args.gn <> out/Release/args.gn <