-
Jeremy Soller authoredJeremy Soller authored
include.sh 530 B
#!/usr/bin/env bash
set -e
include="$(realpath "$1")"
cargo build --release --manifest-path cbindgen/Cargo.toml
cbindgen="$(realpath target/release/cbindgen)"
jobs=()
for config in src/header/*/cbindgen.toml
do
dir="$(dirname "$config")"
name="$(basename "$dir")"
if [ "${name:0:1}" != "_" ]
then
header="$include/${name/_//}.h"
pushd "$dir"
"$cbindgen" -c cbindgen.toml -o "$header" mod.rs &
jobs+=($!)
popd
fi
done
for job in "${jobs[@]}"
do
wait "$job"
done