| Index: snapshot_toolchain.gni
|
| diff --git a/snapshot_toolchain.gni b/snapshot_toolchain.gni
|
| index 4932110489dd1a7fe65a6124aa655192661d3bd6..68449ef058e468d320d33177fad7272ca29ce2bd 100644
|
| --- a/snapshot_toolchain.gni
|
| +++ b/snapshot_toolchain.gni
|
| @@ -25,22 +25,47 @@
|
| # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
| # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| -# The snapshot needs to be compiled for the host, but compiled with
|
| -# a toolchain that matches the bit-width of the target.
|
| +declare_args() {
|
| + # The snapshot needs to be compiled for the host, but compiled with
|
| + # a toolchain that matches the bit-width of the target.
|
| + v8_snapshot_toolchain = ""
|
| +}
|
|
|
| # TODO(GYP): For now we only support 32-bit little-endian target builds from an
|
| # x64 Linux host. Eventually we need to support all of the host/target
|
| # configurations v8 runs on.
|
| -if (host_cpu == "x64" && host_os == "linux") {
|
| - if (target_cpu == "arm" || target_cpu == "mipsel" || target_cpu == "x86") {
|
| - snapshot_toolchain = "//build/toolchain/linux:clang_x86"
|
| - } else if (target_cpu == "x64" || target_cpu == "arm64" || target_cpu == "mips64el") {
|
| - snapshot_toolchain = "//build/toolchain/linux:clang_x64"
|
| +if (v8_snapshot_toolchain == "") {
|
| + if (host_cpu == "x64" && host_os == "linux") {
|
| + if (target_cpu == "arm" || target_cpu == "mipsel" || target_cpu == "x86") {
|
| + if (target_os == "android" || is_clang) {
|
| + v8_snapshot_toolchain = "//build/toolchain/linux:clang_x86"
|
| + } else if (target_os == "chromeos") {
|
| + # TODO(dpranke): crbug.com/608596: Remove this clause once the
|
| + # CrOS ebuilds are setting v8_snapshot_toolchain directly and
|
| + # we've cleaned up the sysroot settings in //build.
|
| + v8_snapshot_toolchain = "//build/toolchain/linux:clang_x86"
|
| + } else {
|
| + v8_snapshot_toolchain = "//build/toolchain/linux:x86"
|
| + }
|
| +
|
| + } else if (target_cpu == "x64" || target_cpu == "arm64" ||
|
| + target_cpu == "mips64el") {
|
| + if (target_os == "android" || is_clang) {
|
| + v8_snapshot_toolchain = "//build/toolchain/linux:clang_x64"
|
| + } else {
|
| + v8_snapshot_toolchain = "//build/toolchain/linux:x64"
|
| + }
|
| + } else {
|
| + assert(false, "Need environment for this arch: $target_cpu")
|
| + }
|
| + } else if (host_os == "mac" && target_os == "win") {
|
| + v8_snapshot_toolchain = "//build/toolchain/mac:clang_$target_cpu"
|
| } else {
|
| - assert(false, "Need environment for this arch: $target_cpu")
|
| + v8_snapshot_toolchain = default_toolchain
|
| }
|
| -} else {
|
| - snapshot_toolchain = default_toolchain
|
| }
|
|
|
| -
|
| +# TODO(dpranke): snapshot_toolchain is provided for backwards compatibility
|
| +# and should be removed once all callers are updated to refer to
|
| +# v8_snapshot_toolchain directly.
|
| +snapshot_toolchain = v8_snapshot_toolchain
|
|
|