#!/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. # To check for violations: # $ ./tools/clippy # # To fix violations where possible: # $ ./tools/clippy --fix set -e cd "$(dirname $0)/.." # TODO(b/192373803): Clean up clippy error is the following crates EXCLUDE=( aarch64 # 16 errors crosvm-fuzz # 7 errors devices # 92 errors disk # 36 errors kvm # 641 errors kvm_sys # 613 errors libvda # 79 errors net_sys # 3 errors virtio_sys # 9 errors x86_64 # 56 errors ) EXCLUDE_COMMON=( common/cros_async # 8 errors ) # Note: Clippy checks are configured in .cargo/config.toml echo "Clippy crosvm workspace" cargo clippy \ --workspace \ --features all-linux \ --all-targets \ ${EXCLUDE[@]/#/--exclude } \ "$@" -- -Dwarnings for crate in common/*; do if [ -d "${crate}" ] && [[ ! " ${EXCLUDE_COMMON[*]} " =~ " ${crate} " ]]; then echo "" echo "Clippy ${crate}" (cd "${crate}" && \ cargo clippy --all-targets --all-features "$@" -- -Dwarnings) fi done