blob: c1430dcc74e1d11e074280c903f13c91d29bc40b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#!/bin/sh
# Since Meson invokes this script as
# "/bin/sh .../dist-vendor.sh DIST SOURCE_ROOT" we can't rely on bash features
set -eu
export DIST="$1"
export SOURCE_ROOT="$2"
cd "$SOURCE_ROOT"
mkdir "$DIST"/.cargo
# cargo-vendor-filterer can be found at https://github.com/coreos/cargo-vendor-filterer
# It is also part of the Rust SDK extension.
#
# nixpkgs doesn't have it packaged though.
if command -v cargo-vendor-filterer &>/dev/null; then
cargo vendor-filterer \
--platform=x86_64-unknown-linux-gnu \
--platform=aarch64-unknown-linux-gnu \
> "$DIST"/.cargo/config
else
echo "WARNING: using normal cargo vendor"
cargo vendor > "$DIST"/.cargo/config
fi
# Remove vendored gettext sources, we'll be using system gettext.
rm -f vendor/gettext-sys/gettext-*.tar.*
# Don't combine the previous and this line with a pipe because we can't catch
# errors with "set -o pipefail"
sed -i 's/^directory = ".*"/directory = "vendor"/g' "$DIST/.cargo/config"
# Move vendor into dist tarball directory
mv vendor "$DIST"
rm -r "$DIST"/*.nix "$DIST/pkgs"
|