forked from Qortal/Brooklyn
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.
65 lines
1.4 KiB
65 lines
1.4 KiB
#!/bin/sh |
|
# SPDX-License-Identifier: GPL-2.0 |
|
|
|
if [ -z "$SRCARCH" ]; then |
|
echo 'sync-check.sh: error: missing $SRCARCH environment variable' >&2 |
|
exit 1 |
|
fi |
|
|
|
FILES="include/linux/objtool.h" |
|
|
|
if [ "$SRCARCH" = "x86" ]; then |
|
FILES="$FILES |
|
arch/x86/include/asm/inat_types.h |
|
arch/x86/include/asm/orc_types.h |
|
arch/x86/include/asm/emulate_prefix.h |
|
arch/x86/lib/x86-opcode-map.txt |
|
arch/x86/tools/gen-insn-attr-x86.awk |
|
include/linux/static_call_types.h |
|
arch/x86/include/asm/inat.h -I '^#include [\"<]\(asm/\)*inat_types.h[\">]' |
|
arch/x86/include/asm/insn.h -I '^#include [\"<]\(asm/\)*inat.h[\">]' |
|
arch/x86/lib/inat.c -I '^#include [\"<]\(../include/\)*asm/insn.h[\">]' |
|
arch/x86/lib/insn.c -I '^#include [\"<]\(../include/\)*asm/in\(at\|sn\).h[\">]' -I '^#include [\"<]\(../include/\)*asm/emulate_prefix.h[\">]' |
|
" |
|
fi |
|
|
|
check_2 () { |
|
file1=$1 |
|
file2=$2 |
|
|
|
shift |
|
shift |
|
|
|
cmd="diff $* $file1 $file2 > /dev/null" |
|
|
|
test -f $file2 && { |
|
eval $cmd || { |
|
echo "Warning: Kernel ABI header at '$file1' differs from latest version at '$file2'" >&2 |
|
echo diff -u $file1 $file2 |
|
} |
|
} |
|
} |
|
|
|
check () { |
|
file=$1 |
|
|
|
shift |
|
|
|
check_2 tools/$file $file $* |
|
} |
|
|
|
if [ ! -d ../../kernel ] || [ ! -d ../../tools ] || [ ! -d ../objtool ]; then |
|
exit 0 |
|
fi |
|
|
|
cd ../.. |
|
|
|
while read -r file_entry; do |
|
if [ -z "$file_entry" ]; then |
|
continue |
|
fi |
|
|
|
check $file_entry |
|
done <<EOF |
|
$FILES |
|
EOF
|
|
|