@@ -12,6 +12,7 @@ TMPDIR=$(mktemp -d config.XXXXXX)
1212trap ' status=$?; rm -rf $TMPDIR; rm -f $CONFIG; exit $status' EXIT HUP INT QUIT TERM
1313
1414SUBMODULE_LIBBPF=0
15+ ARCH_INCLUDES=
1516
1617check_toolchain ()
1718{
@@ -36,13 +37,23 @@ check_toolchain()
3637 echo " ERROR: Need clang version >= 11, found $clang_major_version ($clang_version )"
3738 exit 1
3839 fi
40+
41+ ARCH_NAME=$( $CC -print-multiarch 2> /dev/null)
42+ if [ -z " $ARCH_INCLUDES " ] && [ -n " $ARCH_NAME " ]; then
43+ for dir in $( echo | $CC -Wp,-v -E - 2>&1 | grep ' ^ ' ) ; do
44+ local idir
45+ idir=" ${dir} /${ARCH_NAME} "
46+ [ -d " $idir " ] && ARCH_INCLUDES=" -I${idir} $ARCH_INCLUDES "
47+ done
48+ fi
3949 echo " clang: $clang_version "
4050
4151 echo " PKG_CONFIG:=${PKG_CONFIG} " >> $CONFIG
4252 echo " CC:=${CC} " >> $CONFIG
4353 echo " CLANG:=${CLANG} " >> $CONFIG
4454 echo " LLC:=${LLC} " >> $CONFIG
4555 echo " BPFTOOL:=${BPFTOOL} " >> $CONFIG
56+ echo " ARCH_INCLUDES:=${ARCH_INCLUDES} " >> $CONFIG
4657}
4758
4859check_elf ()
@@ -170,7 +181,7 @@ check_bpf_use_errno()
170181int dummy(void *ctx) { return 0; }
171182EOF
172183
173- compile_err=$( $CLANG -target bpf -c $TMPDIR /bpf_use_errno_test.c 2>&1 )
184+ compile_err=$( $CLANG -target bpf ${ARCH_INCLUDES} -c $TMPDIR /bpf_use_errno_test.c 2>&1 )
174185 if [ " $? " -ne " 0" ]; then
175186 echo " *** ERROR - Clang BPF-prog cannot include <errno.h>"
176187 echo " - Install missing userspace header file"
0 commit comments