diff --git a/ci/publish-solana-tar.sh b/ci/publish-solana-tar.sh index 85df469b9..71667c229 100755 --- a/ci/publish-solana-tar.sh +++ b/ci/publish-solana-tar.sh @@ -43,9 +43,8 @@ echo --- Creating tarball git rev-parse HEAD ) > solana-release/version.txt - cargo install --path drone --root solana-release - cargo install --path . --root solana-release - ./scripts/install-native-programs.sh solana-release/bin/deps/ release + scripts/cargo-install-all.sh --root solana-release + scripts/install-native-programs.sh solana-release/bin/deps/ release ./fetch-perf-libs.sh # shellcheck source=/dev/null diff --git a/net/net.sh b/net/net.sh index d6d591244..d1749033e 100755 --- a/net/net.sh +++ b/net/net.sh @@ -146,10 +146,9 @@ build() { $MAYBE_DOCKER bash -c " set -ex export NDEBUG=1 - cargo install --path drone --features=$cargoFeatures --root farf - cargo install --path . --features=$cargoFeatures --root farf + scripts/cargo-install-all.sh --features=$cargoFeatures --root farf mkdir -p farf/bin/deps/ - ./scripts/install-native-programs.sh farf/bin/deps/ release + scripts/install-native-programs.sh farf/bin/deps/ release " ) echo "Build took $SECONDS seconds" diff --git a/scripts/cargo-install-all.sh b/scripts/cargo-install-all.sh new file mode 100755 index 000000000..09e4c0368 --- /dev/null +++ b/scripts/cargo-install-all.sh @@ -0,0 +1,10 @@ +#!/usr/bin/env bash +# +# |cargo install| of the top-level crate will not install binaries for +# other workspace creates. +set -e +cd "$(dirname "$0")/.." + +set -x +cargo install --path drone "$@" +cargo install --path . "$@" diff --git a/sdk/docker-solana/build.sh b/sdk/docker-solana/build.sh index 589a51824..06369f332 100755 --- a/sdk/docker-solana/build.sh +++ b/sdk/docker-solana/build.sh @@ -20,8 +20,7 @@ fi rm -rf usr/ ../../ci/docker-run.sh solanalabs/rust:1.31.0 bash -c " set -ex - cargo install --path drone --root sdk/docker-solana/usr - cargo install --path . --root sdk/docker-solana/usr + scripts/cargo-install-all.sh --root sdk/docker-solana/usr " cp -f entrypoint.sh usr/bin/solana-entrypoint.sh ../../scripts/install-native-programs.sh usr/bin/deps/ release diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index 1ab2abb13..e1c80ac5b 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -91,8 +91,7 @@ parts: - scripts override-build: | # Build/install all programs - cargo install --path drone --root $SNAPCRAFT_PART_INSTALL --bins - cargo install --path . --root $SNAPCRAFT_PART_INSTALL --bins + scripts/cargo-install-all.sh --root $SNAPCRAFT_PART_INSTALL --bins # Install native programs mkdir -p $SNAPCRAFT_PART_INSTALL/bin/deps/