bug 1401647 - Fix spidermonkey mozjs / rust-bindings builds. r?build draft
authorTed Mielczarek <ted@mielczarek.org>
Wed, 03 Jan 2018 14:51:52 -0500
changeset 715763 0da027f54d27888a7e5191fc12846d7971a36217
parent 715762 748d4df6f17fbfe31d7102a455e086adb4afc57d
child 744881 0182c54020bbf3a02537c4ac4a1bc6639bc3f838
push id94254
push userbmo:ted@mielczarek.org
push dateThu, 04 Jan 2018 16:52:13 +0000
reviewersbuild
bugs1401647
milestone59.0a1
bug 1401647 - Fix spidermonkey mozjs / rust-bindings builds. r?build The spidermonkey mozjs and rust-bindings builds run sed on $topsrcdir/.cargo/config.in to generate the cargo config they use, but they previously only replaced the @top_srcdir@ substitution. This patch makes them replace any other substitutions with an empty value to add a bit of future-proofing. MozReview-Commit-ID: 1DzP9vXxHMD
.cargo/config.in
taskcluster/scripts/builder/build-sm-mozjs-crate.sh
taskcluster/scripts/builder/build-sm-rust-bindings.sh
--- a/.cargo/config.in
+++ b/.cargo/config.in
@@ -1,8 +1,13 @@
+# Note: if you add more configure substitutions here with required values
+# you will also need to fix the sed commands in:
+# taskcluster/scripts/builder/build-sm-mozjs-crate.sh
+# taskcluster/scripts/builder/build-sm-rust-bindings.sh
+
 [source.crates-io]
 registry = 'https://github.com/rust-lang/crates.io-index'
 replace-with = 'vendored-sources'
 
 [source."https://github.com/gankro/serde"]
 git = "https://github.com/gankro/serde"
 branch = "deserialize_from_enums3"
 replace-with = "vendored-sources"
--- a/taskcluster/scripts/builder/build-sm-mozjs-crate.sh
+++ b/taskcluster/scripts/builder/build-sm-mozjs-crate.sh
@@ -2,17 +2,17 @@
 
 set -xe
 
 source $(dirname $0)/sm-tooltool-config.sh
 
 # Ensure that we have a .config/cargo that points us to our vendored crates
 # rather than to crates.io.
 cd "$SRCDIR/.cargo"
-sed -e "s|@top_srcdir@|$SRCDIR|" < config.in | tee config
+sed -e "s|@top_srcdir@|$SRCDIR|" -e 's|@[^@]*@||g' < config.in > config
 
 cd "$SRCDIR/js/src"
 
 export PATH="$PATH:$TOOLTOOL_CHECKOUT/cargo/bin:$TOOLTOOL_CHECKOUT/rustc/bin"
 export RUST_BACKTRACE=1
 
 cargo build --verbose --frozen --features debugmozjs
 cargo build --verbose --frozen
--- a/taskcluster/scripts/builder/build-sm-rust-bindings.sh
+++ b/taskcluster/scripts/builder/build-sm-rust-bindings.sh
@@ -2,17 +2,17 @@
 
 set -xe
 
 source $(dirname $0)/sm-tooltool-config.sh
 
 # Ensure that we have a .config/cargo that points us to our vendored crates
 # rather than to crates.io.
 cd "$SRCDIR/.cargo"
-sed -e "s|@top_srcdir@|$SRCDIR|" < config.in | tee config
+sed -e "s|@top_srcdir@|$SRCDIR|" -e 's|@[^@]*@||g' < config.in > config
 
 cd "$SRCDIR/js/rust"
 
 # Enable backtraces if we panic.
 export RUST_BACKTRACE=1
 
 cargo test --verbose --frozen --features debugmozjs
 cargo test --verbose --frozen