You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
1.3 KiB
69 lines
1.3 KiB
7 months ago
|
#!/bin/bash
|
||
|
|
||
|
set -e
|
||
|
|
||
|
PROGNAME="$0"
|
||
|
|
||
|
function usage {
|
||
|
cat <<EOF
|
||
|
Usage:
|
||
|
${PROGNAME} [OPTION] ... "[Args for compare_images]"
|
||
|
|
||
|
Options:
|
||
|
-h, --help
|
||
|
Show this message and exit.
|
||
|
-c, --check
|
||
|
Exit with a non-zero status if there is any unexpected diffs.
|
||
|
EOF
|
||
|
}
|
||
|
|
||
|
while [[ "$1" =~ ^- ]] && [[ "$1" != "--" ]]; do
|
||
|
case "$1" in
|
||
|
-h | --help)
|
||
|
usage
|
||
|
exit 0
|
||
|
;;
|
||
|
-c | --check)
|
||
|
CHECK_DIFF_RESULT=1
|
||
|
;;
|
||
|
*)
|
||
|
break
|
||
|
;;
|
||
|
esac
|
||
|
shift
|
||
|
done
|
||
|
if [ "$1" == "--" ]; then
|
||
|
shift
|
||
|
fi
|
||
|
|
||
|
readonly CHECK_DIFF_RESULT
|
||
|
|
||
|
. build/envsetup.sh
|
||
|
lunch aosp_arm64
|
||
|
build/soong/soong_ui.bash --make-mode compare_images
|
||
|
COMMON_ALLOWLIST=development/vndk/tools/image-diff-tool/allowlist.txt
|
||
|
out/host/linux-x86/bin/compare_images $1 -u -w "${COMMON_ALLOWLIST}"
|
||
|
|
||
|
if [ -v DIST_DIR ]; then
|
||
|
cp common.csv diff.csv allowlisted_diff.csv "${DIST_DIR}"
|
||
|
fi
|
||
|
|
||
|
echo >&2
|
||
|
echo >&2 " - Different parts (that are allowlisted)"
|
||
|
cat >&2 allowlisted_diff.csv
|
||
|
echo >&2
|
||
|
echo >&2 " - Different parts (that are not allowlisted)"
|
||
|
cat >&2 diff.csv
|
||
|
|
||
|
if [ "$(wc -l diff.csv | cut -d' ' -f1)" -gt "1" ]; then
|
||
|
cat >&2 <<EOF
|
||
|
|
||
|
[ERROR] Unexpected diffing files.
|
||
|
There are diffing files that are not ignored by allowlist.
|
||
|
The allowlist may need to be updated.
|
||
|
EOF
|
||
|
if [ -n "${CHECK_DIFF_RESULT}" ]; then
|
||
|
exit 1
|
||
|
fi
|
||
|
fi
|