From 4384ea2b591e28ee1e1327608657057756d4c660 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=BAben=20Soares=20da=20Silva?= Date: Fri, 22 Mar 2024 14:52:44 +0000 Subject: [PATCH] Properly add compile definitions related to aerial_lib into targets that depend on it ( ENABLE_AERIAL ) Add target_compile_definitions to L2_NR library in order to propagate #define in gnb_config.c --- CMakeLists.txt | 12 +++++++++- nfapi/CMakeLists.txt | 2 +- nfapi/oai_integration/aerial/CMakeLists.txt | 26 ++++++++------------- nfapi/open-nFAPI/common/CMakeLists.txt | 3 +++ 4 files changed, 25 insertions(+), 18 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 977a537908..4bbfcd759d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -779,7 +779,9 @@ set(NFAPI_VNF_SRC ) add_library(NFAPI_VNF_LIB ${NFAPI_VNF_SRC}) target_link_libraries(NFAPI_VNF_LIB PRIVATE asn1_lte_rrc_hdrs asn1_nr_rrc_hdrs) - +if(OAI_AERIAL) + target_compile_definitions(NFAPI_VNF_LIB PRIVATE ENABLE_AERIAL) +endif() include_directories(${NFAPI_DIR}/vnf/public_inc) include_directories(${NFAPI_DIR}/vnf/inc) @@ -1475,6 +1477,9 @@ add_library(e1_if target_link_libraries(e1_if PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs asn1_f1ap SECURITY ${OPENSSL_LIBRARIES} e1ap GTPV1U) target_link_libraries(L2_NR PRIVATE f1ap x2ap s1ap ngap nr_rrc e1ap nr_rlc nr_common) +if(OAI_AERIAL) + target_compile_definitions(L2_NR PRIVATE ENABLE_AERIAL) +endif() if(E2_AGENT) target_link_libraries(L2_NR PUBLIC e2_agent e2_agent_arg e2_ran_func_du_cucp_cuup) target_compile_definitions(L2_NR PRIVATE ${E2AP_VERSION} ${KPM_VERSION} E2_AGENT) @@ -2092,6 +2097,11 @@ target_link_libraries(nr-softmodem PRIVATE pthread m CONFIG_LIB rt sctp) target_link_libraries(nr-softmodem PRIVATE ${T_LIB}) target_link_libraries(nr-softmodem PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs) target_link_libraries(nr-softmodem PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs) +add_boolean_option(OAI_AERIAL OFF "Activate OAI's AERIAL driver" OFF) +if (OAI_AERIAL) + target_compile_definitions(nr-softmodem PUBLIC ENABLE_AERIAL) + target_link_libraries(nr-softmodem PUBLIC aerial_lib) +endif() if(E2_AGENT) target_compile_definitions(nr-softmodem PRIVATE ${E2AP_VERSION} ${KPM_VERSION} E2_AGENT) endif() diff --git a/nfapi/CMakeLists.txt b/nfapi/CMakeLists.txt index 045f153035..1362e33b06 100644 --- a/nfapi/CMakeLists.txt +++ b/nfapi/CMakeLists.txt @@ -1,2 +1,2 @@ -include(oai_integration/aerial/CMakeLists.txt) +add_subdirectory(oai_integration/aerial) add_subdirectory(open-nFAPI) diff --git a/nfapi/oai_integration/aerial/CMakeLists.txt b/nfapi/oai_integration/aerial/CMakeLists.txt index 2514edf602..f34615dd0d 100644 --- a/nfapi/oai_integration/aerial/CMakeLists.txt +++ b/nfapi/oai_integration/aerial/CMakeLists.txt @@ -1,20 +1,16 @@ -add_boolean_option(OAI_AERIAL OFF "Activate OAI's AERIAL driver" OFF) if (OAI_AERIAL) message(STATUS "Building with support for Aerial") - - target_sources( - nr-softmodem - PRIVATE - ${OPENAIR_DIR}/nfapi/oai_integration/aerial/fapi_nvIPC.c - ${OPENAIR_DIR}/nfapi/oai_integration/aerial/fapi_vnf_p7.c - ${OPENAIR_DIR}/nfapi/oai_integration/aerial/fapi_vnf_p5.c ) + add_library(aerial_lib + fapi_nvIPC.c + fapi_vnf_p7.c + fapi_vnf_p5.c + ) find_library(NVIPC_LIB nvipc REQUIRED) if (NOT NVIPC_LIB) message(FATAL_ERROR "-- nvipc library not found") else () message(STATUS " nvipc library found in ${NVIPC_LIB}") - #add_library(nvipc STATIC SHARED IMPORTED GLOBAL) endif () find_library(NVLOG_LIB nvlog REQUIRED) @@ -23,11 +19,9 @@ if (OAI_AERIAL) else () message(STATUS " nvlog library found in ${NVLOG_LIB}") endif () - - add_compile_definitions(ENABLE_L2_SLT_RSP) - add_compile_definitions(FAPI_BYTE_ORDERING_BIG_ENDIAN) - add_compile_definitions(ENABLE_AERIAL) - target_link_libraries(nr-softmodem PRIVATE "${NVLOG_LIB}" "${NVIPC_LIB}") -else() + target_compile_definitions(aerial_lib PUBLIC ENABLE_L2_SLT_RSP ENABLE_AERIAL) + target_link_libraries(aerial_lib PRIVATE asn1_lte_rrc_hdrs asn1_nr_rrc_hdrs) + target_link_libraries(aerial_lib PRIVATE "${NVLOG_LIB}" "${NVIPC_LIB}") +else () message(STATUS "No Support for Aerial") -endif() \ No newline at end of file +endif () diff --git a/nfapi/open-nFAPI/common/CMakeLists.txt b/nfapi/open-nFAPI/common/CMakeLists.txt index aeafd69c6e..20263bc29c 100644 --- a/nfapi/open-nFAPI/common/CMakeLists.txt +++ b/nfapi/open-nFAPI/common/CMakeLists.txt @@ -2,3 +2,6 @@ add_library(nfapi_common src/debug.c src/nfapi.c) target_include_directories(nfapi_common PUBLIC public_inc/) +if (OAI_AERIAL) + target_compile_definitions(nfapi_common PRIVATE FAPI_BYTE_ORDERING_BIG_ENDIAN) +endif()