12345678910111213141516171819202122232425262728 |
- #!/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
|