Skip to content

Commit 382292f

Browse files
committed
bug-fix : Check for clang build dependency when building ebpf
Signed-off-by: Abhishek Jha <[email protected]>
1 parent df1bf13 commit 382292f

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

CMakeLists.txt

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1102,6 +1102,32 @@ endif()
11021102
if (FLB_IN_EBPF)
11031103
find_package(PkgConfig)
11041104

1105+
# Check for Clang compiler
1106+
find_program(CLANG_EXECUTABLE clang)
1107+
1108+
if (CLANG_EXECUTABLE)
1109+
message(STATUS "Clang found: ${CLANG_EXECUTABLE}")
1110+
# Get Clang version
1111+
execute_process(
1112+
COMMAND ${CLANG_EXECUTABLE} --version
1113+
OUTPUT_VARIABLE CLANG_VERSION_OUTPUT
1114+
ERROR_QUIET OUTPUT_STRIP_TRAILING_WHITESPACE
1115+
)
1116+
if (CLANG_VERSION_OUTPUT MATCHES "clang version ([0-9]+)\\.([0-9]+)\\.([0-9]+)")
1117+
set(CLANG_VERSION_MAJOR "${CMAKE_MATCH_1}")
1118+
set(CLANG_VERSION_MINOR "${CMAKE_MATCH_2}")
1119+
set(CLANG_VERSION_PATCH "${CMAKE_MATCH_3}")
1120+
1121+
message(STATUS "Detected Clang version: ${CLANG_VERSION_MAJOR}.${CLANG_VERSION_MINOR}.${CLANG_VERSION_PATCH}")
1122+
# Check if Clang version is at least 3.7.0
1123+
if (CLANG_VERSION_MAJOR LESS 3 AND CLANG_VERSION_MINOR LESS 7)
1124+
message(FATAL_ERROR "Clang version must be at least 3.7.0, but found ${CLANG_VERSION_MAJOR}.${CLANG_VERSION_MINOR}.${CLANG_VERSION_PATCH}")
1125+
endif()
1126+
endif()
1127+
else()
1128+
message(FATAL_ERROR "Clang not found! Please install Clang version >= 3.7.0!")
1129+
endif()
1130+
11051131
# Check for libbpf with pkg-config
11061132
pkg_check_modules(LIBBPF libbpf>=0.5.0)
11071133

0 commit comments

Comments
 (0)