From 5c325a739d4f17a978e3e93c2f2461632525cd74 Mon Sep 17 00:00:00 2001 From: ParthShitole Date: Sun, 27 Oct 2024 12:00:12 +0530 Subject: [PATCH] Fix the cache stallness in CHECK_DEPENDENCIES function - The current implementation of the above function may suffer from stallness. - Required changes are made to avoid this. - Some minor typos are also fixed. Signed-off-by: akulkarni --- backends/ebpf/CMakeLists.txt | 2 +- cmake/P4CUtils.cmake | 14 +++++++------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/backends/ebpf/CMakeLists.txt b/backends/ebpf/CMakeLists.txt index a04b0e398a..bb5bdab632 100644 --- a/backends/ebpf/CMakeLists.txt +++ b/backends/ebpf/CMakeLists.txt @@ -262,7 +262,7 @@ if(TEST_DEPENDENCY_PRESENT) # We do not have support for dynamic addition of tables in the test framework p4c_add_test_with_args("ebpf" ${EBPF_DRIVER_TEST} TRUE "testdata/p4_16_samples/ebpf_conntrack_extern.p4" "testdata/p4_16_samples/ebpf_conntrack_extern.p4" "--extern-file ${P4C_SOURCE_DIR}/testdata/extern_modules/extern-conntrack-ebpf.c" "") else() - message(WARNING "Skipped adding Tests due to missing dependencies" " Please install the dependencies and try again") + message(WARNING "Skipped adding Tests due to missing dependencies." " Please install the dependencies and try again") endif() message(STATUS "Done with configuring BPF back end") diff --git a/cmake/P4CUtils.cmake b/cmake/P4CUtils.cmake index 68c19854df..bd411a4156 100644 --- a/cmake/P4CUtils.cmake +++ b/cmake/P4CUtils.cmake @@ -430,30 +430,30 @@ function(CHECK_DEPENDENCIES OUT_VAR TEST_DEPENDENCY_PROGRAMS TEST_DEPENDENCY_LIB set(ALL_FOUND TRUE) foreach(PROG ${TEST_DEPENDENCY_PROGRAMS}) - find_program(PROG_PATH ${PROG}) - if (NOT PROG_PATH) + find_program(${PROG}_PROG_PATH ${PROG} NO_CACHE) + if (NOT ${PROG}_PROG_PATH) message(WARNING "Missing program ${PROG}." " Please install ${PROG} and ensure it is in your PATH.") set(ALL_FOUND FALSE) else() - message(STATUS "Found program ${PROG} at ${PROG_PATH}") + message(STATUS "Found program ${PROG}") endif() endforeach() foreach(LIB ${TEST_DEPENDENCY_LIBRARIES}) if (ARGC GREATER 3) set(HINTS_DIRS_ARG ${ARGV4}) - find_library(LIB_PATH ${LIB} HINTS ${HINTS_DIRS}) + find_library(${LIB}_LIB_PATH NAMES ${LIB} NO_CACHE HINTS ${HINTS_DIRS}) else() - find_library(LIB_PATH ${LIB}) + find_library(${LIB}_LIB_PATH NAMES ${LIB} NO_CACHE) endif() - if (NOT LIB_PATH) + if (NOT ${LIB}_LIB_PATH) message(WARNING "Missing library ${LIB}." " Please install ${LIB}.") set(ALL_FOUND FALSE) else() - message(STATUS "Found library ${LIB} at ${LIB_PATH}") + message(STATUS "Found library ${LIB}") endif() endforeach()