From 38975ef1207c55b285cda842618c0df9f3af751f Mon Sep 17 00:00:00 2001 From: Robert Schmidt Date: Thu, 5 Feb 2026 02:04:18 +0100 Subject: [PATCH] Allow installation of multiple hardwares in same build_oai invocation There is no reason to not allow ./build_oai -I -w USRP -w BLADERF To install USRP and BladeRF together (which will be used in the CI in a later commit). Fix this. --- cmake_targets/build_oai | 40 +++++++++++++++++++++------------------- 1 file changed, 21 insertions(+), 19 deletions(-) diff --git a/cmake_targets/build_oai b/cmake_targets/build_oai index 44ed349594..c9e268407d 100755 --- a/cmake_targets/build_oai +++ b/cmake_targets/build_oai @@ -36,7 +36,7 @@ set_openair_env # Variables for UE data generation conf_nvram_path=$OPENAIR_DIR/openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf -HW="" +HWs="" BUILD_DIR=ran_build CMAKE_BUILD_TYPE="RelWithDebInfo" CMAKE_CMD="$CMAKE" @@ -253,22 +253,22 @@ function main() { -w | --hardware) case "$2" in "USRP" | "BLADERF" | "LMSSDR" | "IRIS") - HW="OAI_"$2 + HWs+=" OAI_"$2 TARGET_LIST="$TARGET_LIST oai_${2,,}devif" # ,, makes lowercase CMAKE_CMD="$CMAKE_CMD -DOAI_$2=ON" ;; "SIMU") - HW="OAI_"$2 + HWs+=" OAI_"$2 TARGET_LIST="$TARGET_LIST rfsimulator" CMAKE_CMD="$CMAKE_CMD -DOAI_$2=ON" ;; "AW2SORI") - HW="OAI_"$2 + HWs=" OAI_"$2 TARGET_LIST="$TARGET_LIST aw2sori_transpro" CMAKE_CMD="$CMAKE_CMD -DOAI_$2=ON" ;; "AERIAL"|"Aerial"|"aerial") - HW="OAI_AERIAL" + HWs+=" OAI_AERIAL" CMAKE_CMD="$CMAKE_CMD -DOAI_AERIAL=ON" ;; "None") @@ -419,21 +419,23 @@ function main() { echo_info "installing LTTng" install_lttng $1 fi - if [ "$HW" == "OAI_USRP" ] ; then - echo_info "installing packages for USRP support" - check_install_usrp_uhd_driver - if [ ! -v BUILD_UHD_FROM_SOURCE ]; then - install_usrp_uhd_driver $UHD_IMAGES_DIR + for HW in $HWs; do + if [ "$HW" == "OAI_USRP" ] ; then + echo_info "installing packages for USRP support" + check_install_usrp_uhd_driver + if [ ! -v BUILD_UHD_FROM_SOURCE ]; then + install_usrp_uhd_driver $UHD_IMAGES_DIR + fi + elif [ "$HW" == "OAI_BLADERF" ] ; then + echo_info "installing packages for BLADERF support" + check_install_bladerf_driver + elif [ "$HW" == "OAI_IRIS" ] ; then + echo_info "installing packages for IRIS support" + check_install_soapy + else + echo_warning "no installation scripts for hardware $HW" fi - fi - if [ "$HW" == "OAI_BLADERF" ] ; then - echo_info "installing packages for BLADERF support" - check_install_bladerf_driver - fi - if [ "$HW" == "OAI_IRIS" ] ; then - echo_info "installing packages for IRIS support" - check_install_soapy - fi + done fi if [ "$INSTALL_OPTIONAL" = "1" ] ; then