#!/bin/bash
[% c("var/set_default_env") -%]
distdir=/var/tmp/dist
builddir=/var/tmp/build/[% project %]
mkdir -p $distdir/[% project %]
tar -C /var/tmp/dist -xf $rootdir/[% c('input_files_by_name/rust') %]
export PATH="/var/tmp/dist/rust/bin:$PATH"
[% IF c("var/linux") -%]
  export LD_LIBRARY_PATH="/var/tmp/dist/rust/lib:$LD_LIBRARY_PATH"
[% END -%]
mkdir -p /var/tmp/build
tar -C /var/tmp/build -xf [% project %]-[% c('version') %].tar.[% c('compress_tar') %]

# Now prepare the offline build
# Move the directory for hardcoding the path in .cargo/config
mv /var/tmp/build/[% project %]-[% c('version') %] $builddir
tar -C $builddir -xf $rootdir/[% c('input_files_by_name/cargo_vendor') %]
cd $builddir
cat > .cargo/config << 'EOF'
[source.crates-io]
replace-with = "vendored-sources"

[source."git+https://github.com/alexcrichton/raytracer?branch=update-deps"]
git = "https://github.com/alexcrichton/raytracer"
branch = "update-deps"
replace-with = "vendored-sources"

[source."git+https://github.com/rustwasm/weedle.git"]
git = "https://github.com/rustwasm/weedle.git"
replace-with = "vendored-sources"

[source.vendored-sources]
directory = "/var/tmp/build/wasm-bindgen/vendor"
EOF

cargo build -p wasm-bindgen-cli --release --frozen --target x86_64-unknown-linux-gnu
cd $builddir
mv target/x86_64-unknown-linux-gnu/release/wasm-bindgen $distdir/[% project %]

cd $distdir
[% c('tar', {
        tar_src => [ project ],
        tar_args => '-czf ' _ dest_dir _ '/' _ c('filename'),
    }) %]
