blob: d4fd8a63173e7aff4692e750a9cdba3c58b4ffb1 [file] [log] [blame] [edit]
#!/usr/bin/env bash
# Copyright 2022 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
# Regenerate all bindgen-generated Rust bindings in the crosvm tree.
#
# This script expects to be executed from a full ChromeOS checkout so it has access to the kernel
# and other repositories. Note that it must be run from OUTSIDE the chroot.
set -e
cd "$(dirname "${BASH_SOURCE[0]}")/.."
source tools/impl/bindgen-common.sh
die() {
echo "$@"
exit 1
}
dirs=(
io_uring
kernel_loader
kvm_sys
media/libvda
net_sys
vfio_sys
virtio_sys
vm_memory
)
for d in "${dirs[@]}"; do
echo "bindgen ${d}"
"${d}"/bindgen.sh || die "Failed to generate bindings for ${d}"
done
echo "Done!"