31 lines
672 B
Bash
Executable File
31 lines
672 B
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# This script will install all cargo workspace libraries found in
|
|
# `programDir` as native programs.
|
|
set -e
|
|
|
|
# Directory to install libraries into
|
|
installDir="$(mkdir -p "$1"; cd "$1"; pwd)"
|
|
|
|
# Where to find custom programs
|
|
programDir="$2"
|
|
|
|
(
|
|
set -x
|
|
cd "$programDir"
|
|
cargo build --release
|
|
)
|
|
|
|
for dir in "$programDir"/*; do
|
|
for program in $programDir/target/release/deps/lib"$(basename "$dir")".{so,dylib,dll}; do
|
|
if [[ -f $program ]]; then
|
|
(
|
|
set -x
|
|
mkdir -p "$installDir/bin/deps"
|
|
rm -f "$installDir/bin/deps/$(basename "$program")"
|
|
cp -v "$program" "$installDir"/bin/deps
|
|
)
|
|
fi
|
|
done
|
|
done
|