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
lizhongxiao
OpenXG-RAN
Commits
cf6ff96b
Commit
cf6ff96b
authored
Oct 12, 2022
by
Robert Schmidt
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Generate and build X2AP ASN.1 during build time
parent
d379e968
Changes
5
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
1501 additions
and
44 deletions
+1501
-44
CMakeLists.txt
CMakeLists.txt
+21
-44
openair2/CMakeLists.txt
openair2/CMakeLists.txt
+1
-0
openair2/X2AP/CMakeLists.txt
openair2/X2AP/CMakeLists.txt
+1
-0
openair2/X2AP/MESSAGES/ASN1/R15/x2ap-15.6.0.cmake
openair2/X2AP/MESSAGES/ASN1/R15/x2ap-15.6.0.cmake
+1457
-0
openair2/X2AP/MESSAGES/CMakeLists.txt
openair2/X2AP/MESSAGES/CMakeLists.txt
+21
-0
No files found.
CMakeLists.txt
View file @
cf6ff96b
...
...
@@ -627,35 +627,11 @@ add_library(M3AP_ENB
add_dependencies
(
M3AP_ENB rrc_flag m3_flag
)
#X2AP
# Same limitation as described in RRC/S1AP: unknown generated file list
# so we generate it at cmake time
##############
set
(
X2AP_RELEASE R15
)
set
(
X2AP_DIR
${
OPENAIR2_DIR
}
/X2AP
)
make_version
(
X2AP_VERSION 15 6 0
)
set
(
X2AP_ASN_FILES x2ap-15.6.0.asn1
)
add_definitions
(
-DX2AP_VERSION=
${
X2AP_VERSION
}
)
set
(
X2AP_ASN_DIR
${
X2AP_DIR
}
/MESSAGES/ASN1/
${
X2AP_RELEASE
}
)
set
(
X2AP_C_DIR
${
asn1_generated_dir
}
/X2AP_
${
X2AP_RELEASE
}
)
# Warning: if you modify ASN.1 source file to generate new C files, cmake should be re-run instead of make
set
(
x2_cmd
${
OPENAIR_CMAKE
}
/tools/make_asn1c_includes.sh
"X2AP_"
-fno-include-deps
"
${
X2AP_C_DIR
}
"
)
compile_asn1
(
"
${
X2AP_ASN_DIR
}
/
${
X2AP_ASN_FILES
}
"
"
${
x2_cmd
}
"
x2_flag
)
file
(
GLOB X2AP_source
${
X2AP_C_DIR
}
/*.c
)
add_library
(
X2AP_LIB
${
X2AP_source
}
${
X2AP_DIR
}
/x2ap_common.c
)
add_dependencies
(
X2AP_LIB rrc_flag x2_flag
)
include_directories
(
"
${
X2AP_C_DIR
}
"
)
include_directories
(
"
${
X2AP_DIR
}
"
)
add_library
(
X2AP_ENB
add_library
(
x2ap
${
X2AP_DIR
}
/x2ap_common.c
${
X2AP_DIR
}
/x2ap_eNB.c
${
X2AP_DIR
}
/x2ap_eNB_decoder.c
${
X2AP_DIR
}
/x2ap_eNB_encoder.c
...
...
@@ -666,7 +642,8 @@ add_library(X2AP_ENB
${
X2AP_DIR
}
/x2ap_ids.c
${
X2AP_DIR
}
/x2ap_timers.c
)
add_dependencies
(
X2AP_ENB X2AP_LIB rrc_flag x2_flag
)
add_dependencies
(
x2ap rrc_flag
)
target_link_libraries
(
x2ap PUBLIC asn1_x2ap
)
# F1AP
...
...
@@ -1869,8 +1846,8 @@ add_library(L2
${
ENB_APP_SRC
}
${
MCE_APP_SRC
}
)
add_dependencies
(
L2 rrc_flag s1ap_flag
x2_flag
m2_flag m3_flag
)
target_link_libraries
(
L2 PRIVATE f1ap
)
add_dependencies
(
L2 rrc_flag s1ap_flag m2_flag m3_flag
)
target_link_libraries
(
L2 PRIVATE f1ap
x2ap
)
add_library
(
MAC_NR
${
MAC_NR_SRC
}
...
...
@@ -1890,8 +1867,8 @@ add_library(L2_NR
${
GNB_APP_SRC
}
)
add_dependencies
(
L2_NR rrc_flag nr_rrc_flag s1ap_flag
x2_flag
)
target_link_libraries
(
L2_NR PRIVATE f1ap
)
add_dependencies
(
L2_NR rrc_flag nr_rrc_flag s1ap_flag
)
target_link_libraries
(
L2_NR PRIVATE f1ap
x2ap
)
add_library
(
L2_LTE_NR
${
L2_RRC_SRC
}
...
...
@@ -1916,7 +1893,7 @@ if (NOT ${NOS1})
target_compile_definitions
(
L2_UE PUBLIC -DPDCP_USE_NETLINK
)
endif
()
add_dependencies
(
L2_UE rrc_flag s1ap_flag
x2_flag
)
add_dependencies
(
L2_UE rrc_flag s1ap_flag
)
add_library
(
NR_L2_UE
${
NR_L2_SRC_UE
}
${
MAC_NR_SRC_UE
}
)
target_link_libraries
(
NR_L2_UE PRIVATE f1ap
)
...
...
@@ -1947,7 +1924,7 @@ set (MME_APP_SRC
${
OPENAIR3_DIR
}
/MME_APP/mme_config.c
)
add_library
(
MME_APP
${
MME_APP_SRC
}
)
add_dependencies
(
MME_APP rrc_flag s1ap_flag
x2_flag
m2_flag m3_flag
)
add_dependencies
(
MME_APP rrc_flag s1ap_flag m2_flag m3_flag
)
set
(
SCTP_SRC
${
OPENAIR3_DIR
}
/SCTP/sctp_common.c
...
...
@@ -2466,11 +2443,11 @@ add_executable(lte-softmodem
${
T_SOURCE
}
${
SHLIB_LOADER_SOURCES
}
)
add_dependencies
(
lte-softmodem rrc_flag s1ap_flag
x2_flag
oai_iqplayer
)
add_dependencies
(
lte-softmodem rrc_flag s1ap_flag oai_iqplayer
)
target_link_libraries
(
lte-softmodem
-Wl,--start-group
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB M2AP_LIB M2AP_ENB
X2AP_LIB X2AP_ENB
M3AP_LIB M3AP_ENB GTPV1U f1ap SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP SCHED_LIB SCHED_RU_LIB
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB M2AP_LIB M2AP_ENB
x2ap
M3AP_LIB M3AP_ENB GTPV1U f1ap SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP SCHED_LIB SCHED_RU_LIB
PHY_COMMON PHY PHY_RU L2 L2_LTE NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB MISC_NFAPI_LTE_LIB
${
RAL_LIB
}
${
NAS_UE_LIB
}
ITTI
-Wl,--end-group z dl
)
...
...
@@ -2505,12 +2482,12 @@ add_executable(ocp-enb
${
T_SOURCE
}
${
SHLIB_LOADER_SOURCES
}
)
add_dependencies
(
ocp-enb rrc_flag s1ap_flag
x2_flag
oai_iqplayer coding params_libconfig rfsimulator
)
add_dependencies
(
ocp-enb rrc_flag s1ap_flag oai_iqplayer coding params_libconfig rfsimulator
)
target_link_libraries
(
ocp-enb
-Wl,--start-group
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB f1ap M2AP_LIB M2AP_ENB
X2AP_LIB X2AP_ENB
M3AP_LIB M3AP_ENB GTPV1U SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP SCHED_LIB SCHED_RU_LIB
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB f1ap M2AP_LIB M2AP_ENB
x2ap
M3AP_LIB M3AP_ENB GTPV1U SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP SCHED_LIB SCHED_RU_LIB
PHY_COMMON PHY PHY_RU L2 L2_LTE NFAPI_COMMON_LIB NFAPI_LIB MISC_NFAPI_LTE_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB SIMU_COMMON
${
RAL_LIB
}
${
NAS_UE_LIB
}
ITTI
-Wl,--end-group z dl
)
...
...
@@ -2560,14 +2537,14 @@ add_executable(lte-uesoftmodem
${
SHLIB_LOADER_SOURCES
}
)
add_dependencies
(
lte-uesoftmodem rrc_flag s1ap_flag
x2_flag
)
add_dependencies
(
lte-uesoftmodem rrc_flag s1ap_flag
)
if
(
NOT
${
NOS1
}
)
target_compile_definitions
(
lte-uesoftmodem PRIVATE -DPDCP_USE_NETLINK
)
endif
()
target_link_libraries
(
lte-uesoftmodem
-Wl,--start-group
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB
X2AP_LIB X2AP_ENB
M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB
RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB
x2ap
M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB
SECU_CN SECU_OSA UTIL HASHTABLE SCTP_CLIENT MME_APP SCHED_RU_LIB SCHED_UE_LIB PHY_COMMON
PHY_UE PHY_RU L2_UE L2_LTE SIMU_COMMON SIMU NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB MISC_NFAPI_LTE_LIB
${
RAL_LIB
}
${
NAS_UE_LIB
}
ITTI
${
ATLAS_LIBRARIES
}
...
...
@@ -2610,7 +2587,7 @@ target_link_libraries (nr-softmodem
UTIL HASHTABLE SCTP_CLIENT SCHED_LIB SCHED_RU_LIB SCHED_NR_LIB PHY_NR PHY PHY_COMMON PHY_NR_COMMON PHY_RU GTPV1U SECU_CN SECU_OSA
ITTI
${
RAL_LIB
}
${
NAS_UE_LIB
}
RRC_LIB NR_RRC_LIB
NGAP_LIB NGAP_GNB S1AP_LIB S1AP_ENB L2_LTE_NR L2_NR MAC_NR_COMMON NFAPI_COMMON_LIB NFAPI_LIB NFAPI_VNF_LIB NFAPI_PNF_LIB NFAPI_USER_LIB
X2AP_LIB X2AP_ENB
f1ap M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB
x2ap
f1ap M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB
-Wl,--end-group z dl
)
target_link_libraries
(
nr-softmodem
${
LIBXML2_LIBRARIES
}
)
...
...
@@ -2785,7 +2762,7 @@ add_executable(nr_dlsim
${
SHLIB_LOADER_SOURCES
}
)
target_link_libraries
(
nr_dlsim
-Wl,--start-group UTIL SIMU_COMMON SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_NR MAC_UE_NR MAC_NR_COMMON RRC_LIB NR_RRC_LIB CONFIG_LIB L2_LTE_NR L2_NR HASHTABLE
X2AP_ENB X2AP_LIB
SECU_CN NGAP_GNB NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB -lz -Wl,--end-group
-Wl,--start-group UTIL SIMU_COMMON SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_NR MAC_UE_NR MAC_NR_COMMON RRC_LIB NR_RRC_LIB CONFIG_LIB L2_LTE_NR L2_NR HASHTABLE
x2ap
SECU_CN NGAP_GNB NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB -lz -Wl,--end-group
m pthread
${
ATLAS_LIBRARIES
}
${
T_LIB
}
ITTI
${
OPENSSL_LIBRARIES
}
dl
)
target_compile_definitions
(
nr_dlsim PUBLIC -DPHYSICAL_SIMULATOR
)
...
...
@@ -2802,7 +2779,7 @@ add_executable(nr_prachsim
${
T_SOURCE
}
${
SHLIB_LOADER_SOURCES
}
)
target_link_libraries
(
nr_prachsim
-Wl,--start-group UTIL SIMU_COMMON SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_RU PHY_NR_UE MAC_NR_COMMON SCHED_NR_LIB SCHED_NR_UE_LIB MAC_NR MAC_UE_NR MAC_NR_COMMON RRC_LIB NR_RRC_LIB CONFIG_LIB L2_LTE_NR L2_NR HASHTABLE
X2AP_ENB X2AP_LIB
SECU_CN NGAP_GNB NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB -lz -Wl,--end-group
-Wl,--start-group UTIL SIMU_COMMON SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_RU PHY_NR_UE MAC_NR_COMMON SCHED_NR_LIB SCHED_NR_UE_LIB MAC_NR MAC_UE_NR MAC_NR_COMMON RRC_LIB NR_RRC_LIB CONFIG_LIB L2_LTE_NR L2_NR HASHTABLE
x2ap
SECU_CN NGAP_GNB NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB -lz -Wl,--end-group
m pthread
${
ATLAS_LIBRARIES
}
${
T_LIB
}
ITTI
${
OPENSSL_LIBRARIES
}
dl
)
add_executable
(
nr_ulschsim
...
...
@@ -2836,7 +2813,7 @@ add_dependencies( nr_ulsim ldpc_offload)
endif
()
target_link_libraries
(
nr_ulsim
-Wl,--start-group UTIL SIMU_COMMON SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_NR MAC_UE_NR MAC_NR_COMMON RRC_LIB NR_RRC_LIB CONFIG_LIB L2_LTE_NR L2_NR HASHTABLE
X2AP_ENB X2AP_LIB
SECU_CN NGAP_GNB NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB -lz -Wl,--end-group
-Wl,--start-group UTIL SIMU_COMMON SIMU PHY_COMMON PHY_NR_COMMON PHY_NR PHY_NR_UE SCHED_NR_LIB SCHED_NR_UE_LIB MAC_NR MAC_UE_NR MAC_NR_COMMON RRC_LIB NR_RRC_LIB CONFIG_LIB L2_LTE_NR L2_NR HASHTABLE
x2ap
SECU_CN NGAP_GNB NFAPI_COMMON_LIB NFAPI_LIB NFAPI_PNF_LIB NFAPI_USER_LIB -lz -Wl,--end-group
m pthread
${
ATLAS_LIBRARIES
}
${
T_LIB
}
ITTI
${
OPENSSL_LIBRARIES
}
dl
)
target_compile_definitions
(
nr_ulsim PUBLIC -DPHYSICAL_SIMULATOR
)
...
...
@@ -2894,7 +2871,7 @@ if (${T_TRACER})
syncsim nr_ulsim nr_dlsim nr_dlschsim nr_pbchsim nr_pucchsim
nr_ulschsim ldpctest polartest smallblocktest cu_test du_test
#all "add_library" definitions
ITTI RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB
X2AP_LIB X2AP_ENB
M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB f1ap
ITTI RRC_LIB NR_RRC_LIB S1AP_LIB S1AP_ENB
x2ap
M2AP_LIB M2AP_ENB M3AP_LIB M3AP_ENB f1ap
params_libconfig oai_usrpdevif oai_bladerfdevif oai_lmssdrdevif oai_iqplayer
oai_eth_transpro oai_mobipass coding HASHTABLE UTIL OMG_SUMO
SECU_OSA SECU_CN SCHED_LIB SCHED_NR_LIB SCHED_RU_LIB SCHED_UE_LIB SCHED_NR_UE_LIB default_sched remote_sched RAL
...
...
openair2/CMakeLists.txt
View file @
cf6ff96b
add_subdirectory
(
E1AP
)
add_subdirectory
(
F1AP
)
add_subdirectory
(
X2AP
)
openair2/X2AP/CMakeLists.txt
0 → 100644
View file @
cf6ff96b
add_subdirectory
(
MESSAGES
)
openair2/X2AP/MESSAGES/ASN1/R15/x2ap-15.6.0.cmake
0 → 100644
View file @
cf6ff96b
This diff is collapsed.
Click to expand it.
openair2/X2AP/MESSAGES/CMakeLists.txt
0 → 100644
View file @
cf6ff96b
set
(
X2AP_VERSION 15 6 0
)
make_version
(
X2AP_cc
${
X2AP_VERSION
}
)
#add_definitions(-DX2AP_VERSION=${X2AP_cc})
string
(
REPLACE
";"
"."
X2AP_RELEASE
"
${
X2AP_VERSION
}
"
)
if
(
X2AP_RELEASE VERSION_EQUAL
"15.6.0"
)
include
(
ASN1/R15/x2ap-15.6.0.cmake
)
else
()
message
(
FATAL_ERROR
"unknown X2AP_RELEASE
${
X2AP_RELEASE
}
"
)
endif
()
add_custom_command
(
OUTPUT
${
x2ap_source
}
${
x2ap_headers
}
COMMAND ASN1C_PREFIX=X2AP_ asn1c -pdu=all -gen-PER -no-gen-OER -fcompound-names -no-gen-example -fno-include-deps -D
${
CMAKE_CURRENT_BINARY_DIR
}
${
CMAKE_CURRENT_SOURCE_DIR
}
/
${
X2AP_GRAMMAR
}
DEPENDS
${
CMAKE_CURRENT_SOURCE_DIR
}
/
${
X2AP_GRAMMAR
}
COMMENT
"Generating X2AP source files from
${
CMAKE_CURRENT_SOURCE_DIR
}
/
${
X2AP_GRAMMAR
}
"
)
add_library
(
asn1_x2ap
${
x2ap_source
}
)
target_include_directories
(
asn1_x2ap PUBLIC
"
${
CMAKE_CURRENT_BINARY_DIR
}
"
)
target_compile_options
(
asn1_x2ap PRIVATE -DASN_DISABLE_OER_SUPPORT -w
)
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