@@ -39,7 +39,7 @@ find_tool()
39
39
40
40
# we're looking for a binary with the same name as tool_name; try version
41
41
# suffixes in order until we find one
42
- for v in 16 15 14 13 12 11 10 ; do
42
+ for v in 16 15 14 13 12 11; do
43
43
tool_path=" ${tool_name} -$v "
44
44
if command -v " $tool_path " > /dev/null 2>&1 ; then
45
45
echo $tool_path
@@ -55,6 +55,7 @@ check_toolchain()
55
55
{
56
56
local emacs_version
57
57
local clang_version
58
+ local bpftool_version
58
59
59
60
: ${PKG_CONFIG:= pkg-config}
60
61
: ${CC=gcc}
@@ -64,12 +65,13 @@ check_toolchain()
64
65
: ${LLC=llc}
65
66
: ${M4=m4}
66
67
: ${EMACS=emacs}
68
+ : ${BPFTOOL=bpftool}
67
69
: ${ARCH_INCLUDES=}
68
70
69
71
CLANG=$( find_tool clang " $CLANG " )
70
72
LLC=$( find_tool llc " $LLC " )
71
73
72
- for TOOL in $PKG_CONFIG $CC $LD $OBJCOPY $CLANG $LLC $M4 ; do
74
+ for TOOL in $PKG_CONFIG $CC $LD $OBJCOPY $CLANG $LLC $M4 $BPFTOOL ; do
73
75
if [ ! $( command -v ${TOOL} 2> /dev/null) ]; then
74
76
echo " *** ERROR: Cannot find tool ${TOOL} " ;
75
77
exit 1;
@@ -83,8 +85,8 @@ check_toolchain()
83
85
fi
84
86
85
87
echo " Found clang binary '$CLANG ' with version $clang_version (from '$( $CLANG --version | head -n 1) ')"
86
- if [ " $clang_version " -lt " 10 " ]; then
87
- echo " *** ERROR: Need LLVM version 10 +, '$CLANG ' is version $clang_version "
88
+ if [ " $clang_version " -lt " 11 " ]; then
89
+ echo " *** ERROR: Need LLVM version 11 +, '$CLANG ' is version $clang_version "
88
90
[ -n " $RELAXED_LLVM_VERSION " ] || exit 1
89
91
fi
90
92
@@ -106,6 +108,14 @@ check_toolchain()
106
108
exit 1
107
109
fi
108
110
111
+ if $BPFTOOL gen help 2>&1 | grep ' gen help' > /dev/null; then
112
+ bpftool_version=$( $BPFTOOL version | head -n 1)
113
+ echo " using $bpftool_version "
114
+ else
115
+ echo " bpftool doesn't support skeleton generation"
116
+ exit 1
117
+ fi
118
+
109
119
if [ -z " $ARCH_INCLUDES " ]; then
110
120
for dir in $( echo | $CC -Wp,-v -E - 2>&1 | grep ' ^ ' ) ; do
111
121
local idir
@@ -123,6 +133,7 @@ check_toolchain()
123
133
echo " M4:=${M4} " >> $CONFIG
124
134
echo " EMACS:=${EMACS} " >> $CONFIG
125
135
echo " ARCH_INCLUDES:=$ARCH_INCLUDES " >> $CONFIG
136
+ echo " BPFTOOL:=${BPFTOOL} " >> $CONFIG
126
137
}
127
138
128
139
check_zlib ()
0 commit comments