Merge remote-tracking branch 'origin/remove-u20-cmake-fixes' into integration_2026_w10 (!3961)

Remove Ubuntu 20 and RHEL/Rocky 8 support, increase cmake min version

Ubuntu 20 is EOL [1]. This was the version with the lowest CMake version, so
we can increment the minimum CMake version to 3.19 as well. Increasing the
minimum version will in particular help with the integration of CUDA (updates
in 3.17 and 3.18), the current 3.19 brings better support for apple silicon.

Some minor CMake updates (removing superfluous files and dependencies).

[1] https://ubuntu.com/blog/ubuntu-20-04-lts-end-of-life-standard-support-is-coming-to-an-end-heres-how-to-prepare
This commit is contained in:
Jaroslava Fiedlerova
2026-03-04 21:18:38 +01:00
3 changed files with 8 additions and 26 deletions
+4 -9
View File
@@ -19,7 +19,7 @@
# * contact@openairinterface.org # * contact@openairinterface.org
# */ # */
cmake_minimum_required (VERSION 3.16) cmake_minimum_required (VERSION 3.19)
project (OpenAirInterface LANGUAGES C CXX) project (OpenAirInterface LANGUAGES C CXX)
set(CMAKE_CXX_STANDARD 17) set(CMAKE_CXX_STANDARD 17)
set(OAI_VERSION 2.4.0) set(OAI_VERSION 2.4.0)
@@ -2012,11 +2012,9 @@ target_link_libraries(nr_pbchsim PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
add_executable(nr_psbchsim add_executable(nr_psbchsim
${OPENAIR1_DIR}/SIMULATION/NR_PHY/psbchsim.c ${OPENAIR1_DIR}/SIMULATION/NR_PHY/psbchsim.c
${NFAPI_USER_DIR}/nfapi.c ${NFAPI_USER_DIR}/nfapi.c
${NFAPI_USER_DIR}/gnb_ind_vars.c
${PHY_INTERFACE_DIR}/queue_t.c
) )
target_link_libraries(nr_psbchsim PRIVATE target_link_libraries(nr_psbchsim PRIVATE
-Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_UE_NR MAC_NR_COMMON CONFIG_LIB L2_NR -Wl,--end-group -Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_UE_NR MAC_NR_COMMON CONFIG_LIB -Wl,--end-group
m pthread ${T_LIB} ITTI dl physim_common softmodem_common m pthread ${T_LIB} ITTI dl physim_common softmodem_common
) )
target_link_libraries(nr_psbchsim PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs) target_link_libraries(nr_psbchsim PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
@@ -2035,7 +2033,7 @@ add_executable(nr_dlsim
${PHY_INTERFACE_DIR}/queue_t.c ${PHY_INTERFACE_DIR}/queue_t.c
) )
target_link_libraries(nr_dlsim PRIVATE target_link_libraries(nr_dlsim PRIVATE
-Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_UE_NR MAC_NR_COMMON nr_rrc CONFIG_LIB L2_NR x2ap SECURITY ngap -Wl,--end-group -Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_UE_NR MAC_NR_COMMON CONFIG_LIB L2_NR -Wl,--end-group
m pthread ${T_LIB} ITTI dl nr_ue_phy_meas physim_common m pthread ${T_LIB} ITTI dl nr_ue_phy_meas physim_common
softmodem_common softmodem_common
) )
@@ -2049,7 +2047,6 @@ target_link_libraries(nr_prachsim PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
add_executable(nr_ulschsim add_executable(nr_ulschsim
${OPENAIR1_DIR}/SIMULATION/NR_PHY/ulschsim.c ${OPENAIR1_DIR}/SIMULATION/NR_PHY/ulschsim.c
${PHY_INTERFACE_DIR}/queue_t.c
) )
target_link_libraries(nr_ulschsim PRIVATE target_link_libraries(nr_ulschsim PRIVATE
-Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB CONFIG_LIB MAC_NR_COMMON -Wl,--end-group -Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB CONFIG_LIB MAC_NR_COMMON -Wl,--end-group
@@ -2065,7 +2062,7 @@ add_executable(nr_ulsim
) )
target_link_libraries(nr_ulsim PRIVATE target_link_libraries(nr_ulsim PRIVATE
-Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_UE_NR MAC_NR_COMMON nr_rrc CONFIG_LIB L2_NR x2ap SECURITY ngap -Wl,--end-group -Wl,--start-group UTIL SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_UE_NR MAC_NR_COMMON CONFIG_LIB L2_NR -Wl,--end-group
m pthread ${T_LIB} ITTI dl nr_ue_phy_meas physim_common softmodem_common m pthread ${T_LIB} ITTI dl nr_ue_phy_meas physim_common softmodem_common
) )
target_link_libraries(nr_ulsim PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs) target_link_libraries(nr_ulsim PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
@@ -2073,8 +2070,6 @@ target_link_libraries(nr_ulsim PRIVATE asn1_nr_rrc_hdrs asn1_lte_rrc_hdrs)
add_executable(nr_srssim add_executable(nr_srssim
${OPENAIR1_DIR}/SIMULATION/NR_PHY/srssim.c ${OPENAIR1_DIR}/SIMULATION/NR_PHY/srssim.c
${NFAPI_USER_DIR}/nfapi.c ${NFAPI_USER_DIR}/nfapi.c
${NFAPI_USER_DIR}/gnb_ind_vars.c
${PHY_INTERFACE_DIR}/queue_t.c
) )
target_link_libraries(nr_srssim PRIVATE target_link_libraries(nr_srssim PRIVATE
+1 -1
View File
@@ -7,7 +7,7 @@
<a href="https://releases.ubuntu.com/22.04/"><img src="https://img.shields.io/badge/OS-Ubuntu22-Green" alt="Supported OS Ubuntu 22"></a> <a href="https://releases.ubuntu.com/22.04/"><img src="https://img.shields.io/badge/OS-Ubuntu22-Green" alt="Supported OS Ubuntu 22"></a>
<a href="https://releases.ubuntu.com/24.04/"><img src="https://img.shields.io/badge/OS-Ubuntu24-Green" alt="Supported OS Ubuntu 24"></a> <a href="https://releases.ubuntu.com/24.04/"><img src="https://img.shields.io/badge/OS-Ubuntu24-Green" alt="Supported OS Ubuntu 24"></a>
<a href="https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux"><img src="https://img.shields.io/badge/OS-RHEL9-Green" alt="Supported OS RHEL9"></a> <a href="https://www.redhat.com/en/technologies/linux-platforms/enterprise-linux"><img src="https://img.shields.io/badge/OS-RHEL9-Green" alt="Supported OS RHEL9"></a>
<a href="https://getfedora.org/en/workstation/"><img src="https://img.shields.io/badge/OS-Fedore41-Green" alt="Supported OS Fedora 41"></a> <a href="https://getfedora.org/en/workstation/"><img src="https://img.shields.io/badge/OS-Fedore41-Green" alt="Supported OS Fedora 43"></a>
</p> </p>
<p align="center"> <p align="center">
+3 -16
View File
@@ -105,19 +105,9 @@ check_supported_distribution() {
case "$distribution" in case "$distribution" in
"ubuntu24.04") return 0 ;; "ubuntu24.04") return 0 ;;
"ubuntu22.04") return 0 ;; "ubuntu22.04") return 0 ;;
"ubuntu20.04") return 0 ;;
"debian11") return 0 ;; "debian11") return 0 ;;
"debian12") return 0 ;; "debian12") return 0 ;;
"fedora41") return 0 ;; "fedora43") return 0 ;;
"fedora40") return 0 ;;
"rhel8.2") return 0 ;;
"rhel8.3") return 0 ;;
"rhel8.4") return 0 ;;
"rhel8.5") return 0 ;;
"rhel8.6") return 0 ;;
"rhel8.7") return 0 ;;
"rhel8.8") return 0 ;;
"rhel8.9") return 0 ;;
"rhel9.0") return 0 ;; "rhel9.0") return 0 ;;
"rhel9.1") return 0 ;; "rhel9.1") return 0 ;;
"rhel9.2") return 0 ;; "rhel9.2") return 0 ;;
@@ -127,9 +117,6 @@ check_supported_distribution() {
"rhel9.6") return 0 ;; "rhel9.6") return 0 ;;
"rhel9.7") return 0 ;; "rhel9.7") return 0 ;;
"centos9") return 0 ;; # CentOS stream "centos9") return 0 ;; # CentOS stream
"rocky8.7") return 0 ;;
"rocky8.8") return 0 ;;
"rocky8.9") return 0 ;;
"rocky9.1") return 0 ;; "rocky9.1") return 0 ;;
"rocky9.2") return 0 ;; "rocky9.2") return 0 ;;
"rocky9.3") return 0 ;; "rocky9.3") return 0 ;;
@@ -281,7 +268,7 @@ check_install_usrp_uhd_driver(){
$SUDO apt-get update $SUDO apt-get update
$SUDO apt-get -y install python3-tk $boost_libs_ubuntu libusb-1.0-0-dev $SUDO apt-get -y install python3-tk $boost_libs_ubuntu libusb-1.0-0-dev
case "$(get_distribution_release)" in case "$(get_distribution_release)" in
"ubuntu20.04" | "ubuntu22.04") "ubuntu22.04")
$SUDO apt-get -y install libuhd-dev libuhd4.5.0 uhd-host $SUDO apt-get -y install libuhd-dev libuhd4.5.0 uhd-host
;; ;;
esac esac
@@ -441,7 +428,7 @@ check_install_additional_tools (){
local optional_packages="" local optional_packages=""
if [[ "$OS_BASEDISTRO" == "debian" ]]; then if [[ "$OS_BASEDISTRO" == "debian" ]]; then
case "$(get_distribution_release)" in case "$(get_distribution_release)" in
"ubuntu20.04" | "ubuntu22.04" | "debian11" | "debian12" ) "ubuntu22.04" | "debian11" | "debian12" )
optional_packages="python3 python3-pip python3-dev python3-scipy python3-matplotlib python3-pyroute2 universal-ctags" optional_packages="python3 python3-pip python3-dev python3-scipy python3-matplotlib python3-pyroute2 universal-ctags"
;; ;;
esac esac