Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
canghaiwuhen
OpenXG-RAN
Commits
385fca8d
Commit
385fca8d
authored
Feb 22, 2019
by
frtabu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix noS1 compil problem
parent
85551188
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
559 additions
and
561 deletions
+559
-561
cmake_targets/CMakeLists.txt
cmake_targets/CMakeLists.txt
+20
-19
cmake_targets/build_oai
cmake_targets/build_oai
+539
-538
openair2/NETWORK_DRIVER/MESH/local.h
openair2/NETWORK_DRIVER/MESH/local.h
+0
-4
No files found.
cmake_targets/CMakeLists.txt
View file @
385fca8d
...
...
@@ -614,6 +614,7 @@ add_boolean_option(NAS_NETLINK False "useless ??? Must be True to compile nasmes
add_boolean_option
(
OAI_NW_DRIVER_USE_NETLINK True
"????"
)
add_boolean_option
(
USE_MME False
"this flag is used only one time in lte-softmodem.c"
)
add_list_string_option
(
PACKAGE_NAME
"NotDefined"
"As per attribute name"
)
add_boolean_option
(
MESSAGE_CHART_GENERATOR False
"For generating sequence diagrams"
)
add_boolean_option
(
MESSAGE_CHART_GENERATOR_RLC_MAC False
"trace RLC-MAC exchanges in sequence diagrams"
)
add_boolean_option
(
MESSAGE_CHART_GENERATOR_PHY False
"trace some PHY exchanges in sequence diagrams"
)
...
...
@@ -623,6 +624,11 @@ add_boolean_option(PHY_TX_THREAD False "enable UE_EXPANSION w
add_boolean_option
(
PRE_SCD_THREAD False
"enable UE_EXPANSION with max 256 UE"
)
add_boolean_option
(
UESIM_EXPANSION False
"enable UESIM_EXPANSION with max 256 UE"
)
########################
# Include order
##########################
add_boolean_option
(
ENB_MODE True
"Swap the include directories between openair2 and openair3"
)
##########################
# SCHEDULING/REAL-TIME/PERF options
##########################
...
...
@@ -723,13 +729,19 @@ include_directories("${OPENAIR_BIN_DIR}")
#include_directories("${include_dirs_all}")
# Legacy exact order
include_directories
(
"
${
OPENAIR2_DIR
}
/COMMON"
)
include_directories
(
"
${
OPENAIR2_DIR
}
/UTIL"
)
include_directories
(
"
${
OPENAIR2_DIR
}
/UTIL/LOG"
)
include_directories
(
"
${
OPENAIR3_DIR
}
/COMMON"
)
include_directories
(
"
${
OPENAIR3_DIR
}
/UTILS"
)
if
(
ENB_MODE
)
include_directories
(
"
${
OPENAIR2_DIR
}
/COMMON"
)
include_directories
(
"
${
OPENAIR2_DIR
}
/UTIL"
)
include_directories
(
"
${
OPENAIR2_DIR
}
/UTIL/LOG"
)
include_directories
(
"
${
OPENAIR3_DIR
}
/COMMON"
)
include_directories
(
"
${
OPENAIR3_DIR
}
/UTILS"
)
else
()
include_directories
(
"
${
OPENAIR3_DIR
}
/COMMON"
)
include_directories
(
"
${
OPENAIR3_DIR
}
/UTILS"
)
include_directories
(
"
${
OPENAIR2_DIR
}
/COMMON"
)
include_directories
(
"
${
OPENAIR2_DIR
}
/UTIL"
)
include_directories
(
"
${
OPENAIR2_DIR
}
/UTIL/LOG"
)
endif
()
include_directories
(
"
${
NFAPI_DIR
}
/nfapi/public_inc"
)
include_directories
(
"
${
NFAPI_DIR
}
/common/public_inc"
)
include_directories
(
"
${
NFAPI_DIR
}
/pnf/public_inc"
)
...
...
@@ -1383,10 +1395,6 @@ add_library(L2_UE
${
L2_SRC_UE
}
${
MAC_SRC_UE
}
)
if
(
NOT
${
NOS1
}
)
target_compile_definitions
(
L2_UE PUBLIC
)
endif
()
add_dependencies
(
L2_UE rrc_flag s1ap_flag x2_flag
)
include_directories
(
${
NFAPI_USER_DIR
}
)
...
...
@@ -1674,9 +1682,6 @@ if(NAS_UE)
${
libnas_ue_esm_sap_OBJS
}
)
add_dependencies
(
LIB_NAS_UE rrc_flag
)
if
(
NOT
${
NOS1
}
)
target_compile_definitions
(
LIB_NAS_UE PUBLIC
)
endif
()
set
(
NAS_UE_LIB LIB_NAS_UE
)
include_directories
(
${
NAS_SRC
}
UE
)
...
...
@@ -2048,9 +2053,6 @@ add_executable(lte-uesoftmodem
)
add_dependencies
(
lte-uesoftmodem rrc_flag s1ap_flag x2_flag
)
if
(
NOT
${
NOS1
}
)
target_compile_definitions
(
lte-uesoftmodem PRIVATE
)
endif
()
target_link_libraries
(
lte-uesoftmodem
-Wl,--start-group
RRC_LIB S1AP_LIB S1AP_ENB X2AP_LIB X2AP_ENB GTPV1U SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT UDP SCHED_RU_LIB SCHED_UE_LIB PHY_COMMON PHY_UE PHY_RU LFDS L2_UE SIMU
...
...
@@ -2149,7 +2151,6 @@ foreach(myExe dlsim dlsim_tm7 ulsim pbchsim scansim mbmssim pdcchsim pucchsim pr
add_executable
(
${
myExe
}
${
OPENAIR1_DIR
}
/SIMULATION/LTE_PHY/
${
myExe
}
.c
${
OPENAIR_DIR
}
/common/utils/backtrace.c
${
XFORMS_SOURCE
}
${
T_SOURCE
}
${
CONFIG_SOURCES
}
...
...
@@ -2287,7 +2288,7 @@ endfunction(make_driver name dir src)
# nashmesh module
################
list
(
APPEND nasmesh_src device.c common.c ioctl.c classifier.c tool.c mesh.c
)
set
(
module_cc_opt
"
${
module_cc_opt
}
-DNAS_NETLINK -DPDCP_USE_NETLINK
-D
${
MKVER
}
"
)
set
(
module_cc_opt
"
${
module_cc_opt
}
-DNAS_NETLINK -DPDCP_USE_NETLINK"
)
# legacy Makefile was using NAS_NETLINK flag, but other drivers the hereafter flag
# so, this cmake use OAI_NW_DRIVER_USE_NETLINK everywhere
if
(
OAI_NW_DRIVER_USE_NETLINK
)
...
...
cmake_targets/build_oai
View file @
385fca8d
...
...
@@ -46,12 +46,13 @@ UE_EXPANSION="False"
UESIM_EXPANSION
=
"False"
PRINT_STATS
=
"False"
VCD_TIMING
=
"False"
DEADLINE_SCHEDULER_FLAG_USER
=
""
DEADLINE_SCHEDULER_FLAG_USER
=
"False"
FORCE_DEADLINE_SCHEDULER_FLAG_USER
=
""
CPU_AFFINITY_FLAG_USER
=
"False"
#Only valid when lowlatecy flag is set to False
REL
=
"Rel14"
HW
=
"None"
TP
=
"None"
NOS1
=
"False"
NOS1
=
0
EPC
=
0
VERBOSE_COMPILE
=
0
CFLAGS_PROCESSOR_USER
=
""
...
...
@@ -251,142 +252,143 @@ function main() {
echo_fatal
"Unknown HW type
$HW
: exit..."
esac
echo_info
"Setting hardware to:
$HW
"
shift
2
;;
-t
|
--transport_protocol
)
TP
=
"
$2
"
#"${i#*=}"
if
[
"
$TP
"
!=
"ETHERNET"
-a
"
$TP
"
!=
"None"
]
;
then
echo_fatal
"Unknown TP type
$TP
will exit..."
else
echo_info
"Setting transport protocol to:
$TP
"
fi
shift
2
;;
--phy_simulators
)
SIMUS_PHY
=
1
echo_info
"Will compile dlsim, ulsim, ..."
shift
;;
--core_simulators
)
SIMUS_CORE
=
1
echo_info
"Will compile security unitary tests"
shift
;;
-s
|
--check
)
OAI_TEST
=
1
echo_info
"Will run auto-tests"
shift
;;
--run-group
)
RUN_GROUP
=
1
TEST_CASE_GROUP
=
$2
echo_info
"executing test cases only in group:
$TEST_CASE_GROUP
"
shift
2
;;
-V
|
--vcd
)
echo_info
"Setting gtk-wave output"
VCD_TIMING
=
1
EXE_ARGUMENTS
=
"
$EXE_ARGUMENTS
-V"
shift
;;
-x
|
--xforms
)
XFORMS
=
"True"
EXE_ARGUMENTS
=
"
$EXE_ARGUMENTS
-d"
echo_info
"Will generate the software oscilloscope features"
shift
;;
--install-system-files
)
INSTALL_SYSTEM_FILES
=
1
echo_info
"Will copy OpenAirInterface files in Linux directories"
shift
;;
--noS1
)
NOS1
=
"True"
echo_info
"Will compile without S1 interface"
shift
;;
--verbose-compile
)
VERBOSE_COMPILE
=
1
echo_info
"Will compile with verbose instructions"
shift
;;
--cflags_processor
)
CFLAGS_PROCESSOR_USER
=
$2
echo_info
"Setting CPU FLAGS from USER to:
$CFLAGS_PROCESSOR_USER
"
shift
2
;;
--build-doxygen
)
BUILD_DOXYGEN
=
1
echo_info
"Will build doxygen support"
shift
;;
--disable-deadline
)
DEADLINE_SCHEDULER_FLAG_USER
=
"False"
echo_info
"Disabling the usage of deadline scheduler"
shift
1
;;
--enable-deadline
)
DEADLINE_SCHEDULER_FLAG_USER
=
"True"
echo_info
"Enabling the usage of deadline scheduler"
shift
1
;;
--disable-cpu-affinity
)
CPU_AFFINITY_FLAG_USER
=
"False"
echo_info
"Disabling CPU Affinity (only valid when not using deadline scheduler)"
shift
1
;;
--disable-T-Tracer
)
T_TRACER
=
"False"
echo_info
"Disabling the T tracer"
shift
1
;;
--disable-hardware-dependency
)
echo_info
"Disabling hardware dependency for compiling software"
DISABLE_HARDWARE_DEPENDENCY
=
"True"
shift
1
;;
--ue-autotest-trace
)
UE_AUTOTEST_TRACE
=
"True"
echo_info
"Enabling autotest specific trace for UE"
shift
1
;;
--ue-trace
)
UE_DEBUG_TRACE
=
"True"
echo_info
"Enabling UE trace for debug"
shift
1
;;
--ue-timing
)
UE_TIMING_TRACE
=
"True"
echo_info
"Enabling UE timing trace"
shift
1
;;
--disable-log
)
DISABLE_LOG_X
=
"True"
echo_info
"Disabling all LOG_* traces"
shift
1
;;
--uhd-images-dir
)
UHD_IMAGES_DIR
=
$2
echo_info
"Downloading UHD images in the indicated location"
shift
2
;;
--build-eclipse
)
BUILD_ECLIPSE
=
1
CMAKE_CMD
=
"
$CMAKE_CMD
"
' -DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=TRUE -G"Eclipse CDT4 - Unix Makefiles"'
echo_info
"Enabling build eclipse project support"
shift
1
;;
--build-telnetsrv
)
BUILD_TELNETSRV
=
1
echo_info
"Build embedded telnet server"
shift
;;
--build-msc
)
MSC_GEN
=
1
echo_info
"Build MSC tracing utility"
shift
;;
--usrp-recplay
)
USRP_REC_PLAY
=
"True"
echo_info
"Enabling USRP record playback mode"
shift
1
;;
--ue-nas-use-tun
)
UE_NAS_USE_TUN
=
"True"
echo_info
"Enabling UE NAS TUN device usage instead of ue_ip.ko"
shift
1
;;
--basic-simulator
)
BASIC_SIMULATOR
=
1
echo_info
"Compiling the basic simulator"
shift
1
;;
shift
2
;;
-t
|
--transport_protocol
)
TP
=
"
$2
"
#"${i#*=}"
if
[
"
$TP
"
!=
"ETHERNET"
-a
"
$TP
"
!=
"None"
]
;
then
echo_fatal
"Unknown TP type
$TP
will exit..."
else
echo_info
"Setting transport protocol to:
$TP
"
fi
shift
2
;;
--phy_simulators
)
SIMUS_PHY
=
1
echo_info
"Will compile dlsim, ulsim, ..."
shift
;;
--core_simulators
)
SIMUS_CORE
=
1
echo_info
"Will compile security unitary tests"
shift
;;
-s
|
--check
)
OAI_TEST
=
1
echo_info
"Will run auto-tests"
shift
;;
--run-group
)
RUN_GROUP
=
1
TEST_CASE_GROUP
=
$2
echo_info
"executing test cases only in group:
$TEST_CASE_GROUP
"
shift
2
;;
-V
|
--vcd
)
echo_info
"Setting gtk-wave output"
VCD_TIMING
=
1
EXE_ARGUMENTS
=
"
$EXE_ARGUMENTS
-V"
shift
;;
-x
|
--xforms
)
XFORMS
=
"True"
EXE_ARGUMENTS
=
"
$EXE_ARGUMENTS
-d"
echo_info
"Will generate the software oscilloscope features"
shift
;;
--install-system-files
)
INSTALL_SYSTEM_FILES
=
1
echo_info
"Will copy OpenAirInterface files in Linux directories"
shift
;;
--noS1
)
NOS1
=
1
echo_info
"Will compile without S1 interface"
shift
;;
--verbose-compile
)
VERBOSE_COMPILE
=
1
echo_info
"Will compile with verbose instructions"
shift
;;
--cflags_processor
)
CFLAGS_PROCESSOR_USER
=
$2
echo_info
"Setting CPU FLAGS from USER to:
$CFLAGS_PROCESSOR_USER
"
shift
2
;;
--build-doxygen
)
BUILD_DOXYGEN
=
1
echo_info
"Will build doxygen support"
shift
;;
--disable-deadline
)
FORCE_
DEADLINE_SCHEDULER_FLAG_USER
=
"False"
echo_info
"Disabling the usage of deadline scheduler"
shift
1
;;
--enable-deadline
)
FORCE_
DEADLINE_SCHEDULER_FLAG_USER
=
"True"
echo_info
"Enabling the usage of deadline scheduler"
shift
1
;;
--disable-cpu-affinity
)
CPU_AFFINITY_FLAG_USER
=
"False"
echo_info
"Disabling CPU Affinity (only valid when not using deadline scheduler)"
shift
1
;;
--disable-T-Tracer
)
T_TRACER
=
"False"
echo_info
"Disabling the T tracer"
shift
1
;;
--disable-hardware-dependency
)
echo_info
"Disabling hardware dependency for compiling software"
DISABLE_HARDWARE_DEPENDENCY
=
"True"
shift
1
;;
--ue-autotest-trace
)
UE_AUTOTEST_TRACE
=
"True"
echo_info
"Enabling autotest specific trace for UE"
shift
1
;;
--ue-trace
)
UE_DEBUG_TRACE
=
"True"
echo_info
"Enabling UE trace for debug"
shift
1
;;
--ue-timing
)
UE_TIMING_TRACE
=
"True"
echo_info
"Enabling UE timing trace"
shift
1
;;
--disable-log
)
DISABLE_LOG_X
=
"True"
echo_info
"Disabling all LOG_* traces"
shift
1
;;
--uhd-images-dir
)
UHD_IMAGES_DIR
=
$2
echo_info
"Downloading UHD images in the indicated location"
shift
2
;;
--build-eclipse
)
BUILD_ECLIPSE
=
1
CMAKE_CMD
=
"
$CMAKE_CMD
"
' -DCMAKE_ECLIPSE_GENERATE_SOURCE_PROJECT=TRUE -G"Eclipse CDT4 - Unix Makefiles"'
echo_info
"Enabling build eclipse project support"
shift
1
;;
--build-telnetsrv
)
BUILD_TELNETSRV
=
1
echo_info
"Build embedded telnet server"
shift
;;
--build-msc
)
MSC_GEN
=
1
echo_info
"Build MSC tracing utility"
shift
;;
--usrp-recplay
)
USRP_REC_PLAY
=
"True"
echo_info
"Enabling USRP record playback mode"
shift
1
;;
--ue-nas-use-tun
)
UE_NAS_USE_TUN
=
"True"
echo_info
"Enabling UE NAS TUN device usage instead of ue_ip.ko"
shift
1
;;
--basic-simulator
)
BASIC_SIMULATOR
=
1
echo_info
"Compiling the basic simulator"
shift
1
;;
--rfsimulator
)
RFSIMULATOR
=
true
echo_info
"Compiling the RF simulator"
shift
1
;;
-h
|
--help
)
print_help
exit
1
;;
*
)
print_help
echo_fatal
"Unknown option
$1
"
break
;;
esac
done
CMAKE_CMD
=
"
$CMAKE_CMD
.."
echo_info
"CMAKE_CMD=
$CMAKE_CMD
"
-h
|
--help
)
print_help
exit
1
;;
*
)
print_help
echo_fatal
"Unknown option
$1
"
break
;;
esac
done
CMAKE_CMD
=
"
$CMAKE_CMD
.."
echo_info
"CMAKE_CMD=
$CMAKE_CMD
"
#########################################################
# check validity of HW and TP parameters for eNB
#########################################################
...
...
@@ -407,97 +409,100 @@ function main() {
echo_info
"RF HW set to
$HW
"
# If the user doesn't specify the Linux scheduler to use, we set a value
if
[
"
$DEADLINE_SCHEDULER_FLAG_USER
"
=
""
]
;
then
case
"
$HW
"
in
"EXMIMO"
)
DEADLINE_SCHEDULER_FLAG_USER
=
"True"
;;
*
)
DEADLINE_SCHEDULER_FLAG_USER
=
"False"
;;
esac
case
"
$HW
"
in
"EXMIMO"
)
DEADLINE_SCHEDULER_FLAG_USER
=
"True"
;;
*
)
DEADLINE_SCHEDULER_FLAG_USER
=
"False"
;;
esac
fi
#Disable CPU Affinity for deadline scheduler
if
[
"
$DEADLINE_SCHEDULER_FLAG_USER
"
=
"True"
]
;
then
CPU_AFFINITY_FLAG_USER
=
"False"
fi
echo_info
"Flags for Deadline scheduler:
$DEADLINE_SCHEDULER_FLAG_USER
"
echo_info
"Flags for CPU Affinity:
$CPU_AFFINITY_FLAG_USER
"
if
[
-n
"
$UHD_IMAGES_DIR
"
]
&&
[
-z
"
$INSTALL_EXTERNAL
"
]
;
then
echo_error
"UHD images download settings will not be applied without -I present"
exit
fi
############################################
# setting and printing OAI envs, we should check here
############################################
echo_info
"2. Setting the OAI PATHS ..."
cecho
"OPENAIR_DIR =
$OPENAIR_DIR
"
$green
# for conf files copy in this bash script
if
[
-d
/usr/lib/freeDiameter
]
;
then
export
FREEDIAMETER_PREFIX
=
/usr
#Disable CPU Affinity for deadline scheduler
if
[
"
$DEADLINE_SCHEDULER_FLAG_USER
"
=
"True"
]
;
then
CPU_AFFINITY_FLAG_USER
=
"False"
fi
echo_info
"Flags for Deadline scheduler:
$DEADLINE_SCHEDULER_FLAG_USER
"
echo_info
"Flags for CPU Affinity:
$CPU_AFFINITY_FLAG_USER
"
if
[
-n
"
$UHD_IMAGES_DIR
"
]
&&
[
-z
"
$INSTALL_EXTERNAL
"
]
;
then
echo_error
"UHD images download settings will not be applied without -I present"
exit
fi
############################################
# setting and printing OAI envs, we should check here
############################################
echo_info
"2. Setting the OAI PATHS ..."
cecho
"OPENAIR_DIR =
$OPENAIR_DIR
"
$green
# for conf files copy in this bash script
if
[
-d
/usr/lib/freeDiameter
]
;
then
export
FREEDIAMETER_PREFIX
=
/usr
else
if
[
-d
/usr/local/lib/freeDiameter
]
;
then
export
FREEDIAMETER_PREFIX
=
/usr/local
else
if
[
-d
/usr/local/lib/freeDiameter
]
;
then
export
FREEDIAMETER_PREFIX
=
/usr/local
else
echo_warning
"FreeDiameter prefix not found, install freeDiameter if EPC, HSS"
fi
echo_warning
"FreeDiameter prefix not found, install freeDiameter if EPC, HSS"
fi
if
[
"
$CLEAN_ALL
"
=
"1"
]
;
then
clean_all_files
echo_info
"Erased all previously producted files"
fi
dbin
=
$OPENAIR_DIR
/targets/bin
dlog
=
$OPENAIR_DIR
/cmake_targets/log
mkdir
-p
$dbin
$dlog
if
[
"
$INSTALL_EXTERNAL
"
=
"1"
]
;
then
echo_info
"Installing packages"
check_install_oai_software
if
[
"
$HW
"
==
"OAI_USRP"
]
;
then
echo_info
"installing packages for USRP support"
check_install_usrp_uhd_driver
if
[
!
"
$DISABLE_HARDWARE_DEPENDENCY
"
==
"True"
]
;
then
install_usrp_uhd_driver
$UHD_IMAGES_DIR
fi
fi
if
[
"
$HW
"
==
"OAI_BLADERF"
]
;
then
echo_info
"installing packages for BLADERF support"
check_install_bladerf_driver
if
[
!
"
$DISABLE_HARDWARE_DEPENDENCY
"
==
"True"
]
;
then
flash_firmware_bladerf
fi
fi
if
[
"
$HW
"
==
"OAI_IRIS"
]
;
then
echo_info
"installing packages for IRIS support"
check_install_soapy
#if [ ! "$DISABLE_HARDWARE_DEPENDENCY" == "True" ]; then
# flash_firmware_iris
#fi
fi
echo_info
"installing protobuf/protobuf-c for flexran agent support"
install_protobuf_from_source
install_protobuf_c_from_source
fi
if
[
"
$CLEAN_ALL
"
=
"1"
]
;
then
clean_all_files
echo_info
"Erased all previously producted files"
fi
dbin
=
$OPENAIR_DIR
/targets/bin
dlog
=
$OPENAIR_DIR
/cmake_targets/log
mkdir
-p
$dbin
$dlog
if
[
"
$INSTALL_EXTERNAL
"
=
"1"
]
;
then
echo_info
"Installing packages"
check_install_oai_software
if
[
"
$HW
"
==
"OAI_USRP"
]
;
then
echo_info
"installing packages for USRP support"
check_install_usrp_uhd_driver
if
[
!
"
$DISABLE_HARDWARE_DEPENDENCY
"
==
"True"
]
;
then
install_usrp_uhd_driver
$UHD_IMAGES_DIR
fi
fi
if
[
"
$HW
"
==
"OAI_BLADERF"
]
;
then
echo_info
"installing packages for BLADERF support"
check_install_bladerf_driver
if
[
!
"
$DISABLE_HARDWARE_DEPENDENCY
"
==
"True"
]
;
then
flash_firmware_bladerf
fi
fi
if
[
"
$INSTALL_OPTIONAL
"
=
"1"
]
;
then
echo_info
"Installing optional packages"
check_install_additional_tools
if
[
"
$HW
"
==
"OAI_IRIS"
]
;
then
echo_info
"installing packages for IRIS support"
check_install_soapy
#if [ ! "$DISABLE_HARDWARE_DEPENDENCY" == "True" ]; then
# flash_firmware_iris
#fi
fi
echo_info
"3. building the compilation directives ..."
echo_info
"installing protobuf/protobuf-c for flexran agent support"
install_protobuf_from_source
install_protobuf_c_from_source
fi
if
[
"
$INSTALL_OPTIONAL
"
=
"1"
]
;
then
echo_info
"Installing optional packages"
check_install_additional_tools
fi
echo_info
"3. building the compilation directives ..."
DIR
=
$OPENAIR_DIR
/cmake_targets
if
[
"
$T_TRACER
"
=
"False"
]
;
then
noLOGDirsuffix
=
"_noLOG"
fi
if
[
"
$NOS1
"
=
"
True
"
]
;
then
if
[
"
$NOS1
"
=
"
1
"
]
;
then
noS1Dir
=
"_noS1"
bin_suffix
=
"-nos1"
else
...
...
@@ -506,73 +511,73 @@ function main() {
fi
lte_build_dir
=
"lte
${
noS1Dir
}
_build_oai
${
noLOGDirsuffix
}
"
# configuration module libraries, one currently available, using libconfig
config_libconfig_shlib
=
params_libconfig
# first generate the CMakefile in the right directory
if
[
"
$eNB
"
=
"1"
-o
"
$UE
"
=
"1"
-o
"
$HW
"
=
"EXMIMO"
]
;
then
# LTE softmodem compilation
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$DIR
/
$lte_build_dir
/build
mkdir
-p
$DIR
/
$lte_build_dir
/build
cmake_file
=
$DIR
/
$lte_build_dir
/CMakeLists.txt
echo
"cmake_minimum_required(VERSION 3.0)"
>
$cmake_file
if
[
"
$NOS1
"
=
"True"
]
;
then
cat
$DIR
/
$lte_build_dir
/CMakeLists.template
>>
$cmake_file
fi
echo
"set ( CMAKE_BUILD_TYPE
$CMAKE_BUILD_TYPE
)"
>>
$cmake_file
echo
"set ( CFLAGS_PROCESSOR_USER
\"
$CFLAGS_PROCESSOR_USER
\"
)"
>>
$cmake_file
echo
"set ( UE_EXPANSION
$UE_EXPANSION
)"
>>
$cmake_file
# echo "set ( PHY_TX_THREAD $UE_EXPANSION )" >> $cmake_file
echo
"set ( PRE_SCD_THREAD
$UE_EXPANSION
)"
>>
$cmake_file
echo
"set ( UESIM_EXPANSION
$UESIM_EXPANSION
)"
>>
$cmake_file
echo
"set ( RRC_ASN1_VERSION
\"
${
REL
}
\"
)"
>>
$cmake_file
echo
"set ( ENABLE_VCD_FIFO
$VCD_TIMING
)"
>>
$cmake_file
echo
"set ( XFORMS
$XFORMS
)"
>>
$cmake_file
echo
"set ( RF_BOARD
\"
${
HW
}
\"
)"
>>
$cmake_file
echo
"set ( TRANSP_PRO
\"
${
TP
}
\"
)"
>>
$cmake_file
echo
"set (DEADLINE_SCHEDULER
\"
${
DEADLINE_SCHEDULER_FLAG_USER
}
\"
)"
>>
$cmake_file
echo
"set (CPU_AFFINITY
\"
${
CPU_AFFINITY_FLAG_USER
}
\"
)"
>>
$cmake_file
echo
"set ( T_TRACER
$T_TRACER
)"
>>
$cmake_file
echo
"set (UE_AUTOTEST_TRACE
$UE_AUTOTEST_TRACE
)"
>>
$cmake_file
echo
"set (UE_DEBUG_TRACE
$UE_DEBUG_TRACE
)"
>>
$cmake_file
echo
"set (UE_TIMING_TRACE
$UE_TIMING_TRACE
)"
>>
$cmake_file
echo
"set (DISABLE_LOG_X
$DISABLE_LOG_X
)"
>>
$cmake_file
echo
"set (USRP_REC_PLAY
$USRP_REC_PLAY
)"
>>
$cmake_file
# configuration module libraries, one currently available, using libconfig
config_libconfig_shlib
=
params_libconfig
# first generate the CMakefile in the right directory
if
[
"
$eNB
"
=
"1"
-o
"
$UE
"
=
"1"
-o
"
$HW
"
=
"EXMIMO"
]
;
then
# LTE softmodem compilation
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$DIR
/
$lte_build_dir
/build
mkdir
-p
$DIR
/
$lte_build_dir
/build
cmake_file
=
$DIR
/
$lte_build_dir
/CMakeLists.txt
echo
"cmake_minimum_required(VERSION 2.8)"
>
$cmake_file
# if [ "$NOS1" = "1" ] ; then
# cat $DIR/$lte_build_dir/CMakeLists.template >> $cmake_file
# fi
echo
"set ( CMAKE_BUILD_TYPE
$CMAKE_BUILD_TYPE
)"
>>
$cmake_file
echo
"set ( CFLAGS_PROCESSOR_USER
\"
$CFLAGS_PROCESSOR_USER
\"
)"
>>
$cmake_file
echo
"set ( XFORMS
$XFORMS
)"
>>
$cmake_file
echo
"set ( UE_EXPANSION
$UE_EXPANSION
)"
>>
$cmake_file
# echo "set ( PHY_TX_THREAD $UE_EXPANSION )" >> $cmake_file
echo
"set ( PRE_SCD_THREAD
$UE_EXPANSION
)"
>>
$cmake_file
echo
"set ( UESIM_EXPANSION
$UESIM_EXPANSION
)"
>>
$cmake_file
echo
"set ( RRC_ASN1_VERSION
\"
${
REL
}
\"
)"
>>
$cmake_file
echo
"set ( ENABLE_VCD_FIFO
$VCD_TIMING
)"
>>
$cmake_file
echo
"set ( RF_BOARD
\"
${
HW
}
\"
)"
>>
$cmake_file
echo
"set ( TRANSP_PRO
\"
${
TP
}
\"
)"
>>
$cmake_file
echo
"set(PACKAGE_NAME
\"
${
lte_exec
}
\"
)"
>>
$cmake_file
echo
"set (DEADLINE_SCHEDULER
\"
${
DEADLINE_SCHEDULER_FLAG_USER
}
\"
)"
>>
$cmake_file
echo
"set (CPU_AFFINITY
\"
${
CPU_AFFINITY_FLAG_USER
}
\"
)"
>>
$cmake_file
echo
"set ( T_TRACER
$T_TRACER
)"
>>
$cmake_file
echo
"set (UE_AUTOTEST_TRACE
$UE_AUTOTEST_TRACE
)"
>>
$cmake_file
echo
"set (UE_DEBUG_TRACE
$UE_DEBUG_TRACE
)"
>>
$cmake_file
echo
"set (UE_TIMING_TRACE
$UE_TIMING_TRACE
)"
>>
$cmake_file
echo
"set (DISABLE_LOG_X
$DISABLE_LOG_X
)"
>>
$cmake_file
echo
"set (USRP_REC_PLAY
$USRP_REC_PLAY
)"
>>
$cmake_file
echo
"set (UE_NAS_USE_TUN
$UE_NAS_USE_TUN
)"
>>
$cmake_file
echo
"set (NOS1
$NOS1
)"
>>
$cmake_file
echo
'include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)'
>>
$cmake_file
cd
$DIR
/
$lte_build_dir
/build
eval
$CMAKE_CMD
fi
if
[
"
$eNB
"
=
"1"
]
;
then
lte_exec
=
lte-softmodem
${
bin_suffix
}
compilations
\
$lte_build_dir
$lte_exec
\
$lte_exec
$dbin
/
$lte_exec
.
$REL
# mandatory shared lib
compilations
\
$lte_build_dir
$config_libconfig_shlib
\
lib
$config_libconfig_shlib
.so
$dbin
/lib
$config_libconfig_shlib
.so
compilations
\
$lte_build_dir
coding
\
libcoding.so
$dbin
/libcoding.so
if
[
"
$NOS1
"
=
"True"
]
;
then
compilations
\
$lte_build_dir
nasmesh
\
CMakeFiles/nasmesh/nasmesh.ko
$dbin
/nasmesh.ko
compilations
\
$lte_build_dir
rb_tool
\
rb_tool
$dbin
/rb_tool
cp
$OPENAIR_DIR
/cmake_targets/tools/init_nas_nos1
$dbin
fi
echo
'include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)'
>>
$cmake_file
cd
$DIR
/
$lte_build_dir
/build
eval
$CMAKE_CMD
fi
if
[
"
$eNB
"
=
"1"
]
;
then
lte_exec
=
lte-softmodem
${
bin_suffix
}
compilations
\
$lte_build_dir
$lte_exec
\
$lte_exec
$dbin
/
$lte_exec
.
$REL
# mandatory shared lib
compilations
\
$lte_build_dir
$config_libconfig_shlib
\
lib
$config_libconfig_shlib
.so
$dbin
/lib
$config_libconfig_shlib
.so
compilations
\
$lte_build_dir
coding
\
libcoding.so
$dbin
/libcoding.so
if
[
"
$NOS1
"
=
"1"
]
;
then
compilations
\
$lte_build_dir
nasmesh
\
CMakeFiles/nasmesh/nasmesh.ko
$dbin
/nasmesh.ko
compilations
\
$lte_build_dir
rb_tool
\
rb_tool
$dbin
/rb_tool
cp
$OPENAIR_DIR
/cmake_targets/tools/init_nas_nos1
$dbin
fi
if
[
"
$UE
"
=
"1"
]
;
then
fi
if
[
"
$UE
"
=
1
]
;
then
lte_exec
=
lte-uesoftmodem
${
bin_suffix
}
compilations
\
$lte_build_dir
$lte_exec
\
...
...
@@ -586,7 +591,7 @@ function main() {
$lte_build_dir
coding
\
libcoding.so
$dbin
/libcoding.so
if
[
"
$NOS1
"
=
"
True
"
]
;
then
if
[
"
$NOS1
"
=
"
0
"
]
;
then
compilations
\
$lte_build_dir
nasmesh
\
CMakeFiles/nasmesh/nasmesh.ko
$dbin
/nasmesh.ko
...
...
@@ -595,112 +600,110 @@ function main() {
rb_tool
$dbin
/rb_tool
cp
$OPENAIR_DIR
/cmake_targets/tools/init_nas_nos1
$dbin
else
# ue_ip driver compilation
echo_info
"Compiling UE specific part"
if
[
"
$UE_NAS_USE_TUN
"
=
"False"
]
;
then
compilations
\
$lte_build_dir
ue_ip
\
CMakeFiles/ue_ip/ue_ip.ko
$dbin
/ue_ip.ko
fi
# mkdir -p $DIR/at_commands/build
# cd $DIR/at_commands/build
# eval $CMAKE_CMD
# compilations \
# at_commands at_nas_ue \
# at_nas_ue $dbin/at_nas_ue
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$DIR
/nas_sim_tools/build
mkdir
-p
$DIR
/nas_sim_tools/build
cd
$DIR
/nas_sim_tools/build
eval
$CMAKE_CMD
compilations
\
nas_sim_tools usim
\
usim
$dbin
/usim
compilations
\
nas_sim_tools nvram
\
nvram
$dbin
/nvram
compilations
\
nas_sim_tools conf2uedata
\
conf2uedata
$dbin
/conf2uedata
# generate USIM data
if
[
-f
$dbin
/conf2uedata
]
;
then
install_nas_tools
$conf_nvram_path
$gen_nvram_path
echo_info
"Copying UE specific part to
$DIR
/
$lte_build_dir
/build"
cp
-Rvf
$dbin
/.ue_emm.nvram0
$DIR
/
$lte_build_dir
/build
cp
-Rvf
$dbin
/.ue.nvram0
$DIR
/
$lte_build_dir
/build
cp
-Rvf
$dbin
/.usim.nvram0
$DIR
/
$lte_build_dir
/build
else
echo_warning
"not generated UE NAS files: binaries not found"
fi
fi
fi
# ue_ip driver compilation
echo_info
"Compiling UE specific part"
compilations
\
$lte_build_dir
ue_ip
\
CMakeFiles/ue_ip/ue_ip.ko
$dbin
/ue_ip.ko
# mkdir -p $DIR/at_commands/build
# cd $DIR/at_commands/build
# eval $CMAKE_CMD
# compilations \
# at_commands at_nas_ue \
# at_nas_ue $dbin/at_nas_ue
if
[
"
$SIMUS_PHY
"
=
"1"
-o
"
$SIMUS_CORE
"
=
"1"
]
;
then
cd
$OPENAIR_DIR
/cmake_targets/lte-simulators
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
build
mkdir
-p
build
cd
build
rm
-f
*
sim
eval
$CMAKE_CMD
fi
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$DIR
/nas_sim_tools/build
mkdir
-p
$DIR
/nas_sim_tools/build
cd
$DIR
/nas_sim_tools/build
if
[
"
$SIMUS_PHY
"
=
"1"
]
;
then
# lte unitary simulators compilation
echo_info
"Compiling unitary tests simulators"
# TODO: fix: dlsim_tm4 pucchsim prachsim pdcchsim pbchsim mbmssim
#simlist="dlsim_tm4 dlsim ulsim pucchsim prachsim pdcchsim pbchsim mbmssim"
simlist
=
"dlsim ulsim"
for
f
in
$simlist
;
do
compilations
\
lte-simulators
$f
\
$f
$dbin
/
$f
.
$REL
done
compilations
\
lte-simulators coding
\
libcoding.so
$dbin
/libcoding.so
# compilations \
# lte-simulators $config_libconfig_shlib \
# lib$config_libconfig_shlib.so $dbin/lib$config_libconfig_shlib.so
eval
$CMAKE_CMD
compilations
\
nas_sim_tools usim
\
usim
$dbin
/usim
compilations
\
nas_sim_tools nvram
\
nvram
$dbin
/nvram
compilations
\
nas_sim_tools conf2uedata
\
conf2uedata
$dbin
/conf2uedata
# generate USIM data
if
[
-f
$dbin
/conf2uedata
]
;
then
install_nas_tools
$conf_nvram_path
$gen_nvram_path
echo_info
"Copying UE specific part to
$DIR
/
$lte_build_dir
/build"
cp
-Rvf
$dbin
/.ue_emm.nvram0
$DIR
/
$lte_build_dir
/build
cp
-Rvf
$dbin
/.ue.nvram0
$DIR
/
$lte_build_dir
/build
cp
-Rvf
$dbin
/.usim.nvram0
$DIR
/
$lte_build_dir
/build
else
echo_warning
"not generated UE NAS files: binaries not found"
fi
# Core simulators
#############
if
[
"
$SIMUS_CORE
"
=
"1"
]
;
then
# lte unitary simulators compilation
echo_info
"Compiling unitary tests simulators"
simlist
=
"secu_knas_encrypt_eia1 secu_kenb aes128_ctr_encrypt aes128_ctr_decrypt secu_knas_encrypt_eea2 secu_knas secu_knas_encrypt_eea1 kdf aes128_cmac_encrypt secu_knas_encrypt_eia2"
for
f
in
$simlist
;
do
compilations
\
lte-simulators test_
$f
\
test_
$f
$dbin
/test_
$f
.
$REL
done
fi
fi
if
[
"
$SIMUS_PHY
"
=
"1"
-o
"
$SIMUS_CORE
"
=
"1"
]
;
then
cd
$OPENAIR_DIR
/cmake_targets/lte-simulators
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
build
mkdir
-p
build
cd
build
rm
-f
*
sim
eval
$CMAKE_CMD
fi
if
[
"
$SIMUS_PHY
"
=
"1"
]
;
then
# lte unitary simulators compilation
echo_info
"Compiling unitary tests simulators"
# TODO: fix: dlsim_tm4 pucchsim prachsim pdcchsim pbchsim mbmssim
#simlist="dlsim_tm4 dlsim ulsim pucchsim prachsim pdcchsim pbchsim mbmssim"
simlist
=
"dlsim ulsim"
for
f
in
$simlist
;
do
compilations
\
lte-simulators
$f
\
$f
$dbin
/
$f
.
$REL
done
compilations
\
lte-simulators coding
\
libcoding.so
$dbin
/libcoding.so
# compilations \
# lte-simulators $config_libconfig_shlib \
# lib$config_libconfig_shlib.so $dbin/lib$config_libconfig_shlib.so
fi
# Core simulators
#############
if
[
"
$SIMUS_CORE
"
=
"1"
]
;
then
# lte unitary simulators compilation
echo_info
"Compiling unitary tests simulators"
simlist
=
"secu_knas_encrypt_eia1 secu_kenb aes128_ctr_encrypt aes128_ctr_decrypt secu_knas_encrypt_eea2 secu_knas secu_knas_encrypt_eea1 kdf aes128_cmac_encrypt secu_knas_encrypt_eia2"
for
f
in
$simlist
;
do
compilations
\
lte-simulators test_
$f
\
test_
$f
$dbin
/test_
$f
.
$REL
done
fi
# EXMIMO drivers & firmware loader
###############
if
[
"
$HW
"
=
"EXMIMO"
]
;
then
# EXMIMO drivers & firmware loader
###############
if
[
"
$HW
"
=
"EXMIMO"
]
;
then
echo_info
"Compiling Express MIMO 2 board drivers"
compilations
\
$lte_build_dir
openair_rf
\
CMakeFiles/openair_rf/openair_rf.ko
$dbin
/openair_rf.ko
compilations
\
$lte_build_dir
updatefw
\
updatefw
$dbin
/updatefw
echo_info
"Compiling oarf tools. The logfile for compilation is here:
$dlog
/oarf.txt"
make
-C
$OPENAIR_DIR
/cmake_targets/
$lte_build_dir
/build oarf
>
$dlog
/oarf.txt 2>&1
cp
$OPENAIR_DIR
/cmake_targets/
$lte_build_dir
/build/
*
.oct
$dbin
if
[
-s
$dbin
/oarf_config_exmimo.oct
]
;
then
echo_success
"oarf tools compiled"
else
echo_error
"oarf tools compilation failed"
fi
cp
$OPENAIR_DIR
/cmake_targets/tools/init_exmimo2
$dbin
echo_info
"Compiling Express MIMO 2 board drivers"
compilations
\
$lte_build_dir
openair_rf
\
CMakeFiles/openair_rf/openair_rf.ko
$dbin
/openair_rf.ko
compilations
\
$lte_build_dir
updatefw
\
updatefw
$dbin
/updatefw
echo_info
"Compiling oarf tools. The logfile for compilation is here:
$dlog
/oarf.txt"
make
-C
$OPENAIR_DIR
/cmake_targets/
$lte_build_dir
/build oarf
>
$dlog
/oarf.txt 2>&1
cp
$OPENAIR_DIR
/cmake_targets/
$lte_build_dir
/build/
*
.oct
$dbin
if
[
-s
$dbin
/oarf_config_exmimo.oct
]
;
then
echo_success
"oarf tools compiled"
else
echo_error
"oarf tools compilation failed"
fi
cp
$OPENAIR_DIR
/cmake_targets/tools/init_exmimo2
$dbin
fi
# Telnet server compilation
#####################
if
[
"
$BUILD_TELNETSRV
"
=
"1"
]
;
then
...
...
@@ -799,168 +802,166 @@ function main() {
$lte_build_dir
rfsimulator
\
librfsimulator.so
$dbin
/librfsimulator.so.
$REL
fi
# Doxygen Support
#####################
if
[
"
$BUILD_DOXYGEN
"
=
"1"
]
;
then
doxygen_log
=
$OPENAIR_DIR
/cmake_targets/log/doxygen.log
echo_info
"Building doxygen based documentation. The documentation file is located here:
$OPENAIR_DIR
/targets/DOCS/html/index.html"
echo_info
"Doxygen Generation log is located here:
$doxygen_log
"
echo_info
"Generating doxygen files....please wait"
(
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$OPENAIR_DIR
/cmake_targets/doxygen/build
mkdir
-p
$OPENAIR_DIR
/cmake_targets/doxygen/build
cd
$OPENAIR_DIR
/cmake_targets/doxygen/build
eval
$CMAKE_CMD
make doc
)
>
&
$doxygen_log
# Doxygen Support
#####################
if
[
"
$BUILD_DOXYGEN
"
=
"1"
]
;
then
doxygen_log
=
$OPENAIR_DIR
/cmake_targets/log/doxygen.log
echo_info
"Building doxygen based documentation. The documentation file is located here:
$OPENAIR_DIR
/targets/DOCS/html/index.html"
echo_info
"Doxygen Generation log is located here:
$doxygen_log
"
echo_info
"Generating doxygen files....please wait"
(
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$OPENAIR_DIR
/cmake_targets/doxygen/build
mkdir
-p
$OPENAIR_DIR
/cmake_targets/doxygen/build
cd
$OPENAIR_DIR
/cmake_targets/doxygen/build
eval
$CMAKE_CMD
make doc
)
>
&
$doxygen_log
fi
# Auto-tests
#####################
if
[
"
$OAI_TEST
"
=
"1"
]
;
then
echo_info
"10. Running OAI pre commit tests (pre-ci) ..."
echo_error
"These scripts ASSUME that user is in /etc/sudoers and can execute commands without PASSWORD prompt"
echo_error
"Add the following lines in /etc/sudoers file to make your __user_name__ sudo without password prompt"
echo_error
" __your_user_name__ ALL = (ALL:ALL) NOPASSWD: ALL"
echo_error
" __your_user_name__ ALL = (ALL) NOPASSWD: ALL "
echo_info
"The log file for the autotest script for debugging is located here:
$OPENAIR_DIR
/cmake_targets/autotests/log/autotests.log "
echo_info
"The results of autotests results is located here:
$OPENAIR_DIR
/cmake_targets/autotests/log/results_autotests.xml "
echo_info
"You can hit CTRL-C any time to terminate the autotests..."
echo
"Current User Name:
$USER
"
read
-s
-p
"Enter Password: "
mypassword
echo
-e
"
\n
"
rm
-fr
$OPENAIR_DIR
/cmake_targets/autotests/log
mkdir
-p
$OPENAIR_DIR
/cmake_targets/autotests/log
if
[
"
$RUN_GROUP
"
-eq
"1"
]
;
then
$OPENAIR_DIR
/cmake_targets/autotests/run_exec_autotests.bash
-g
"
$TEST_CASE_GROUP
"
-p
$mypassword
>
&
$OPENAIR_DIR
/cmake_targets/autotests/log/autotests.log &
else
$OPENAIR_DIR
/cmake_targets/autotests/run_exec_autotests.bash
-p
$mypassword
>
&
$OPENAIR_DIR
/cmake_targets/autotests/log/autotests.log &
fi
# Auto-tests
#####################
if
[
"
$OAI_TEST
"
=
"1"
]
;
then
echo_info
"10. Running OAI pre commit tests (pre-ci) ..."
echo_error
"These scripts ASSUME that user is in /etc/sudoers and can execute commands without PASSWORD prompt"
echo_error
"Add the following lines in /etc/sudoers file to make your __user_name__ sudo without password prompt"
echo_error
" __your_user_name__ ALL = (ALL:ALL) NOPASSWD: ALL"
echo_error
" __your_user_name__ ALL = (ALL) NOPASSWD: ALL "
echo_info
"The log file for the autotest script for debugging is located here:
$OPENAIR_DIR
/cmake_targets/autotests/log/autotests.log "
echo_info
"The results of autotests results is located here:
$OPENAIR_DIR
/cmake_targets/autotests/log/results_autotests.xml "
echo_info
"You can hit CTRL-C any time to terminate the autotests..."
echo
"Current User Name:
$USER
"
read
-s
-p
"Enter Password: "
mypassword
echo
-e
"
\n
"
rm
-fr
$OPENAIR_DIR
/cmake_targets/autotests/log
mkdir
-p
$OPENAIR_DIR
/cmake_targets/autotests/log
if
[
"
$RUN_GROUP
"
-eq
"1"
]
;
then
$OPENAIR_DIR
/cmake_targets/autotests/run_exec_autotests.bash
-g
"
$TEST_CASE_GROUP
"
-p
$mypassword
>
&
$OPENAIR_DIR
/cmake_targets/autotests/log/autotests.log &
else
$OPENAIR_DIR
/cmake_targets/autotests/run_exec_autotests.bash
-p
$mypassword
>
&
$OPENAIR_DIR
/cmake_targets/autotests/log/autotests.log &
fi
wait
wait
else
echo_info
"10. Bypassing the Tests ..."
fi
# basic simulator
#####################
if
[
"
$BASIC_SIMULATOR
"
=
"1"
]
;
then
echo_info
"Build basic simulator"
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$OPENAIR_DIR
/cmake_targets/basic_simulator
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$OPENAIR_DIR
/cmake_targets/nas_sim_tools/build
mkdir
-p
$OPENAIR_DIR
/cmake_targets/basic_simulator
mkdir
-p
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb
mkdir
-p
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue
mkdir
-p
$OPENAIR_DIR
/cmake_targets/nas_sim_tools/build
# enb
cmake_file
=
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/CMakeLists.txt
echo
"cmake_minimum_required(VERSION 2.8)"
>
$cmake_file
echo
"set ( CMAKE_BUILD_TYPE
$CMAKE_BUILD_TYPE
)"
>>
$cmake_file
echo
"set ( CFLAGS_PROCESSOR_USER
\"
$CFLAGS_PROCESSOR_USER
\"
)"
>>
$cmake_file
echo
"set ( RRC_ASN1_VERSION
\"
${
REL
}
\"
)"
>>
$cmake_file
echo
"set ( ENABLE_VCD_FIFO
$VCD_TIMING
)"
>>
$cmake_file
echo
"set ( XFORMS
$XFORMS
)"
>>
$cmake_file
echo
"set ( RF_BOARD
\"
OAI_USRP
\"
)"
>>
$cmake_file
echo
"set ( TRANSP_PRO
\"
None
\"
)"
>>
$cmake_file
echo
"set(PACKAGE_NAME
\"
simulator_enb
\"
)"
>>
$cmake_file
echo
"set (DEADLINE_SCHEDULER
\"
False
\"
)"
>>
$cmake_file
echo
"set (CPU_AFFINITY
\"
False
\"
)"
>>
$cmake_file
echo
"set ( T_TRACER
\"
True
\"
)"
>>
$cmake_file
echo
"set (UE_AUTOTEST_TRACE
$UE_AUTOTEST_TRACE
)"
>>
$cmake_file
echo
"set (UE_DEBUG_TRACE
$UE_DEBUG_TRACE
)"
>>
$cmake_file
echo
"set (UE_TIMING_TRACE
$UE_TIMING_TRACE
)"
>>
$cmake_file
echo
"set (DISABLE_LOG_X
$DISABLE_LOG_X
)"
>>
$cmake_file
echo
"set (USRP_REC_PLAY
$USRP_REC_PLAY
)"
>>
$cmake_file
echo
"set (BASIC_SIMULATOR
\"
True
\"
)"
>>
$cmake_file
echo
'include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)'
>>
$cmake_file
echo_info
"Build eNB"
echo_info
"logs are in
$dlog
/basic_simulator_enb.txt"
set
+e
{
cd
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb
cmake
.
make
-j
`
nproc
`
lte-softmodem
make
-j
`
nproc
`
coding params_libconfig tcp_bridge_oai
ln
-sf
libtcp_bridge_oai.so liboai_device.so
cd
../..
}
>
$dlog
/basic_simulator_enb.txt 2>&1
set
-e
if
[
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/lte-softmodem
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/libcoding.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/libparams_libconfig.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/libtcp_bridge_oai.so
]
;
then
echo_success
"eNB compiled"
check_warnings
"
$dlog
/basic_simulator_enb.txt"
else
echo_info
"10. Bypassing the Tests ..."
echo_error
"eNB compilation failed"
exit
1
fi
# basic simulator
#####################
if
[
"
$BASIC_SIMULATOR
"
=
"1"
]
;
then
echo_info
"Build basic simulator"
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$OPENAIR_DIR
/cmake_targets/basic_simulator
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$OPENAIR_DIR
/cmake_targets/nas_sim_tools/build
mkdir
-p
$OPENAIR_DIR
/cmake_targets/basic_simulator
mkdir
-p
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb
mkdir
-p
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue
mkdir
-p
$OPENAIR_DIR
/cmake_targets/nas_sim_tools/build
# enb
cmake_file
=
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/CMakeLists.txt
echo
"cmake_minimum_required(VERSION 3.0)"
>
$cmake_file
echo
"set ( CMAKE_BUILD_TYPE
$CMAKE_BUILD_TYPE
)"
>>
$cmake_file
echo
"set ( CFLAGS_PROCESSOR_USER
\"
$CFLAGS_PROCESSOR_USER
\"
)"
>>
$cmake_file
echo
"set ( RRC_ASN1_VERSION
\"
${
REL
}
\"
)"
>>
$cmake_file
echo
"set ( ENABLE_VCD_FIFO
$VCD_TIMING
)"
>>
$cmake_file
echo
"set ( XFORMS
$XFORMS
)"
>>
$cmake_file
echo
"set ( RF_BOARD
\"
OAI_USRP
\"
)"
>>
$cmake_file
echo
"set ( TRANSP_PRO
\"
None
\"
)"
>>
$cmake_file
echo
"set(PACKAGE_NAME
\"
simulator_enb
\"
)"
>>
$cmake_file
echo
"set (DEADLINE_SCHEDULER
\"
False
\"
)"
>>
$cmake_file
echo
"set (CPU_AFFINITY
\"
False
\"
)"
>>
$cmake_file
echo
"set ( T_TRACER
\"
True
\"
)"
>>
$cmake_file
echo
"set (UE_AUTOTEST_TRACE
$UE_AUTOTEST_TRACE
)"
>>
$cmake_file
echo
"set (UE_DEBUG_TRACE
$UE_DEBUG_TRACE
)"
>>
$cmake_file
echo
"set (UE_TIMING_TRACE
$UE_TIMING_TRACE
)"
>>
$cmake_file
echo
"set (DISABLE_LOG_X
$DISABLE_LOG_X
)"
>>
$cmake_file
echo
"set (USRP_REC_PLAY
$USRP_REC_PLAY
)"
>>
$cmake_file
echo
"set (BASIC_SIMULATOR
\"
True
\"
)"
>>
$cmake_file
echo
'include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)'
>>
$cmake_file
echo_info
"Build eNB"
echo_info
"logs are in
$dlog
/basic_simulator_enb.txt"
set
+e
{
cd
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb
cmake
.
make
-j
`
nproc
`
lte-softmodem
make
-j
`
nproc
`
coding params_libconfig tcp_bridge_oai
ln
-sf
libtcp_bridge_oai.so liboai_device.so
cd
../..
}
>
$dlog
/basic_simulator_enb.txt 2>&1
set
-e
if
[
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/lte-softmodem
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/libcoding.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/libparams_libconfig.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/enb/libtcp_bridge_oai.so
]
;
then
echo_success
"eNB compiled"
check_warnings
"
$dlog
/basic_simulator_enb.txt"
else
echo_error
"eNB compilation failed"
exit
1
fi
# ue
echo_info
"Compile conf2uedata"
cd
$OPENAIR_DIR
/cmake_targets/nas_sim_tools/build
eval
$CMAKE_CMD
compilations
\
nas_sim_tools conf2uedata
\
conf2uedata
$dbin
/conf2uedata
cmake_file
=
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/CMakeLists.txt
echo
"cmake_minimum_required(VERSION 3.0)"
>
$cmake_file
echo
"set ( CMAKE_BUILD_TYPE
$CMAKE_BUILD_TYPE
)"
>>
$cmake_file
echo
"set ( CFLAGS_PROCESSOR_USER
\"
$CFLAGS_PROCESSOR_USER
\"
)"
>>
$cmake_file
echo
"set ( RRC_ASN1_VERSION
\"
${
REL
}
\"
)"
>>
$cmake_file
echo
"set ( ENABLE_VCD_FIFO
$VCD_TIMING
)"
>>
$cmake_file
echo
"set ( XFORMS
$XFORMS
)"
>>
$cmake_file
echo
"set ( RF_BOARD
\"
OAI_USRP
\"
)"
>>
$cmake_file
echo
"set ( TRANSP_PRO
\"
None
\"
)"
>>
$cmake_file
echo
"set(PACKAGE_NAME
\"
simulator_ue
\"
)"
>>
$cmake_file
echo
"set (DEADLINE_SCHEDULER
\"
False
\"
)"
>>
$cmake_file
echo
"set (CPU_AFFINITY
\"
False
\"
)"
>>
$cmake_file
echo
"set ( T_TRACER
\"
True
\"
)"
>>
$cmake_file
echo
"set (UE_AUTOTEST_TRACE
$UE_AUTOTEST_TRACE
)"
>>
$cmake_file
echo
"set (UE_DEBUG_TRACE
$UE_DEBUG_TRACE
)"
>>
$cmake_file
echo
"set (UE_TIMING_TRACE
$UE_TIMING_TRACE
)"
>>
$cmake_file
echo
"set (DISABLE_LOG_X
$DISABLE_LOG_X
)"
>>
$cmake_file
echo
"set (USRP_REC_PLAY
$USRP_REC_PLAY
)"
>>
$cmake_file
echo
"set (LINUX True )"
>>
$cmake_file
echo
"set (PDCP_USE_NETLINK True )"
>>
$cmake_file
echo
"set (BASIC_SIMULATOR
\"
True
\"
)"
>>
$cmake_file
echo
"set (UE_NAS_USE_TUN
\"
True
\"
)"
>>
$cmake_file
echo
'include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)'
>>
$cmake_file
echo_info
"Build UE"
echo_info
"logs are in
$dlog
/basic_simulator_ue.txt"
set
+e
{
cd
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue
cmake
.
make
-j
`
nproc
`
lte-uesoftmodem
make
-j
`
nproc
`
coding params_libconfig tcp_bridge_oai
ln
-sf
libtcp_bridge_oai.so liboai_device.so
cd
../..
}
>
$dlog
/basic_simulator_ue.txt 2>&1
set
-e
if
[
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/lte-uesoftmodem
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/libcoding.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/libparams_libconfig.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/libtcp_bridge_oai.so
]
;
then
echo_success
"UE compiled"
check_warnings
"
$dlog
/basic_simulator_ue.txt"
else
echo_error
"UE compilation failed"
exit
1
fi
echo_info
"Generate UE SIM data"
$OPENAIR_DIR
/targets/bin/conf2uedata
-c
$OPENAIR_DIR
/openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf
-o
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue
# ue
echo_info
"Compile conf2uedata"
cd
$OPENAIR_DIR
/cmake_targets/nas_sim_tools/build
eval
$CMAKE_CMD
compilations
\
nas_sim_tools conf2uedata
\
conf2uedata
$dbin
/conf2uedata
cmake_file
=
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/CMakeLists.txt
echo
"cmake_minimum_required(VERSION 2.8)"
>
$cmake_file
echo
"set ( CMAKE_BUILD_TYPE
$CMAKE_BUILD_TYPE
)"
>>
$cmake_file
echo
"set ( CFLAGS_PROCESSOR_USER
\"
$CFLAGS_PROCESSOR_USER
\"
)"
>>
$cmake_file
echo
"set ( RRC_ASN1_VERSION
\"
${
REL
}
\"
)"
>>
$cmake_file
echo
"set ( ENABLE_VCD_FIFO
$VCD_TIMING
)"
>>
$cmake_file
echo
"set ( XFORMS
$XFORMS
)"
>>
$cmake_file
echo
"set ( RF_BOARD
\"
OAI_USRP
\"
)"
>>
$cmake_file
echo
"set ( TRANSP_PRO
\"
None
\"
)"
>>
$cmake_file
echo
"set(PACKAGE_NAME
\"
simulator_ue
\"
)"
>>
$cmake_file
echo
"set (DEADLINE_SCHEDULER
\"
False
\"
)"
>>
$cmake_file
echo
"set (CPU_AFFINITY
\"
False
\"
)"
>>
$cmake_file
echo
"set ( T_TRACER
\"
True
\"
)"
>>
$cmake_file
echo
"set (UE_AUTOTEST_TRACE
$UE_AUTOTEST_TRACE
)"
>>
$cmake_file
echo
"set (UE_DEBUG_TRACE
$UE_DEBUG_TRACE
)"
>>
$cmake_file
echo
"set (UE_TIMING_TRACE
$UE_TIMING_TRACE
)"
>>
$cmake_file
echo
"set (DISABLE_LOG_X
$DISABLE_LOG_X
)"
>>
$cmake_file
echo
"set (USRP_REC_PLAY
$USRP_REC_PLAY
)"
>>
$cmake_file
echo
"set (LINUX True )"
>>
$cmake_file
echo
"set (PDCP_USE_NETLINK True )"
>>
$cmake_file
echo
"set (BASIC_SIMULATOR
\"
True
\"
)"
>>
$cmake_file
# echo "set (UE_NAS_USE_TUN \"True\" )" >> $cmake_file
echo
'include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)'
>>
$cmake_file
echo_info
"Build UE"
echo_info
"logs are in
$dlog
/basic_simulator_ue.txt"
set
+e
{
cd
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue
cmake
.
make
-j
`
nproc
`
lte-uesoftmodem
make
-j
`
nproc
`
coding params_libconfig tcp_bridge_oai
ln
-sf
libtcp_bridge_oai.so liboai_device.so
cd
../..
}
>
$dlog
/basic_simulator_ue.txt 2>&1
set
-e
if
[
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/lte-uesoftmodem
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/libcoding.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/libparams_libconfig.so
-a
\
-s
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue/libtcp_bridge_oai.so
]
;
then
echo_success
"UE compiled"
check_warnings
"
$dlog
/basic_simulator_ue.txt"
else
echo_error
"UE compilation failed"
exit
1
fi
echo_info
"Generate UE SIM data"
$OPENAIR_DIR
/targets/bin/conf2uedata
-c
$OPENAIR_DIR
/openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf
-o
$OPENAIR_DIR
/cmake_targets/basic_simulator/ue
fi
}
main
"
$@
"
openair2/NETWORK_DRIVER/MESH/local.h
View file @
385fca8d
...
...
@@ -160,10 +160,8 @@ typedef struct pdcp_data_req_header_s {
sdu_size_t
data_size
;
signed
int
inst
;
ip_traffic_type_t
traffic_type
;
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
uint32_t
sourceL2Id
;
uint32_t
destinationL2Id
;
#endif
}
pdcp_data_req_header_t
;
typedef
struct
pdcp_data_ind_header_s
{
...
...
@@ -171,10 +169,8 @@ typedef struct pdcp_data_ind_header_s {
sdu_size_t
data_size
;
signed
int
inst
;
ip_traffic_type_t
dummy_traffic_type
;
#if (LTE_RRC_VERSION >= MAKE_VERSION(14, 0, 0))
uint32_t
sourceL2Id
;
uint32_t
destinationL2Id
;
#endif
}
pdcp_data_ind_header_t
;
extern
struct
net_device
*
nasdev
[
NB_INSTANCES_MAX
];
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment