Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
O
OAI-RAN-5G-sheduler_MaxTBS
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
MAQ5G-PFC
OAI-RAN-5G-sheduler_MaxTBS
Commits
e8282dc4
Commit
e8282dc4
authored
7 years ago
by
Guy De Souza
Browse files
Options
Downloads
Patches
Plain Diff
Build_oai changes for NR
parent
2c837750
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
cmake_targets/build_oai
+88
-51
88 additions, 51 deletions
cmake_targets/build_oai
with
88 additions
and
51 deletions
cmake_targets/build_oai
+
88
−
51
View file @
e8282dc4
...
...
@@ -67,6 +67,7 @@ UE_TIMING_TRACE="False"
DISABLE_LOG_X
=
"False"
USRP_REC_PLAY
=
"False"
BUILD_ECLIPSE
=
0
NR
=
"False"
trap
handle_ctrl_c INT
function
print_help
()
{
...
...
@@ -92,7 +93,11 @@ Options
-h | --help
Print this help
--eNB
Makes the LTE softmodem
Makes the LTE softmodem
--gNB
Makes the NR softmodem
--nrUE
Makes the NR UE softmodem
--UE
Makes the UE specific parts (ue_ip, usim, nvram) from the given configuration file
--UE-conf-nvram [configuration file]
...
...
@@ -200,13 +205,23 @@ function main() {
eNB
=
1
echo_info
"Will compile eNB"
shift
;;
--gNB
)
gNB
=
1
NR
=
"True"
echo_info
"Will compile gNB"
shift
;;
-a
|
--agent
)
echo_info
"FlexRAN support is always compiled into the eNB"
shift
;;
echo_info
"FlexRAN support is always compiled into the eNB"
shift
;;
--UE
)
UE
=
1
echo_info
"Will compile UE"
shift
;;
--nrUE
)
nrUE
=
1
NR
=
"True"
echo_info
"Will compile NR UE"
shift
;;
--UE-conf-nvram
)
conf_nvram_path
=
$(
readlink
-f
"
$1
"
)
shift
2
;;
...
...
@@ -359,17 +374,18 @@ function main() {
CMAKE_CMD
=
"
$CMAKE_CMD
.."
echo_info
"CMAKE_CMD=
$CMAKE_CMD
"
if
[
"
$eNB
"
=
"1"
]
&&
[
"
$
UE
"
=
"1"
]
;
then
echo_error
"Cannot build UE and eNB on one build_oai execution"
if
[
"
$eNB
"
=
"1"
-o
"
$gNB
"
=
"1"
]
&&
[
"
$UE
"
=
"1"
-o
"
$nr
UE
"
=
"1"
]
;
then
echo_error
"Cannot build UE
/nrUE
and eNB
/gNB
on one build_oai execution"
echo_error
"use 2 build_oai invocations"
exit
fi
fi
#########################################################
# check validity of HW and TP parameters for eNB
# check validity of HW and TP parameters for eNB
/ gNB
#########################################################
# to be discussed
if
[
"
$eNB
"
=
"1"
]
;
then
if
[
"
$eNB
"
=
"1"
-o
"
$gNB
"
=
"1"
]
;
then
if
[
"
$HW
"
=
"None"
-a
"
$TP
"
=
"None"
]
;
then
echo_fatal
"Define a local radio head (e.g. -w EXMIMO) or a transport protocol (e.g. -t ETHERNET) to communicate with a remote radio head!"
fi
...
...
@@ -490,37 +506,58 @@ function main() {
echo_info
"3. building the compilation directives ..."
DIR
=
$OPENAIR_DIR
/cmake_targets
if
[
"
$NOS1
"
=
"1"
]
;
then
lte_build_dir
=
lte_noS1_build_oai
if
[
"
$eNB
"
=
"1"
]
;
then
lte_exec
=
lte-softmodem-nos1
fi
if
[
"
$UE
"
=
"1"
]
;
then
lte_exec
=
lte-uesoftmodem-nos1
fi
if
[
"
$NR
"
=
"True"
]
then
if
[
"
$NOS1
"
=
"1"
]
;
then
build_dir
=
nr_noS1_build_oai
if
[
"
$gNB
"
=
"1"
]
;
then
exec
=
nr-softmodem-nos1
fi
if
[
"
$nrUE
"
=
"1"
]
;
then
exec
=
nr-uesoftmodem-nos1
fi
else
build_dir
=
nr_build_oai
if
[
"
$gNB
"
=
"1"
]
;
then
exec
=
nr-softmodem
fi
if
[
"
$nrUE
"
=
"1"
]
;
then
exec
=
nr-uesoftmodem
fi
fi
else
lte_build_dir
=
lte_build_oai
if
[
"
$eNB
"
=
"1"
]
;
then
lte_exec
=
lte-softmodem
fi
if
[
"
$UE
"
=
"1"
]
;
then
lte_exec
=
lte-uesoftmodem
fi
if
[
"
$NOS1
"
=
"1"
]
;
then
build_dir
=
lte_noS1_build_oai
if
[
"
$eNB
"
=
"1"
]
;
then
exec
=
lte-softmodem-nos1
fi
if
[
"
$UE
"
=
"1"
]
;
then
exec
=
lte-uesoftmodem-nos1
fi
else
build_dir
=
lte_build_oai
if
[
"
$eNB
"
=
"1"
]
;
then
exec
=
lte-softmodem
fi
if
[
"
$UE
"
=
"1"
]
;
then
exec
=
lte-uesoftmodem
fi
fi
fi
# 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
if
[
"
$eNB
"
=
"1"
-o
"
$UE
"
=
"1"
-o
"
$gNB
"
=
"1"
-o
"
$nrUE
"
=
"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
# softmodem compilation
[
"
$CLEAN
"
=
"1"
]
&&
rm
-rf
$DIR
/
$build_dir
/build
mkdir
-p
$DIR
/
$build_dir
/build
cmake_file
=
$DIR
/
$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
cat
$DIR
/
$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
...
...
@@ -529,7 +566,7 @@ function main() {
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(PACKAGE_NAME
\"
${
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
...
...
@@ -544,30 +581,30 @@ function main() {
echo
"set (PDCP_USE_NETLINK True )"
>>
$cmake_file
fi
echo
'include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)'
>>
$cmake_file
cd
$DIR
/
$
lte_
build_dir
/build
cd
$DIR
/
$build_dir
/build
eval
$CMAKE_CMD
fi
if
[
"
$eNB
"
=
"1"
-o
"
$UE
"
=
"1"
]
;
then
echo_info
"Compiling
$
lte_
exec
"
if
[
"
$eNB
"
=
"1"
-o
"
$UE
"
=
"1"
-o
"
$gNB
"
=
"1"
-o
"
$nrUE
"
=
"1"
]
;
then
echo_info
"Compiling
$exec
"
compilations
\
$
lte_
build_dir
$
lte_
exec
\
$
lte_
exec
$dbin
/
$
lte_
exec
.
$REL
$build_dir
$exec
\
$exec
$dbin
/
$exec
.
$REL
# mandatory shared lib
compilations
\
$
lte_
build_dir
$config_libconfig_shlib
\
$build_dir
$config_libconfig_shlib
\
lib
$config_libconfig_shlib
.so
$dbin
/lib
$config_libconfig_shlib
.so
compilations
\
$
lte_
build_dir
coding
\
$build_dir
coding
\
libcoding.so
$dbin
/libcoding.so
if
[
"
$NOS1
"
=
"1"
]
;
then
compilations
\
$
lte_
build_dir
nasmesh
\
$build_dir
nasmesh
\
CMakeFiles/nasmesh/nasmesh.ko
$dbin
/nasmesh.ko
compilations
\
$
lte_
build_dir
rb_tool
\
$build_dir
rb_tool
\
rb_tool
$dbin
/rb_tool
cp
$OPENAIR_DIR
/cmake_targets/tools/init_nas_nos1
$dbin
fi
...
...
@@ -577,7 +614,7 @@ function main() {
# ue_ip driver compilation
echo_info
"Compiling UE specific part"
compilations
\
$
lte_
build_dir
ue_ip
\
$build_dir
ue_ip
\
CMakeFiles/ue_ip/ue_ip.ko
$dbin
/ue_ip.ko
# mkdir -p $DIR/at_commands/build
...
...
@@ -605,10 +642,10 @@ function main() {
# 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
echo_info
"Copying UE specific part to
$DIR
/
$build_dir
/build"
cp
-Rvf
$dbin
/.ue_emm.nvram0
$DIR
/
$build_dir
/build
cp
-Rvf
$dbin
/.ue.nvram0
$DIR
/
$build_dir
/build
cp
-Rvf
$dbin
/.usim.nvram0
$DIR
/
$build_dir
/build
else
echo_warning
"not generated UE NAS files: binaries not found"
fi
...
...
@@ -653,14 +690,14 @@ function main() {
echo_info
"Compiling Express MIMO 2 board drivers"
compilations
\
$
lte_
build_dir
openair_rf
\
$build_dir
openair_rf
\
CMakeFiles/openair_rf/openair_rf.ko
$dbin
/openair_rf.ko
compilations
\
$
lte_
build_dir
updatefw
\
$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
make
-C
$OPENAIR_DIR
/cmake_targets/
$build_dir
/build oarf
>
$dlog
/oarf.txt 2>&1
cp
$OPENAIR_DIR
/cmake_targets/
$build_dir
/build/
*
.oct
$dbin
if
[
-s
$dbin
/oarf_config_exmimo.oct
]
;
then
echo_success
"oarf tools compiled"
else
...
...
@@ -783,7 +820,7 @@ function main() {
# Telnet server compilation
#####################
if
[
"
$BUILD_TELNETSRV
"
=
"1"
]
;
then
build_dir
=
$
lte_
build_dir
build_dir
=
$build_dir
compilations
\
$build_dir
telnetsrv
\
libtelnetsrv.so
$dbin
/libtelnetsrv.so
...
...
@@ -791,9 +828,9 @@ function main() {
fi
# build RF device and transport protocol libraries
#####################################
if
[
"
$eNB
"
=
"1"
-o
"
$UE
"
=
"1"
]
;
then
if
[
"
$eNB
"
=
"1"
-o
"
$UE
"
=
"1"
-o
"
$gNB
"
=
"1"
-o
"
$nrUE
"
=
"1"
]
;
then
build_dir
=
$
lte_
build_dir
build_dir
=
$build_dir
# build RF device libraries
if
[
"
$HW
"
!=
"None"
]
;
then
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment