2021-10-15 01:56:44 +00:00
|
|
|
#!/bin/bash
|
|
|
|
# Copyright 2019 The Chromium OS Authors. All rights reserved.
|
|
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
|
|
# found in the LICENSE file.
|
|
|
|
|
2021-11-12 17:35:42 +00:00
|
|
|
# To check for violations:
|
|
|
|
# $ ./tools/clippy
|
|
|
|
#
|
|
|
|
# To fix violations where possible:
|
|
|
|
# $ ./tools/clippy --fix
|
|
|
|
|
2021-11-11 23:14:38 +00:00
|
|
|
set -e
|
|
|
|
cd "$(dirname $0)/.."
|
2021-10-15 01:56:44 +00:00
|
|
|
|
2021-11-11 23:14:38 +00:00
|
|
|
# TODO(b/192373803): Clean up clippy error is the following crates
|
|
|
|
EXCLUDE=(
|
|
|
|
aarch64 # 16 errors
|
|
|
|
acpi_tables # 4 errors
|
|
|
|
crosvm-fuzz # 7 errors
|
|
|
|
devices # 92 errors
|
|
|
|
disk # 36 errors
|
|
|
|
hypervisor # 2 errors
|
|
|
|
integration_tests # 4 errors
|
|
|
|
kernel_loader # 8 errors
|
|
|
|
kvm # 641 errors
|
|
|
|
kvm_sys # 613 errors
|
|
|
|
libcrosvm_control # 5 errors
|
|
|
|
libvda # 79 errors
|
|
|
|
net_sys # 3 errors
|
|
|
|
qcow_utils # 4 errors
|
|
|
|
rutabaga_gfx # 10 errors
|
|
|
|
rutabaga_gfx_ffi # 3 errors
|
|
|
|
usb_util # 5 errors
|
|
|
|
vhost # 2 errors
|
|
|
|
virtio_sys # 9 errors
|
|
|
|
vm_memory # 9 errors
|
|
|
|
x86_64 # 56 errors
|
|
|
|
)
|
|
|
|
|
|
|
|
EXCLUDE_COMMON=(
|
|
|
|
common/cros_async # 8 errors
|
2021-10-15 01:56:44 +00:00
|
|
|
)
|
|
|
|
|
2021-11-12 17:35:42 +00:00
|
|
|
# Note: Clippy checks are configured in .cargo/config.toml
|
2021-11-11 23:14:38 +00:00
|
|
|
echo "Clippy crosvm workspace"
|
|
|
|
cargo clippy \
|
|
|
|
--workspace \
|
|
|
|
--features all-linux \
|
|
|
|
--all-targets \
|
|
|
|
${EXCLUDE[@]/#/--exclude } \
|
2021-11-12 17:35:42 +00:00
|
|
|
"$@" -- -Dwarnings
|
2021-10-15 01:56:44 +00:00
|
|
|
|
2021-11-11 23:14:38 +00:00
|
|
|
for crate in common/*; do
|
|
|
|
if [ -d "${crate}" ] &&
|
|
|
|
[[ ! " ${EXCLUDE_COMMON[*]} " =~ " ${crate} " ]]; then
|
|
|
|
echo ""
|
|
|
|
echo "Clippy ${crate}"
|
2021-11-12 17:35:42 +00:00
|
|
|
(cd "${crate}" && cargo clippy --all-targets "$@" -- -Dwarnings)
|
2021-11-11 23:14:38 +00:00
|
|
|
fi
|
|
|
|
done
|