build/cargo-linker
author Gregory Szorc <gps@mozilla.com>
Wed, 01 Nov 2017 15:02:11 -0700
changeset 440485 027f1c5da98e7212c1b229e603399fde263df92a
parent 403820 fc34b2a31c4beb821ab40c8eca744c78212c14f5
child 444518 69465fa861e14da6b903ec4f154abf355e5d6d79
permissions -rwxr-xr-x
Bug 1412460 - Don't write make variables in configure.d; r=mshal So the file can be more easily consumed without this variable defined. MozReview-Commit-ID: DF3ASwx4SZP

#!/bin/sh

# If you want to use a custom linker with Cargo, Cargo requires that you
# specify it in Cargo.toml or via the matching environment variable.
# Passing extra options to the linker is possible with Cargo via
# RUSTFLAGS='-C link-args', but testing showed that doing this reliably
# was difficult.
#
# Our solution to these problems is to use this wrapper script.  We pass
# in the LD and the LDFLAGS to use via environment variables.  Note that
# we do *not* quote either MOZ_CARGO_WRAP variable:
#
# * MOZ_CARGO_WRAP_LD is equivalent to CC on Unix-y platforms, and CC
#   frequently has additional arguments in addition to the compiler
#   itself.
# * MOZ_CARGO_WRAP_LDFLAGS contains space-separated arguments to pass,
#   and not quoting it ensures that either of those arguments is passed
#   as a separate argument to the actual LD.

${MOZ_CARGO_WRAP_LD} ${MOZ_CARGO_WRAP_LDFLAGS} "$@"