tree 8675d8dd78073c045de1cb5372eadfa5108f9609
parent 41409fed5b81c35852c4b0cdc01c97e7c3bff985
author David 'Digit' Turner <digit@google.com> 1580044602 +0000
committer CQ bot account: commit-bot@chromium.org <commit-bot@chromium.org> 1580044602 +0000

[build] Add scripts/prebuilts/swiftshader/build-linux-host-prebuilts.sh

This CL adds several files used to rebuild SwiftShader and the
Vulkan loader from scratch, by:

- build-linux-host-prebuilts.sh: A shell script that will:

    1) Download the right sources from .googlesource.com.
       (with one exception for libbacktrace which is not yet on
       github.googlesource.com).

    2) Build them with CMake and the Fuchsia Linux host toolchain
       and sysroot (to ensure greater portability of the binaries).

    3) Install the necessary files (i.e. Vulkan loader + layers +
       SwiftShader ICD + configuration files)

    4) Generate an `env_vars.sh` file that can be sourced to setup
       environment variables properly to use the new Vulkan driver
       with any program (see --help-usage for full details).

    5) Copy the build configuration file to the installation directory,
       for reference and to allow rebuilding the exact same set of
       binaries in the future if needed (e.g. for debugging).

  Note that the scripts supports a --git-mirror=<SRC_PREFIX>,<DST_PREFIX>
  option to enable redirecting git URLs to alternative mirrors. This
  is useful to avoid downloading directly from github.com if this
  script is run on our infra bots.

- build_config: A small file listing the exact git urls and revisions
  of all source repositories required. Note that this is auto-generated
  and sourced by the build script.

- update-build-config.py: A small Python script to generate a new
  instance of `build_config`, e.g. using new versions of glslang,
  SwiftShader or the Vulkan SDK.

  This handles dependencies' revisions automatically, and simplifies
  future build configuration changes.

See --help and --help-usage for details and usage examples.

Bug: 34950
Test: See --help-usage

Change-Id: Ia7cdbc765ef674f101f4d2345b467f00f0b47d77
