Commit 1a80de79 authored by thomasl's avatar thomasl

trunk alignment with 0.3 branch

git-svn-id: http://svn.eurecom.fr/openair4G/trunk@6875 818b1a75-f10b-46b9-bf7c-635c3b92a50f
parent e0b90b9c
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
# OpenAirInterface Dev : openair4g-devel@eurecom.fr # OpenAirInterface Dev : openair4g-devel@eurecom.fr
# #
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE # Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# Author: laurent THOMAS # Author: laurent THOMAS, Lionel GAUTIER
############################################################################### ###############################################################################
cmake_minimum_required (VERSION 2.8) cmake_minimum_required (VERSION 2.8)
...@@ -45,6 +45,16 @@ project (OpenAirInterface) ...@@ -45,6 +45,16 @@ project (OpenAirInterface)
########################################### ###########################################
# macros to define options as there is numerous options in oai # macros to define options as there is numerous options in oai
################################################ ################################################
macro(add_option name val helpstr)
if(DEFINED ${name})
set(value ${${name}})
else(DEFINED ${name})
set(value ${val})
endif()
set(${name} ${value} CACHE STRING "${helpstr}")
add_definitions("-D${name}=${value}")
endmacro(add_option)
macro(add_boolean_option name val helpstr) macro(add_boolean_option name val helpstr)
if(DEFINED ${name}) if(DEFINED ${name})
set(value ${${name}}) set(value ${${name}})
...@@ -204,7 +214,9 @@ add_list2_option(RRC_ASN1_VERSION "Rel10" "ASN.1 version of RRC interface" "Rel8 ...@@ -204,7 +214,9 @@ add_list2_option(RRC_ASN1_VERSION "Rel10" "ASN.1 version of RRC interface" "Rel8
if (${RRC_ASN1_VERSION} STREQUAL "Rel8") if (${RRC_ASN1_VERSION} STREQUAL "Rel8")
set (RRC_GRAMMAR ${OPENAIR2_DIR}/RRC/LITE/MESSAGES/asn1c/ASN1_files/EUTRA-RRC-Definitions-86.asn) set (RRC_GRAMMAR ${OPENAIR2_DIR}/RRC/LITE/MESSAGES/asn1c/ASN1_files/EUTRA-RRC-Definitions-86.asn)
elseif (${RRC_ASN1_VERSION} STREQUAL "Rel10") elseif (${RRC_ASN1_VERSION} STREQUAL "CBA")
set (RRC_GRAMMAR ${OPENAIR2_DIR}/RRC/LITE/MESSAGES/asn1c/ASN1_files/EUTRA-RRC-Definitions-a20-lola.asn)
else()
set (RRC_GRAMMAR ${OPENAIR2_DIR}/RRC/LITE/MESSAGES/asn1c/ASN1_files/EUTRA-RRC-Definitions-a20.asn) set (RRC_GRAMMAR ${OPENAIR2_DIR}/RRC/LITE/MESSAGES/asn1c/ASN1_files/EUTRA-RRC-Definitions-a20.asn)
endif (${RRC_ASN1_VERSION} STREQUAL "Rel8") endif (${RRC_ASN1_VERSION} STREQUAL "Rel8")
...@@ -335,76 +347,159 @@ endif (${RF_BOARD} STREQUAL "EXMIMO") ...@@ -335,76 +347,159 @@ endif (${RF_BOARD} STREQUAL "EXMIMO")
include_directories ("${OPENAIR_TARGETS}/ARCH/COMMON") include_directories ("${OPENAIR_TARGETS}/ARCH/COMMON")
####################
# to be documented options ##############################################################
################### # ???!!! TO BE DOCUMENTED OPTIONS !!!???
add_boolean_option(ADDR_CONF False "specific to oaisim") ##############################################################
add_boolean_option(ASSERT True "???") add_boolean_option(ASSERT True "???")
add_boolean_option(ENABLE_SECURITY True "Enable LTE integrity and ciphering between RRC UE and eNB")
add_boolean_option(ENABLE_USE_MME True "eNB connected to MME (INTERFACE S1-C), not standalone eNB")
add_boolean_option(NO_RRM True "DO WE HAVE A RADIO RESSOURCE MANAGER: NO")
add_boolean_option(USER_MODE True "????")
add_boolean_option(OAI_NW_DRIVER_TYPE_ETHERNET False "????")
add_boolean_option(DISABLE_USE_NAS False "???") add_boolean_option(DISABLE_USE_NAS False "???")
add_boolean_option(DRIVER2013 True "????")
add_boolean_option(ENABLE_FXP True "????")
add_boolean_option(ENABLE_NAS_UE_LOGGING True "????")
add_boolean_option(ENABLE_NEW_MULTICAST False "specific to oaisim")
add_boolean_option(ENABLE_PDCP_NETLINK_FIFO False "????") add_boolean_option(ENABLE_PDCP_NETLINK_FIFO False "????")
add_boolean_option(ENABLE_PGM_TRANSPORT False "specific to oaisim")
add_boolean_option(ENABLE_RAL False "????")
add_boolean_option(ENABLE_SECURITY True "???")
add_boolean_option(ENABLE_STANDALONE_EPC True "Compile MME, SGW and PGW in a single executable") add_boolean_option(ENABLE_STANDALONE_EPC True "Compile MME, SGW and PGW in a single executable")
add_boolean_option(ENABLE_USE_CPU_EXECUTION_TIME True "Add data in vcd traces: disable it if perf issues")
add_boolean_option(ENABLE_USE_GTPU_IN_KERNEL True "as per name") add_boolean_option(ENABLE_USE_GTPU_IN_KERNEL True "as per name")
add_boolean_option(ENABLE_USE_MME True "???")
add_boolean_option(ENABLE_USE_NETFILTER_FOR_SGI False "SGI option") add_boolean_option(ENABLE_USE_NETFILTER_FOR_SGI False "SGI option")
add_boolean_option(ENABLE_USE_PCAP_FOR_SGI False "SGI option") add_boolean_option(ENABLE_USE_PCAP_FOR_SGI False "SGI option")
add_boolean_option(ENABLE_USE_RAW_SOCKET_FOR_SGI False "As per name") add_boolean_option(ENABLE_USE_RAW_SOCKET_FOR_SGI False "As per name")
add_boolean_option(ENABLE_VCD_FIFO True "Seems legacy: always true now")
add_boolean_option(ENB_MODE True "???")
add_boolean_option(EPC_BUILD False "???") add_boolean_option(EPC_BUILD False "???")
add_boolean_option(HARD_RT False "???") add_boolean_option(LINK_PDCP_TO_GTPV1U False "????")
add_boolean_option(JUMBO_FRAME True "???")
add_boolean_option(LARGE_SCALE False "specific to oaisim: defines max eNB=2 and max UE=120")
add_boolean_option(LINK_PDCP_TO_GTPV1U True "????")
add_boolean_option(LINUX_LIST False "???")
add_boolean_option(LINUX True "???")
add_boolean_option(LOCALIZATION False "???")
add_boolean_option(LOG_NO_THREAD True "Disable thread for log, seems always set to true")
add_boolean_option(LOWLATENCY True "Use the Linux scheduler SCHED_DEADLINE: kernel >= 3.14") add_boolean_option(LOWLATENCY True "Use the Linux scheduler SCHED_DEADLINE: kernel >= 3.14")
add_boolean_option(MAC_CONTEXT True "specific to oaisim")
add_integer_option(MAX_NUM_CCs 1 "????")
add_boolean_option(MIH_C_MEDIEVAL_EXTENSIONS True "????")
add_boolean_option(MU_RECEIVER False "????")
add_boolean_option(NAS_ADDRESS_FIX False "specific to oaisim: for nasmesh driver") add_boolean_option(NAS_ADDRESS_FIX False "specific to oaisim: for nasmesh driver")
add_boolean_option(NAS_MME False "NAS_UE and NAS_MME are incompatible options")
add_boolean_option(NAS_NETLINK False "???? Must be True to compile nasmesh driver without rtai") add_boolean_option(NAS_NETLINK False "???? Must be True to compile nasmesh driver without rtai")
add_boolean_option(NAS_UE True "NAS_UE and NAS_MME are incompatible options")
add_boolean_option(NEW_FFT True "????")
add_boolean_option(NO_RRM True "????")
add_boolean_option(OAI_EMU False "specific to oaisim")
add_boolean_option(OAISIM False "specific to oaisim") add_boolean_option(OAISIM False "specific to oaisim")
add_boolean_option(OAI_NW_DRIVER_TYPE_ETHERNET False "????")
add_boolean_option(OAI_NW_DRIVER_USE_NETLINK True "????") add_boolean_option(OAI_NW_DRIVER_USE_NETLINK True "????")
add_boolean_option(OPENAIR1 True "????") add_boolean_option(UE_BUILD False "????")
add_boolean_option(OPENAIR2 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")
########################
# Include order
##########################
add_boolean_option(ENB_MODE True "Swap the include directories between openair2 and openair-cn" )
##########################
# Emulation options
##########################
add_boolean_option(ENABLE_PGM_TRANSPORT False "specific to oaisim, emulation through ethernet, reliable multicast")
add_boolean_option(ADDR_CONF False "specific to oaisim, IP autoconf of user-plane IP interface")
add_boolean_option(OPENAIR_EMU False "specific to oaisim") add_boolean_option(OPENAIR_EMU False "specific to oaisim")
add_boolean_option(OAI_EMU False "specific to oaisim")
add_boolean_option(PHY_ABSTRACTION False "specific to oaisim")
##########################
# SCHEDULING/REAL-TIME/PERF options
##########################
add_boolean_option(ENABLE_USE_CPU_EXECUTION_TIME True "Add data in vcd traces: disable it if perf issues")
add_boolean_option(ENABLE_VCD_FIFO True "Seems legacy: always true now, time measurements of proc calls and var displays")
add_boolean_option(HARD_RT False "???")
add_boolean_option(LINUX False "used in weird memcpy() in pdcp.c ???")
add_boolean_option(LINUX_LIST False "used only in lists.c: either use OAI implementation of lists or Linux one (should be True, but it is False")
add_boolean_option(LOG_NO_THREAD True "Disable thread for log, seems always set to true")
add_boolean_option(OPENAIR_LTE True "Seems legacy: keep it to true") add_boolean_option(OPENAIR_LTE True "Seems legacy: keep it to true")
##########################
# PHY options
##########################
add_boolean_option(DRIVER2013 True "????")
add_boolean_option(ENABLE_FXP True "????")
add_boolean_option(ENABLE_NEW_MULTICAST False "specific to oaisim")
add_boolean_option(LARGE_SCALE False "specific to oaisim: defines max eNB=2 and max UE=120")
add_boolean_option(LOCALIZATION False "???")
add_integer_option(MAX_NUM_CCs 1 "????")
add_boolean_option(MU_RECEIVER False "????")
add_boolean_option(NEW_FFT True "????")
add_boolean_option(OPENAIR1 True "????")
add_boolean_option(PBS_SIM False "????") add_boolean_option(PBS_SIM False "????")
add_boolean_option(PC_DSP True "????") add_boolean_option(PC_DSP True "????")
add_boolean_option(PC_TARGET True "????") add_boolean_option(PC_TARGET True "????")
add_boolean_option(PERFECT_CE False "????") add_boolean_option(PERFECT_CE False "????")
add_boolean_option(PHY_ABSTRACTION False "specific to oaisim") add_boolean_option(PHYSIM True "for L1 simulators (dlsim, ulsim, ...)")
add_boolean_option(PHY_CONTEXT True "not clear: must remain False for dlsim") add_boolean_option(PHY_CONTEXT True "not clear: must remain False for dlsim")
add_boolean_option(PHY_EMUL False "not clear: must remain False for dlsim") add_boolean_option(PHY_EMUL False "not clear: must remain False for dlsim")
add_boolean_option(PHYSIM True "??? set in lte-softmodem, for L1 simulators dlsim, ulsim, ...?")
add_boolean_option(PUCCH True "????") add_boolean_option(PUCCH True "????")
add_boolean_option(RANDOM_BF False "????") add_boolean_option(RANDOM_BF False "????")
add_boolean_option(RLC_STOP_ON_LOST_PDU False "Fatal assert in this case")
add_boolean_option(SECU False "???")
add_boolean_option(SMBV False "Rohde&Schwarz SMBV100A vector signal generator") add_boolean_option(SMBV False "Rohde&Schwarz SMBV100A vector signal generator")
add_boolean_option(SPECTRA False "???")
add_boolean_option(UE_BUILD True "????") ##########################
# 802.21 options
##########################
add_boolean_option(ENABLE_RAL False "ENABLE 802.21 INTERFACE")
add_boolean_option(USE_3GPP_ADDR_AS_LINK_ADDR False "As per attribute name") add_boolean_option(USE_3GPP_ADDR_AS_LINK_ADDR False "As per attribute name")
add_boolean_option(USE_MME False "this flag is used only one time in lte-softmodem.c")
add_boolean_option(USER_MODE True "????") ##########################
add_list_string_option(PACKAGE_NAME "NotDefined" "As per attribute name") # NAS LAYER OPTIONS
##########################
add_boolean_option(ENABLE_NAS_UE_LOGGING True "????")
add_boolean_option(NAS_BUILT_IN_EPC False "MME NAS layer not present in this executable")
add_boolean_option(NAS_BUILT_IN_UE True "UE NAS layer present in this executable")
add_boolean_option(NAS_UE True "NAS UE INSTANCE (<> NAS_MME)")
add_boolean_option(NAS_MME False "NAS_UE and NAS_MME are incompatible options")
##########################
# ACCESS STRATUM LAYER2 OPTIONS
##########################
add_boolean_option(MAC_CONTEXT True "specific to oaisim")
add_boolean_option(JUMBO_FRAME True "ENABLE LARGE SDU in ACCESS STRATUM (larger than common MTU)")
##########################
# RLC LAYER OPTIONS
##########################
add_boolean_option(OPENAIR2 True "Access Stratum layer 2 built in executable")
add_boolean_option(TRACE_RLC_PAYLOAD False "Fatal assert in this case")
add_boolean_option(RLC_STOP_ON_LOST_PDU False "Fatal assert in this case")
add_boolean_option(TRACE_RLC_AM_BO False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_FREE_SDU False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_HOLE False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_PDU False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_RESEGMENT False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_RX False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_RX_DECODE False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_TX False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_TX_STATUS False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_AM_STATUS_CREATION False "TRACE for RLC AM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(STOP_ON_IP_TRAFFIC_OVERLOAD False "")
add_boolean_option(TRACE_RLC_UM_DAR False "TRACE for RLC UM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_UM_DISPLAY_ASCII_DATA False "TRACE for RLC UM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_UM_PDU False "TRACE for RLC UM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_UM_RX False "TRACE for RLC UM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_UM_SEGMENT False "TRACE for RLC UM, TO BE CHANGED IN A MORE GENERAL FLAG")
add_boolean_option(TRACE_RLC_UM_TX_STATUS False "TRACE for RLC UM, TO BE CHANGED IN A MORE GENERAL FLAG")
##########################
# PDCP LAYER OPTIONS
##########################
add_boolean_option(PDCP_USE_NETLINK False "For eNB, PDCP communicate with a NETLINK socket if connected to network driver, else could use a RT-FIFO")
add_boolean_option(PDCP_USE_NETLINK_QUEUES False "When PDCP_USE_NETLINK is true, incoming IP packets are stored in queues")
add_boolean_option(LINK_ENB_PDCP_TO_IP_DRIVER False "For eNB, PDCP communicate with a IP driver")
add_boolean_option(LINK_ENB_PDCP_TO_GTPV1U True "For eNB, PDCP communicate with GTP-U protocol (eNB<->S-GW)")
##########################
# RRC LAYER OPTIONS
##########################
add_boolean_option(RRC_DEFAULT_RAB_IS_AM False "Otherwise it is UM, configure params are actually set in rrc_eNB.c:rrc_eNB_generate_defaultRRCConnectionReconfiguration(...)")
##########################
# S1AP LAYER OPTIONS
##########################
add_boolean_option(S1AP_LIMIT_STREAM_ID_TO_1 True "FIXME: Despite Eurecom has implemented the spec concerning management of stream ids, there are always issues with other EPCs than EURECOM")
##########################
# PROJECTS (IST, FRENCH COLL., etc)
# SPECIFIC OPTIONS
##########################
add_boolean_option(SPECTRA False "???")
add_boolean_option(MIH_C_MEDIEVAL_EXTENSIONS True "EXTENSIONS TO MIH 802.21 IN CONTEXT OF IST PROJECT CALLED MEDIEVAL")
add_boolean_option(EMOS False "????") add_boolean_option(EMOS False "????")
if(${EMOS}) if(${EMOS})
...@@ -712,6 +807,7 @@ set(L2_SRC ...@@ -712,6 +807,7 @@ set(L2_SRC
${RRC_DIR}/rrc_UE.c ${RRC_DIR}/rrc_UE.c
${RRC_DIR}/rrc_eNB.c ${RRC_DIR}/rrc_eNB.c
${RRC_DIR}/rrc_eNB_S1AP.c ${RRC_DIR}/rrc_eNB_S1AP.c
${RRC_DIR}/rrc_eNB_UE_context.c
${RRC_DIR}/rrc_common.c ${RRC_DIR}/rrc_common.c
${RRC_DIR}/L2_interface.c ${RRC_DIR}/L2_interface.c
) )
...@@ -1291,7 +1387,6 @@ include_directories(${CRYPTO_INCLUDE_DIRS}) ...@@ -1291,7 +1387,6 @@ include_directories(${CRYPTO_INCLUDE_DIRS})
if (${RF_BOARD} STREQUAL "USRP") if (${RF_BOARD} STREQUAL "USRP")
find_package(Boost REQUIRED) find_package(Boost REQUIRED)
include_directories(${LIBBOOST_INCLUDE_DIR}) include_directories(${LIBBOOST_INCLUDE_DIR})
target_link_libraries (lte-softmodem ${LIBBOOST_LIBRARIES})
endif (${RF_BOARD} STREQUAL "USRP") endif (${RF_BOARD} STREQUAL "USRP")
pkg_search_module(OPENPGM openpgm-5.1) pkg_search_module(OPENPGM openpgm-5.1)
...@@ -1368,10 +1463,11 @@ target_link_libraries (lte-softmodem ...@@ -1368,10 +1463,11 @@ target_link_libraries (lte-softmodem
-Wl,--end-group ) -Wl,--end-group )
target_link_libraries (lte-softmodem ${LIBXML2_LIBRARIES}) target_link_libraries (lte-softmodem ${LIBXML2_LIBRARIES})
target_link_libraries (lte-softmodem pthread m ${CONFIG_LIBRARIES} rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${NETTLE_LIBRARIES} sctp ${option_USRP} ${XFORMS_LIBRARIES} ) target_link_libraries (lte-softmodem pthread m ${CONFIG_LIBRARIES} rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${NETTLE_LIBRARIES} sctp ${option_USRP} ${XFORMS_LIBRARIES} )
target_link_libraries (lte-softmodem ${LIBBOOST_LIBRARIES})
# EPC is ??? nodes implementation in one process # EPC is ??? nodes implementation in one process
################################ ################################
add_executable(oai_epc add_executable(mme_gw
${OPENAIR_BIN_DIR}/messages_xml.h ${OPENAIR_BIN_DIR}/messages_xml.h
${OPENAIRCN_DIR}/OAI_EPC/oai_epc_log.c ${OPENAIRCN_DIR}/OAI_EPC/oai_epc_log.c
${OPENAIRCN_DIR}/OAI_EPC/oai_epc.c ${OPENAIRCN_DIR}/OAI_EPC/oai_epc.c
...@@ -1379,13 +1475,35 @@ add_executable(oai_epc ...@@ -1379,13 +1475,35 @@ add_executable(oai_epc
${OPENAIRCN_DIR}/SCTP/sctp_primitives_server.c ${OPENAIRCN_DIR}/SCTP/sctp_primitives_server.c
${OPENAIRCN_DIR}/NAS/nas_main.c ${OPENAIRCN_DIR}/NAS/nas_main.c
) )
target_link_libraries (oai_epc target_link_libraries (mme_gw
-Wl,--start-group -Wl,--start-group
NAS S1AP_LIB S1AP_EPC GTPV1U GTPV2C SCTP_SERVER UDP_SERVER SECU_CN SECU_OSA SGI S6A SGW MME_APP LFDS ${ITTI_LIB} CN_UTILS HASHTABLE NAS S1AP_LIB S1AP_EPC GTPV1U GTPV2C SCTP_SERVER UDP_SERVER SECU_CN SECU_OSA SGI S6A SGW MME_APP LFDS ${ITTI_LIB} CN_UTILS HASHTABLE
-Wl,--end-group -Wl,--end-group
pthread m sctp rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${NETTLE_LIBRARIES} ${CONFIG_LIBRARIES} fdproto fdcore pthread m sctp rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${NETTLE_LIBRARIES} ${CONFIG_LIBRARIES} fdproto fdcore
) )
# Default parameters
site_name(SITE_HSS_HOSTNAME)
site_name(SITE_MME_HOSTNAME)
add_option(MME_HOSTNAME ${SITE_MME_HOSTNAME} "HSS Fully qualified domain name")
add_option(HSS_HOSTNAME ${SITE_HSS_HOSTNAME} "HSS Fully qualified domain name")
add_option(HSS_IP 127.0.1.1 "HSS IP address, default is local")
add_option(REALM openair4G.eur "Realm TODO: extract this default value from SITE_MME_FQDN")
add_option(MME_FQDN ${SITE_MME_HOSTNAME}.${REALM} "MME Fully qualified domain name")
add_option(HSS_FQDN ${SITE_HSS_HOSTNAME}.${REALM} "HSS Fully qualified domain name")
add_option(TRANSPORT_option No_SCTP "No_TCP or No_SCTP")
add_option(TRANSPORT_PREFER_TCP_option Prefer_TCP "Prefer_TCP or null string ")
configure_file(
${OPENAIRCN_DIR}/UTILS/CONF/s6a.conf.in
${CMAKE_CURRENT_BINARY_DIR}/epc_s6a.conf)
configure_file(
${OPENAIR_TARGETS}/PROJECTS/GENERIC-LTE-EPC/CONF/epc.local.enb.conf.in
${CMAKE_CURRENT_BINARY_DIR}/epc.local.enb.conf)
configure_file(
${OPENAIR_TARGETS}/PROJECTS/GENERIC-LTE-EPC/CONF/epc.conf.in
${CMAKE_CURRENT_BINARY_DIR}/epc.conf)
# oai_sgw is SGW node implementation # oai_sgw is SGW node implementation
################################ ################################
add_executable(oai_sgw add_executable(oai_sgw
...@@ -1402,17 +1520,17 @@ target_link_libraries (oai_sgw ...@@ -1402,17 +1520,17 @@ target_link_libraries (oai_sgw
# USIM process # USIM process
################# #################
add_executable(usim_data add_executable(usim
${OPENAIRCN_DIR}/NAS/EURECOM-NAS/tools/usim_data.c ${OPENAIRCN_DIR}/NAS/EURECOM-NAS/tools/usim_data.c
) )
target_link_libraries (usim_data ${NAS_LIB} UTIL ${ITTI_LIB} LFDS pthread rt nettle crypto m) target_link_libraries (usim ${NAS_LIB} UTIL ${ITTI_LIB} LFDS pthread rt nettle crypto m)
# ??? # ???
##################### #####################
add_executable(ue_data add_executable(nvram
${OPENAIRCN_DIR}/NAS/EURECOM-NAS/tools/ue_data.c ${OPENAIRCN_DIR}/NAS/EURECOM-NAS/tools/ue_data.c
) )
target_link_libraries (ue_data ${NAS_LIB} UTIL ${ITTI_LIB} LFDS pthread rt nettle crypto m) target_link_libraries (nvram ${NAS_LIB} UTIL ${ITTI_LIB} LFDS pthread rt nettle crypto m)
###################################" ###################################"
# Addexecutables for tests # Addexecutables for tests
...@@ -1472,8 +1590,6 @@ foreach(myExe s1ap ...@@ -1472,8 +1590,6 @@ foreach(myExe s1ap
secu_kenb secu_kenb
aes128_ctr_encrypt aes128_ctr_encrypt
aes128_ctr_decrypt aes128_ctr_decrypt
secu
secu_knas_stream_int
secu_knas_encrypt_eea2 secu_knas_encrypt_eea2
secu_knas secu_knas_encrypt_eea1 secu_knas secu_knas_encrypt_eea1
kdf kdf
...@@ -1497,12 +1613,16 @@ endforeach(myExe) ...@@ -1497,12 +1613,16 @@ endforeach(myExe)
# ??? # ???
########################### ###########################
add_executable(oaisim_mme add_executable(oaisim_mme
${OPENAIR_BIN_DIR}/messages_xml.h
${OPENAIRCN_DIR}/OAISIM_MME/oai_mme_log.c ${OPENAIRCN_DIR}/OAISIM_MME/oai_mme_log.c
${OPENAIRCN_DIR}/OAISIM_MME/oaisim_mme.c ${OPENAIRCN_DIR}/OAISIM_MME/oaisim_mme.c
${OPENAIRCN_DIR}/NAS/nas_main.c
) )
target_link_libraries (oaisim_mme target_link_libraries (oaisim_mme
${ITTI_LIB} ${NAS_LIB} S1AP_LIB S1AP_ENB -Wl,--start-group
S11 S6A UTILS UDP MME_APP SECU_CN LFDS fdproto fdcore NAS S1AP_LIB S1AP_EPC GTPV1U GTPV2C SCTP_SERVER UDP_SERVER SECU_CN SECU_OSA SGI S6A S11 SGW MME_APP LFDS ${ITTI_LIB} CN_UTILS HASHTABLE
-Wl,--end-group
pthread m sctp rt crypt ${CRYPTO_LIBRARIES} ${OPENSSL_LIBRARIES} ${NETTLE_LIBRARIES} ${CONFIG_LIBRARIES} fdproto fdcore
) )
################################################## ##################################################
......
#!/bin/bash #!/bin/bash
if [ -s $OPENAIR_DIR/cmake_targets/build_helper.bash ] ; then if [ -s $OPENAIR_DIR/cmake_targets/tools/build_helper.bash ] ; then
source $OPENAIR_DIR/cmake_targets/build_helper.bash source $OPENAIR_DIR/cmake_targets/tools/build_helper.bash
else else
echo "Error: no file in the file tree: is OPENAIR_DIR variable set?" echo "Error: no file in the file tree: is OPENAIR_DIR variable set?"
exit 1 exit 1
fi fi
test_compile() {
mkdir -p $tdir/$1/build
cd $tdir/$1/build
{
cmake ..
rm -f $3
make -j4 $2
} > $tdir/log/$1.txt 2>&1
if [ -s $3 ] ; then
cp $3 $tdir/bin/$3.$1
echo_success "$1 test compiled"
else
echo_error "$1 test compilation failed"
fi
}
tdir=$OPENAIR_DIR/cmake_targets/autotests tdir=$OPENAIR_DIR/cmake_targets/autotests
mkdir -p $tdir/bin $tdir/log mkdir -p $tdir/bin $tdir/log
...@@ -15,71 +31,49 @@ if [ "$updated" != "" ] ; then ...@@ -15,71 +31,49 @@ if [ "$updated" != "" ] ; then
echo_warning "some files are not in svn: $updated" echo_warning "some files are not in svn: $updated"
fi fi
compilations \ cd $tdir
autotests/test.0101 oaisim \
oaisim $tdir/bin/oaisim.r8 \ test_compile \
$tdir/log/test0101.txt \ test.0101 oaisim \
"test 0101:oaisim Rel8 passed" \ oaisim $tdir/bin/oaisim.r8
"test 0101:oaisim Rel8 failed"
test_compile \
compilations \ test.0102 oaisim \
autotests/test.0102 oaisim \ oaisim $tdir/bin/oaisim.r8.nas
oaisim $tdir/bin/oaisim.r8.nas \
$tdir/log/test0102.oaisim.txt \ test_compile \
"test 0102:oaisim Rel8 nas passed" \ test.0103 lte-softmodem \
"test 0102:oaisim Rel8 nas failed" lte-softmodem $tdir/bin/lte-softmodem.r8.rf
compilations \
autotests/test.0103 oaisim \ test_compile \
oaisim $tdir/bin/oaisim.r8.rf \ test.0104 dlsim \
$tdir/log/test0103.txt \ dlsim $tdir/bin/dlsim
"test 0103:oaisim rel8 rf passed" \
"test 0103:oaisim rel8 rf failed" test_compile \
compilations \ test.0104 ulsim \
autotests/test.0104 dlsim \ ulsim $tdir/bin/ulsim
dlsim $tdir/bin/dlsim \
$tdir/log/test0104.txt \ test_compile \
"test 0104:dlsim passed" \ test.0106 oaisim \
"test 0104:dlsim failed" oaisim $tdir/bin/oaisim.r8.itti
compilations \
autotests/test.0104 ulsim \ test_compile \
ulsim $tdir/bin/ulsim \ test.0107 oaisim \
$tdir/log/test0105.txt \ oaisim $tdir/bin/oaisim.r10
"test 0105: ulsim passed" \
"test 0105: ulsim failed" test_compile \
compilations \ test.0108 oaisim \
autotests/test.0106 oaisim \ oaisim $tdir/bin/oaisim.r10.itti
oaisim $tdir/bin/oaisim.r8.itti \
$tdir/log/test0106.txt \ test_compile \
"test 0103:oaisim rel8 itti passed" \ test.0114 oaisim \
"test 0103:oaisim rel8 itti failed" oaisim $tdir/bin/oaisim.r8.itti.ral
compilations \
autotests/test.0107 oaisim \ test_compile \
oaisim $tdir/bin/oaisim.r10 \ test.0115 oaisim \
$tdir/log/test0107.txt \ oaisim $tdir/bin/oaisim.r10.itti.ral
"test 0103:oaisim rel10 passed" \
"test 0103:oaisim rel10 failed" test_compile \
compilations \ test.0120 nasmesh \
autotests/test.0108 oaisim \ CMakeFiles/nasmesh/nasmesh.ko $tdir/bin/nasmesh.ko
oaisim $tdir/bin/oaisim.r10.itti \
$tdir/log/test0108.txt \
"test 0108:oaisim rel10 itti passed" \
"test 0108:oaisim rel10 itti failed"
compilations \
autotests/test.0114 oaisim \
oaisim $tdir/bin/oaisim.r8.itti.ral \
$tdir/log/test0114.txt \
"test 0114:oaisim rel8 itti ral passed" \
"test 0114:oaisim rel8 itti ral failed"
compilations \
autotests/test.0115 oaisim \
oaisim $tdir/bin/oaisim.r10.itti.ral \
$tdir/log/test0115.txt \
"test 0114:oaisim rel10 itti ral passed" \
"test 0114:oaisim rel10 itti ral failed"
compilations \
autotests/test.0102 nasmesh \
CMakeFiles/nasmesh/nasmesh.ko $tdir/bin/nasmesh.ko \
$tdir/log/test0120.txt \
"test 0120: nasmesh.ko passed" \
"test 0120: nasmesk.ko failed"
#!/bin/bash #!/bin/bash
if [ -s $OPENAIR_DIR/cmake_targets/build_helper.bash ] ; then if [ -s $OPENAIR_DIR/cmake_targets/tools/build_helper.bash ] ; then
source $OPENAIR_DIR/cmake_targets/build_helper.bash source $OPENAIR_DIR/cmake_targets/tools/build_helper.bash
else else
echo "Error: no file in the file tree: is OPENAIR_DIR variable set?" echo "Error: no file in the file tree: is OPENAIR_DIR variable set?"
exit 1 exit 1
......
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
set(ADDR_CONF False) set ( ADDR_CONF False )
set(ASSERT True) set ( ASSERT True )
set(DEBUG_OMG False) set ( DEBUG_OMG False )
set(DISABLE_XER_PRINT False) set ( DISABLE_USE_NAS False )
set(DRIVER2013 False) set ( DISABLE_XER_PRINT False )
set(ENABLE_FXP True) set ( DRIVER2013 False )
set(ENABLE_ITTI False) set ( EMOS False )
set(ENABLE_NAS_UE_LOGGING False) set ( ENABLE_FXP True )
set(ENABLE_NEW_MULTICAST True) set ( ENABLE_ITTI False )
set(ENABLE_PDCP_NETLINK_FIFO False) set ( ENABLE_NAS_UE_LOGGING False )
set(ENABLE_PGM_TRANSPORT True) set ( ENABLE_NEW_MULTICAST True )
set(ENABLE_RAL False) set ( ENABLE_PDCP_NETLINK_FIFO False )
set(ENABLE_SECURITY False) set ( ENABLE_PGM_TRANSPORT True )
set(ENABLE_USE_CPU_EXECUTION_TIME True) set ( ENABLE_RAL False )
set(ENABLE_USE_MME False) set ( ENABLE_SECURITY False )
set(ENABLE_VCD_FIFO True) set ( ENABLE_STANDALONE_EPC False )
set(HARD_RT False) set ( ENABLE_USE_CPU_EXECUTION_TIME True )
set(JUMBO_FRAME True) set ( ENABLE_USE_GTPU_IN_KERNEL False )
set(LARGE_SCALE False) set ( ENABLE_USE_MME False )
set(LINK_PDCP_TO_GTPV1U False) set ( ENABLE_USE_NETFILTER_FOR_SGI False )
set(LINUX_LIST False) set ( ENABLE_USE_PCAP_FOR_SGI False )
set(LINUX True) set ( ENABLE_USE_RAW_SOCKET_FOR_SGI False )
set(LOCALIZATION False) set ( ENABLE_VCD_FIFO True )
set(LOG_NO_THREAD True) set ( ENB_MODE True )
set(LOWLATENCY False) set ( EPC_BUILD False )
set(MAC_CONTEXT 1) set ( HARD_RT False )
set(MAX_NUM_CCs 1) set ( JUMBO_FRAME True )
set(MIH_C_MEDIEVAL_EXTENSIONS True) set ( LARGE_SCALE False )
set(MSG_PRINT False) set ( LINK_ENB_PDCP_TO_GTPV1U False )
set(MU_RECEIVER False) set ( LINK_ENB_PDCP_TO_IP_DRIVER False )
set(NAS_ADDRESS_FIX true) set ( LINK_PDCP_TO_GTPV1U False )
set(NAS_NETLINK True) set ( LINUX_LIST False )
set(NAS_UE True) set ( LINUX True )
set(NEW_FFT True) set ( LOCALIZATION False )
set(NO_RRM True) set ( LOG_NO_THREAD True )
set(OAI_EMU True) set ( LOWLATENCY False )
set(OAI_EMU True) set ( MAC_CONTEXT 1 )
set(OAI_NW_DRIVER_TYPE_ETHERNET False) set ( MAX_NUM_CCs 1 )
set(OPENAIR1 False) set ( MIH_C_MEDIEVAL_EXTENSIONS True )
set(OPENAIR2 True) set ( MSG_PRINT False )
set(OPENAIR_EMU True) set ( MU_RECEIVER False )
set(OPENAIR_LTE True) set ( NAS_ADDRESS_FIX False )
set (PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_EPC False )
set(PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_UE False )
set(PBS_SIM False) set ( NAS_MME False )
set(PC_DSP False) set ( NAS_NETLINK False )
set(PC_TARGET False) set ( NAS_UE False )
set(PDCP_MSG_PRINT False) set ( NB_ANTENNAS_RX 2 )
set(PERFECT_CE False) set ( NB_ANTENNAS_TX 2 )
set(PHY_ABSTRACTION True) set ( NB_ANTENNAS_TXRX 2 )
set(PHY_ABSTRACTION True) set ( NEW_FFT True )
set(PHY_EMUL False) set ( NO_RRM True )
set(PHYSIM False) set ( OAI_EMU True )
set(PUCCH True) set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set(RANDOM_BF False) set ( OAI_NW_DRIVER_USE_NETLINK False )
set(RF_BOARD "NoBoard") set ( OAISIM True )
set(RLC_STOP_ON_LOST_PDU False) set ( OPENAIR1 False )
set(RRC_ASN1_VERSION False) set ( OPENAIR2 True )
set(RRC_ASN1_VERSION "Rel8") set ( OPENAIR_EMU False )
set(RRC_MSG_PRINT False) set ( OPENAIR_LTE True )
set(RTAI False) set ( PBS_SIM False )
set(SECU False) set ( PC_DSP False )
set(SMBV False) set ( PC_TARGET False )
set(SPECTRA False) set ( PDCP_MSG_PRINT False )
set(TEST_OMG False) set ( PDCP_USE_NETLINK False )
set(UE_BUILD False) set ( PDCP_USE_NETLINK_QUEUES False )
set(USE_3GPP_ADDR_AS_LINK_ADDR False) set ( PERFECT_CE False )
set(USE_MME False) set ( PHY_ABSTRACTION True )
set(USER_MODE True) set ( PHY_CONTEXT 1 )
set(XER_PRINT True) set ( PHY_EMUL False )
set(XFORMS False) set ( PHYSIM False )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD False )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_ASN1_VERSION Rel8 )
set ( RRC_DEFAULT_RAB_IS_AM False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( S1AP_LIMIT_STREAM_ID_TO_1 False )
set ( S1AP_VERSION R10 )
set ( SMBV False )
set ( SPECTRA False )
set ( STOP_ON_IP_TRAFFIC_OVERLOAD False )
set ( TEST_OMG False )
set ( TRACE_RLC_AM_BO False )
set ( TRACE_RLC_AM_FREE_SDU False )
set ( TRACE_RLC_AM_HOLE False )
set ( TRACE_RLC_AM_PDU True )
set ( TRACE_RLC_AM_RESEGMENT False )
set ( TRACE_RLC_AM_RX_DECODE False )
set ( TRACE_RLC_AM_RX False )
set ( TRACE_RLC_AM_STATUS_CREATION False )
set ( TRACE_RLC_AM_TX False )
set ( TRACE_RLC_AM_TX_STATUS False )
set ( TRACE_RLC_PAYLOAD False )
set ( TRACE_RLC_UM_DAR False )
set ( TRACE_RLC_UM_DISPLAY_ASCII_DATA False )
set ( TRACE_RLC_UM_PDU True )
set ( TRACE_RLC_UM_RX False )
set ( TRACE_RLC_UM_SEGMENT False )
set ( TRACE_RLC_UM_TX_STATUS False )
set ( UE_BUILD False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME False )
set ( USER_MODE True )
set ( XER_PRINT True )
set ( XFORMS False )
include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt) include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
set(ADDR_CONF False) set ( ADDR_CONF False )
set(ASSERT True) set ( ASSERT True )
set(DEBUG_OMG False) set ( DEBUG_OMG False )
set(DISABLE_XER_PRINT False) set ( DISABLE_USE_NAS False )
set(DRIVER2013 False) set ( DISABLE_XER_PRINT False )
set(ENABLE_FXP True) set ( DRIVER2013 False )
set(ENABLE_ITTI False) set ( EMOS False )
set(ENABLE_NAS_UE_LOGGING False) set ( ENABLE_FXP True )
set(ENABLE_NEW_MULTICAST True) set ( ENABLE_ITTI False )
set(ENABLE_PDCP_NETLINK_FIFO True) set ( ENABLE_NAS_UE_LOGGING False )
set(ENABLE_PGM_TRANSPORT True) set ( ENABLE_NEW_MULTICAST True )
set(ENABLE_RAL False) set ( ENABLE_PDCP_NETLINK_FIFO False )
set(ENABLE_SECURITY False) set ( ENABLE_PGM_TRANSPORT True )
set(ENABLE_USE_CPU_EXECUTION_TIME True) set ( ENABLE_RAL False )
set(ENABLE_USE_MME False) set ( ENABLE_SECURITY False )
set(ENABLE_VCD_FIFO True) set ( ENABLE_STANDALONE_EPC False )
set(HARD_RT False) set ( ENABLE_USE_CPU_EXECUTION_TIME True )
set(JUMBO_FRAME True) set ( ENABLE_USE_GTPU_IN_KERNEL False )
set(LARGE_SCALE False) set ( ENABLE_USE_MME False )
set(LINK_PDCP_TO_GTPV1U False) set ( ENABLE_USE_NETFILTER_FOR_SGI False )
set(LINUX_LIST False) set ( ENABLE_USE_PCAP_FOR_SGI False )
set(LINUX True) set ( ENABLE_USE_RAW_SOCKET_FOR_SGI False )
set(LOCALIZATION False) set ( ENABLE_VCD_FIFO True )
set(LOG_NO_THREAD True) set ( ENB_MODE True )
set(LOWLATENCY False) set ( EPC_BUILD False )
set(MAC_CONTEXT 1) set ( HARD_RT False )
set(MAX_NUM_CCs 1) set ( JUMBO_FRAME True )
set(MIH_C_MEDIEVAL_EXTENSIONS True) set ( LARGE_SCALE False )
set(MSG_PRINT False) set ( LINK_ENB_PDCP_TO_GTPV1U False )
set(MU_RECEIVER False) set ( LINK_ENB_PDCP_TO_IP_DRIVER False )
set(NAS_ADDRESS_FIX true) set ( LINK_PDCP_TO_GTPV1U False )
set(NAS_NETLINK True) set ( LINUX_LIST False )
set(NAS_UE True) set ( LINUX True )
set(NEW_FFT True) set ( LOCALIZATION False )
set(NO_RRM True) set ( LOG_NO_THREAD True )
set(OAI_EMU True) set ( LOWLATENCY False )
set(OAI_EMU True) set ( MAC_CONTEXT 1 )
set(OAI_NW_DRIVER_TYPE_ETHERNET False) set ( MAX_NUM_CCs 1 )
set(OPENAIR1 False) set ( MIH_C_MEDIEVAL_EXTENSIONS True )
set(OPENAIR2 True) set ( MSG_PRINT False )
set(OPENAIR_EMU True) set ( MU_RECEIVER False )
set(OPENAIR_LTE True) set ( NAS_ADDRESS_FIX False )
set (PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_EPC False )
set(PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_UE False )
set(PBS_SIM False) set ( NAS_MME False )
set(PC_DSP False) set ( NAS_NETLINK False )
set(PC_TARGET False) set ( NAS_UE False )
set(PDCP_MSG_PRINT False) set ( NB_ANTENNAS_RX 2 )
set(PERFECT_CE False) set ( NB_ANTENNAS_TX 2 )
set(PHY_ABSTRACTION True) set ( NB_ANTENNAS_TXRX 2 )
set(PHY_ABSTRACTION True) set ( NEW_FFT True )
set(PHY_EMUL False) set ( NO_RRM True )
set(PHYSIM False) set ( OAI_EMU True )
set(PUCCH True) set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set(RANDOM_BF False) set ( OAI_NW_DRIVER_USE_NETLINK False )
set(RF_BOARD "NoBoard") set ( OAISIM True )
set(RLC_STOP_ON_LOST_PDU False) set ( OPENAIR1 False )
set(RRC_ASN1_VERSION False) set ( OPENAIR2 True )
set(RRC_ASN1_VERSION "Rel8") set ( OPENAIR_EMU False )
set(RRC_MSG_PRINT False) set ( OPENAIR_LTE True )
set(RTAI False) set ( PBS_SIM False )
set(SECU False) set ( PC_DSP False )
set(SMBV False) set ( PC_TARGET False )
set(SPECTRA False) set ( PDCP_MSG_PRINT False )
set(TEST_OMG False) set ( PDCP_USE_NETLINK_QUEUES False )
set(UE_BUILD False) set ( PDCP_USE_NETLINK True )
set(USE_3GPP_ADDR_AS_LINK_ADDR False) set ( PERFECT_CE False )
set(USE_MME False) set ( PHY_ABSTRACTION True )
set(USER_MODE True) set ( PHY_CONTEXT 1 )
set(XER_PRINT True) set ( PHY_EMUL False )
set(XFORMS False) set ( PHYSIM False )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD False )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_ASN1_VERSION Rel8 )
set ( RRC_DEFAULT_RAB_IS_AM False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( S1AP_LIMIT_STREAM_ID_TO_1 False )
set ( S1AP_VERSION R10 )
set ( SMBV False )
set ( SPECTRA False )
set ( STOP_ON_IP_TRAFFIC_OVERLOAD False )
set ( TEST_OMG False )
set ( TRACE_RLC_AM_BO False )
set ( TRACE_RLC_AM_FREE_SDU False )
set ( TRACE_RLC_AM_HOLE False )
set ( TRACE_RLC_AM_PDU True )
set ( TRACE_RLC_AM_RESEGMENT False )
set ( TRACE_RLC_AM_RX_DECODE False )
set ( TRACE_RLC_AM_RX False )
set ( TRACE_RLC_AM_STATUS_CREATION False )
set ( TRACE_RLC_AM_TX False )
set ( TRACE_RLC_AM_TX_STATUS False )
set ( TRACE_RLC_PAYLOAD False )
set ( TRACE_RLC_UM_DAR False )
set ( TRACE_RLC_UM_DISPLAY_ASCII_DATA False )
set ( TRACE_RLC_UM_PDU True )
set ( TRACE_RLC_UM_RX False )
set ( TRACE_RLC_UM_SEGMENT False )
set ( TRACE_RLC_UM_TX_STATUS False )
set ( UE_BUILD False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME False )
set ( USER_MODE True )
set ( XER_PRINT True )
set ( XFORMS False )
include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt) include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
set(ADDR_CONF False) set ( ADDR_CONF False )
set(ASSERT False) set ( ASSERT True )
set(DEBUG_OMG False) set ( DEBUG_OMG False )
set(DISABLE_XER_PRINT False) set ( DISABLE_USE_NAS False )
set(DRIVER2013 True) set ( DISABLE_XER_PRINT False )
set(ENABLE_FXP True) set ( DRIVER2013 True )
set(ENABLE_ITTI False) set ( EMOS False )
set(ENABLE_NAS_UE_LOGGING False) set ( ENABLE_FXP True )
set(ENABLE_NEW_MULTICAST False) set ( ENABLE_ITTI False )
set(ENABLE_PDCP_NETLINK_FIFO False) set ( ENABLE_NAS_UE_LOGGING False )
set(ENABLE_PGM_TRANSPORT False) set ( ENABLE_NEW_MULTICAST False )
set(ENABLE_RAL False) set ( ENABLE_PDCP_NETLINK_FIFO False )
set(ENABLE_SECURITY False) set ( ENABLE_PGM_TRANSPORT False )
set(ENABLE_USE_CPU_EXECUTION_TIME True) set ( ENABLE_RAL False )
set(ENABLE_USE_MME False) set ( ENABLE_SECURITY False )
set(ENABLE_VCD_FIFO True) set ( ENABLE_STANDALONE_EPC False )
set(HARD_RT False) set ( ENABLE_USE_CPU_EXECUTION_TIME True )
set(JUMBO_FRAME True) set ( ENABLE_USE_GTPU_IN_KERNEL False )
set(LARGE_SCALE False) set ( ENABLE_USE_MME False )
set(LINK_PDCP_TO_GTPV1U False) set ( ENABLE_USE_NETFILTER_FOR_SGI False )
set(LINUX_LIST False) set ( ENABLE_USE_PCAP_FOR_SGI False )
set(LINUX True) set ( ENABLE_USE_RAW_SOCKET_FOR_SGI False )
set(LOCALIZATION False) set ( ENABLE_VCD_FIFO True )
set(LOG_NO_THREAD True) set ( ENB_MODE True )
set(LOWLATENCY True) set ( EPC_BUILD False )
set(MAC_CONTEXT 1) set ( HARD_RT False )
set(MAX_NUM_CCs 1) set ( JUMBO_FRAME True )
set(MIH_C_MEDIEVAL_EXTENSIONS False) set ( LARGE_SCALE False )
set(MSG_PRINT False) set ( LINK_ENB_PDCP_TO_GTPV1U False )
set(MU_RECEIVER False) set ( LINK_ENB_PDCP_TO_IP_DRIVER False )
set(NAS_ADDRESS_FIX False) set ( LINK_PDCP_TO_GTPV1U False )
set(NAS_NETLINK False) set ( LINUX False )
set(NAS_UE False) set ( LINUX_LIST False )
set(NEW_FFT True) set ( LOCALIZATION False )
set(NO_RRM True) set ( LOG_NO_THREAD True )
set(OAI_EMU False) set ( LOWLATENCY False )
set(OAI_NW_DRIVER_TYPE_ETHERNET False) set ( MAC_CONTEXT 1 )
set(OPENAIR1 True) set ( MAX_NUM_CCs 1 )
set(OPENAIR2 True) set ( MIH_C_MEDIEVAL_EXTENSIONS True )
set(OPENAIR_EMU False) set ( MSG_PRINT False )
set(OPENAIR_LTE True) set ( MU_RECEIVER False )
set(PACKAGE_NAME "oaisim") set ( NAS_ADDRESS_FIX False )
set(PBS_SIM False) set ( NAS_BUILT_IN_EPC False )
set(PC_DSP True) set ( NAS_BUILT_IN_UE False )
set(PC_TARGET True) set ( NAS_MME False )
set(PDCP_MSG_PRINT False) set ( NAS_NETLINK False )
set(PERFECT_CE False) set ( NAS_UE False )
set(PHY_ABSTRACTION False) set ( NB_ANTENNAS_RX 2 )
set(PHY_CONTEXT False) set ( NB_ANTENNAS_TX 2 )
set(PHY_EMUL False) set ( NB_ANTENNAS_TXRX 2 )
set(PHYSIM True) set ( NEW_FFT True )
set(PUCCH True) set ( NO_RRM True )
set(RANDOM_BF False) set ( OAI_EMU False )
set(RF_BOARD "EXMIMO") set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set(RLC_STOP_ON_LOST_PDU False) set ( OAI_NW_DRIVER_USE_NETLINK False )
set(RRC_ASN1_VERSION Rel8) set ( OAISIM False )
set(RRC_MSG_PRINT False) set ( OPENAIR1 True )
set(RTAI False) set ( OPENAIR2 True )
set(SECU False) set ( OPENAIR_EMU False )
set(SMBV False) set ( OPENAIR_LTE True )
set(SPECTRA False) set ( PBS_SIM False )
set(TEST_OMG False) set ( PC_DSP True )
set(UE_BUILD False) set ( PC_TARGET True )
set(USE_3GPP_ADDR_AS_LINK_ADDR False) set ( PDCP_MSG_PRINT False )
set(USE_MME False) set ( PDCP_USE_NETLINK False )
set(USER_MODE True) set ( PDCP_USE_NETLINK_QUEUES False )
set(XER_PRINT True) set ( PERFECT_CE False )
set(XFORMS False) set ( PHY_ABSTRACTION False )
set ( PHY_CONTEXT 1 )
set ( PHY_EMUL False )
set ( PHYSIM True )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD EXMIMO )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_ASN1_VERSION Rel8 )
set ( RRC_DEFAULT_RAB_IS_AM False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( S1AP_LIMIT_STREAM_ID_TO_1 False )
set ( S1AP_VERSION R10 )
set ( SMBV False )
set ( SPECTRA False )
set ( STOP_ON_IP_TRAFFIC_OVERLOAD False )
set ( TEST_OMG False )
set ( TRACE_RLC_AM_BO False )
set ( TRACE_RLC_AM_FREE_SDU False )
set ( TRACE_RLC_AM_HOLE False )
set ( TRACE_RLC_AM_PDU False )
set ( TRACE_RLC_AM_RESEGMENT False )
set ( TRACE_RLC_AM_RX_DECODE False )
set ( TRACE_RLC_AM_RX False )
set ( TRACE_RLC_AM_STATUS_CREATION False )
set ( TRACE_RLC_AM_TX False )
set ( TRACE_RLC_AM_TX_STATUS False )
set ( TRACE_RLC_PAYLOAD False )
set ( TRACE_RLC_UM_DAR False )
set ( TRACE_RLC_UM_DISPLAY_ASCII_DATA False )
set ( TRACE_RLC_UM_PDU False )
set ( TRACE_RLC_UM_RX False )
set ( TRACE_RLC_UM_SEGMENT False )
set ( TRACE_RLC_UM_TX_STATUS False )
set ( UE_BUILD False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME False )
set ( USER_MODE True )
set ( XER_PRINT False )
set ( XFORMS False )
include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt) include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
...@@ -57,7 +57,7 @@ set(PUCCH True) ...@@ -57,7 +57,7 @@ set(PUCCH True)
set(RANDOM_BF False) set(RANDOM_BF False)
set(RF_BOARD "NoBoard") set(RF_BOARD "NoBoard")
set(RLC_STOP_ON_LOST_PDU False) set(RLC_STOP_ON_LOST_PDU False)
set(RRC_ASN1_VERSION False) set(RRC_ASN1_VERSION Rel8)
set(RRC_ASN1_VERSION "Rel8") set(RRC_ASN1_VERSION "Rel8")
set(RRC_MSG_PRINT False) set(RRC_MSG_PRINT False)
set(RTAI False) set(RTAI False)
......
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
set(ADDR_CONF False) set ( ADDR_CONF False )
set(ASSERT True) set ( ASSERT True )
set(DEBUG_OMG False) set ( DEBUG_OMG False )
set(DISABLE_XER_PRINT False) set ( DISABLE_USE_NAS False )
set(DRIVER2013 False) set ( DISABLE_XER_PRINT False )
set(ENABLE_FXP True) set ( DRIVER2013 False )
set(ENABLE_ITTI False) set ( EMOS False )
set(ENABLE_NAS_UE_LOGGING False) set ( ENABLE_FXP True )
set(ENABLE_NEW_MULTICAST True) set ( ENABLE_ITTI False )
set(ENABLE_PDCP_NETLINK_FIFO False) set ( ENABLE_NAS_UE_LOGGING False )
set(ENABLE_PGM_TRANSPORT True) set ( ENABLE_NEW_MULTICAST True )
set(ENABLE_RAL False) set ( ENABLE_PDCP_NETLINK_FIFO False )
set(ENABLE_SECURITY False) set ( ENABLE_PGM_TRANSPORT True )
set(ENABLE_USE_CPU_EXECUTION_TIME True) set ( ENABLE_RAL False )
set(ENABLE_USE_MME False) set ( ENABLE_SECURITY False )
set(ENABLE_VCD_FIFO True) set ( ENABLE_STANDALONE_EPC False )
set(HARD_RT False) set ( ENABLE_USE_CPU_EXECUTION_TIME True )
set(JUMBO_FRAME True) set ( ENABLE_USE_GTPU_IN_KERNEL False )
set(LARGE_SCALE False) set ( ENABLE_USE_MME False )
set(LINK_PDCP_TO_GTPV1U False) set ( ENABLE_USE_NETFILTER_FOR_SGI False )
set(LINUX_LIST False) set ( ENABLE_USE_PCAP_FOR_SGI False )
set(LINUX True) set ( ENABLE_USE_RAW_SOCKET_FOR_SGI False )
set(LOCALIZATION False) set ( ENABLE_VCD_FIFO True )
set(LOG_NO_THREAD True) set ( ENB_MODE True )
set(LOWLATENCY False) set ( EPC_BUILD False )
set(MAC_CONTEXT 1) set ( HARD_RT False )
set(MAX_NUM_CCs 1) set ( JUMBO_FRAME True )
set(MIH_C_MEDIEVAL_EXTENSIONS True) set ( LARGE_SCALE False )
set(MSG_PRINT False) set ( LINK_ENB_PDCP_TO_GTPV1U False )
set(MU_RECEIVER False) set ( LINK_ENB_PDCP_TO_IP_DRIVER False )
set(NAS_ADDRESS_FIX true) set ( LINK_PDCP_TO_GTPV1U False )
set(NAS_NETLINK True) set ( LINUX_LIST False )
set(NAS_UE True) set ( LINUX True )
set(NEW_FFT True) set ( LOCALIZATION False )
set(NO_RRM True) set ( LOG_NO_THREAD True )
set(OAI_EMU True) set ( LOWLATENCY False )
set(OAI_EMU True) set ( MAC_CONTEXT 1 )
set(OAI_NW_DRIVER_TYPE_ETHERNET False) set ( MAX_NUM_CCs 1 )
set(OPENAIR1 False) set ( MIH_C_MEDIEVAL_EXTENSIONS True )
set(OPENAIR2 True) set ( MSG_PRINT False )
set(OPENAIR_EMU True) set ( MU_RECEIVER False )
set(OPENAIR_LTE True) set ( NAS_ADDRESS_FIX False )
set (PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_EPC False )
set(PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_UE False )
set(PBS_SIM False) set ( NAS_MME False )
set(PC_DSP False) set ( NAS_NETLINK False )
set(PC_TARGET False) set ( NAS_UE False )
set(PDCP_MSG_PRINT False) set ( NB_ANTENNAS_RX 2 )
set(PERFECT_CE False) set ( NB_ANTENNAS_TX 2 )
set(PHY_ABSTRACTION True) set ( NB_ANTENNAS_TXRX 2 )
set(PHY_ABSTRACTION True) set ( NEW_FFT True )
set(PHY_EMUL False) set ( NO_RRM True )
set(PHYSIM False) set ( OAI_EMU True )
set(PUCCH True) set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set(RANDOM_BF False) set ( OAI_NW_DRIVER_USE_NETLINK False )
set(RF_BOARD "NoBoard") set ( OAISIM True )
set(RLC_STOP_ON_LOST_PDU True) set ( OPENAIR1 False )
set(RRC_ASN1_VERSION False) set ( OPENAIR2 True )
set(RRC_ASN1_VERSION "Rel10") set ( OPENAIR_EMU False )
set(RRC_MSG_PRINT False) set ( OPENAIR_LTE True )
set(RTAI False) set ( PBS_SIM False )
set(SECU False) set ( PC_DSP False )
set(SMBV False) set ( PC_TARGET False )
set(SPECTRA False) set ( PDCP_MSG_PRINT False )
set(TEST_OMG False) set ( PDCP_USE_NETLINK False )
set(UE_BUILD False) set ( PDCP_USE_NETLINK_QUEUES False )
set(USE_3GPP_ADDR_AS_LINK_ADDR False) set ( PERFECT_CE False )
set(USE_MME False) set ( PHY_ABSTRACTION True )
set(USER_MODE True) set ( PHY_CONTEXT 1 )
set(XER_PRINT True) set ( PHY_EMUL False )
set(XFORMS False) set ( PHYSIM False )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD False )
set ( RLC_STOP_ON_LOST_PDU True )
set ( RRC_ASN1_VERSION Rel10 )
set ( RRC_DEFAULT_RAB_IS_AM False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( S1AP_LIMIT_STREAM_ID_TO_1 False )
set ( S1AP_VERSION R10 )
set ( SMBV False )
set ( SPECTRA False )
set ( STOP_ON_IP_TRAFFIC_OVERLOAD False )
set ( TEST_OMG False )
set ( TRACE_RLC_AM_BO False )
set ( TRACE_RLC_AM_FREE_SDU False )
set ( TRACE_RLC_AM_HOLE False )
set ( TRACE_RLC_AM_PDU True )
set ( TRACE_RLC_AM_RESEGMENT False )
set ( TRACE_RLC_AM_RX_DECODE False )
set ( TRACE_RLC_AM_RX False )
set ( TRACE_RLC_AM_STATUS_CREATION False )
set ( TRACE_RLC_AM_TX False )
set ( TRACE_RLC_AM_TX_STATUS False )
set ( TRACE_RLC_PAYLOAD False )
set ( TRACE_RLC_UM_DAR False )
set ( TRACE_RLC_UM_DISPLAY_ASCII_DATA False )
set ( TRACE_RLC_UM_PDU True )
set ( TRACE_RLC_UM_RX False )
set ( TRACE_RLC_UM_SEGMENT False )
set ( TRACE_RLC_UM_TX_STATUS False )
set ( UE_BUILD False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME False )
set ( USER_MODE True )
set ( XER_PRINT True )
set ( XFORMS False )
include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt) include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
...@@ -57,7 +57,7 @@ set(PUCCH True) ...@@ -57,7 +57,7 @@ set(PUCCH True)
set(RANDOM_BF False) set(RANDOM_BF False)
set(RF_BOARD "NoBoard") set(RF_BOARD "NoBoard")
set(RLC_STOP_ON_LOST_PDU True) set(RLC_STOP_ON_LOST_PDU True)
set(RRC_ASN1_VERSION False) set(RRC_ASN1_VERSION Rel10)
set(RRC_ASN1_VERSION "Rel10") set(RRC_ASN1_VERSION "Rel10")
set(RRC_MSG_PRINT False) set(RRC_MSG_PRINT False)
set(RTAI False) set(RTAI False)
......
...@@ -57,7 +57,7 @@ set(PUCCH True) ...@@ -57,7 +57,7 @@ set(PUCCH True)
set(RANDOM_BF False) set(RANDOM_BF False)
set(RF_BOARD "NoBoard") set(RF_BOARD "NoBoard")
set(RLC_STOP_ON_LOST_PDU True) set(RLC_STOP_ON_LOST_PDU True)
set(RRC_ASN1_VERSION False) set(RRC_ASN1_VERSION Rel8)
set(RRC_ASN1_VERSION "Rel8") set(RRC_ASN1_VERSION "Rel8")
set(RRC_MSG_PRINT False) set(RRC_MSG_PRINT False)
set(RTAI False) set(RTAI False)
......
cmake_minimum_required(VERSION 2.8) cmake_minimum_required(VERSION 2.8)
set(ADDR_CONF False) set ( ADDR_CONF False )
set(ASSERT True) set ( ASSERT True )
set(DEBUG_OMG False) set ( DEBUG_OMG False )
set(DISABLE_XER_PRINT False) set ( DISABLE_USE_NAS False )
set(DRIVER2013 False) set ( DISABLE_XER_PRINT False )
set(ENABLE_FXP True) set ( DRIVER2013 False )
set(ENABLE_ITTI True) set ( EMOS False )
set(ENABLE_NAS_UE_LOGGING False) set ( ENABLE_FXP True )
set(ENABLE_NEW_MULTICAST True) set ( ENABLE_ITTI True )
set(ENABLE_PDCP_NETLINK_FIFO True) set ( ENABLE_NAS_UE_LOGGING False )
set(ENABLE_PGM_TRANSPORT True) set ( ENABLE_NEW_MULTICAST True )
set(ENABLE_RAL True) set ( ENABLE_PDCP_NETLINK_FIFO False )
set(ENABLE_SECURITY False) set ( ENABLE_PGM_TRANSPORT True )
set(ENABLE_USE_CPU_EXECUTION_TIME True) set ( ENABLE_RAL True )
set(ENABLE_USE_MME False) set ( ENABLE_SECURITY False )
set(ENABLE_VCD_FIFO True) set ( ENABLE_STANDALONE_EPC False )
set(HARD_RT False) set ( ENABLE_USE_CPU_EXECUTION_TIME True )
set(JUMBO_FRAME True) set ( ENABLE_USE_GTPU_IN_KERNEL False )
set(LARGE_SCALE False) set ( ENABLE_USE_MME False )
set(LINK_PDCP_TO_GTPV1U False) set ( ENABLE_USE_NETFILTER_FOR_SGI False )
set(LINUX_LIST False) set ( ENABLE_USE_PCAP_FOR_SGI False )
set(LINUX True) set ( ENABLE_USE_RAW_SOCKET_FOR_SGI False )
set(LOCALIZATION False) set ( ENABLE_VCD_FIFO True )
set(LOG_NO_THREAD True) set ( ENB_MODE True )
set(LOWLATENCY False) set ( EPC_BUILD False )
set(MAC_CONTEXT 1) set ( HARD_RT False )
set(MAX_NUM_CCs 1) set ( JUMBO_FRAME True )
set(MIH_C_MEDIEVAL_EXTENSIONS True) set ( LARGE_SCALE False )
set(MSG_PRINT False) set ( LINK_ENB_PDCP_TO_GTPV1U False )
set(MU_RECEIVER False) set ( LINK_ENB_PDCP_TO_IP_DRIVER False )
set(NAS_ADDRESS_FIX true) set ( LINK_PDCP_TO_GTPV1U False )
set(NAS_NETLINK True) set ( LINUX_LIST False )
set(NAS_UE True) set ( LINUX True )
set(NEW_FFT True) set ( LOCALIZATION False )
set(NO_RRM True) set ( LOG_NO_THREAD True )
set(OAI_EMU True) set ( LOWLATENCY False )
set(OAI_EMU True) set ( MAC_CONTEXT 1 )
set(OAI_NW_DRIVER_TYPE_ETHERNET True) set ( MAX_NUM_CCs 1 )
set(OPENAIR1 False) set ( MIH_C_MEDIEVAL_EXTENSIONS True )
set(OPENAIR2 True) set ( MSG_PRINT False )
set(OPENAIR_EMU True) set ( MU_RECEIVER False )
set(OPENAIR_LTE True) set ( NAS_ADDRESS_FIX False )
set (PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_EPC False )
set(PACKAGE_NAME "oaisim") set ( NAS_BUILT_IN_UE False )
set(PBS_SIM False) set ( NAS_MME False )
set(PC_DSP False) set ( NAS_NETLINK False )
set(PC_TARGET False) set ( NAS_UE False )
set(PDCP_MSG_PRINT False) set ( NB_ANTENNAS_RX 2 )
set(PERFECT_CE False) set ( NB_ANTENNAS_TX 2 )
set(PHY_ABSTRACTION True) set ( NB_ANTENNAS_TXRX 2 )
set(PHY_ABSTRACTION True) set ( NEW_FFT True )
set(PHY_EMUL False) set ( NO_RRM True )
set(PHYSIM False) set ( OAI_EMU True )
set(PUCCH True) set ( OAI_NW_DRIVER_TYPE_ETHERNET True )
set(RANDOM_BF False) set ( OAI_NW_DRIVER_USE_NETLINK False )
set(RF_BOARD "NoBoard") set ( OAISIM True )
set(RLC_STOP_ON_LOST_PDU True) set ( OPENAIR1 False )
set(RRC_ASN1_VERSION False) set ( OPENAIR2 True )
set(RRC_ASN1_VERSION "Rel10") set ( OPENAIR_EMU False )
set(RRC_MSG_PRINT False) set ( OPENAIR_LTE True )
set(RTAI False) set ( PBS_SIM False )
set(SECU False) set ( PC_DSP False )
set(SMBV False) set ( PC_TARGET False )
set(SPECTRA False) set ( PDCP_MSG_PRINT False )
set(TEST_OMG False) set ( PDCP_USE_NETLINK_QUEUES False )
set(UE_BUILD False) set ( PDCP_USE_NETLINK True )
set(USE_3GPP_ADDR_AS_LINK_ADDR False) set ( PERFECT_CE False )
set(USE_MME False) set ( PHY_ABSTRACTION True )
set(USER_MODE True) set ( PHY_CONTEXT 1 )
set(XER_PRINT False) set ( PHY_EMUL False )
set(XFORMS False) set ( PHYSIM False )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD False )
set ( RLC_STOP_ON_LOST_PDU True )
set ( RRC_ASN1_VERSION Rel10 )
set ( RRC_DEFAULT_RAB_IS_AM False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( S1AP_LIMIT_STREAM_ID_TO_1 False )
set ( S1AP_VERSION R10 )
set ( SMBV False )
set ( SPECTRA False )
set ( STOP_ON_IP_TRAFFIC_OVERLOAD False )
set ( TEST_OMG False )
set ( TRACE_RLC_AM_BO False )
set ( TRACE_RLC_AM_FREE_SDU False )
set ( TRACE_RLC_AM_HOLE False )
set ( TRACE_RLC_AM_PDU True )
set ( TRACE_RLC_AM_RESEGMENT False )
set ( TRACE_RLC_AM_RX_DECODE False )
set ( TRACE_RLC_AM_RX False )
set ( TRACE_RLC_AM_STATUS_CREATION False )
set ( TRACE_RLC_AM_TX False )
set ( TRACE_RLC_AM_TX_STATUS False )
set ( TRACE_RLC_PAYLOAD False )
set ( TRACE_RLC_UM_DAR False )
set ( TRACE_RLC_UM_DISPLAY_ASCII_DATA False )
set ( TRACE_RLC_UM_PDU True )
set ( TRACE_RLC_UM_RX False )
set ( TRACE_RLC_UM_SEGMENT False )
set ( TRACE_RLC_UM_TX_STATUS False )
set ( UE_BUILD False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME False )
set ( USER_MODE True )
set ( XER_PRINT False )
set ( XFORMS False )
include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt) include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
cmake_minimum_required(VERSION 2.8)
set ( ADDR_CONF False )
set ( ASSERT True )
set ( DEBUG_OMG False )
set ( DISABLE_USE_NAS False )
set ( DISABLE_XER_PRINT False )
set ( DRIVER2013 False )
set ( EMOS False )
set ( ENABLE_FXP True )
set ( ENABLE_ITTI False )
set ( ENABLE_NAS_UE_LOGGING False )
set ( ENABLE_NEW_MULTICAST True )
set ( ENABLE_PDCP_NETLINK_FIFO False )
set ( ENABLE_PGM_TRANSPORT True )
set ( ENABLE_RAL False )
set ( ENABLE_SECURITY False )
set ( ENABLE_STANDALONE_EPC False )
set ( ENABLE_USE_CPU_EXECUTION_TIME True )
set ( ENABLE_USE_GTPU_IN_KERNEL False )
set ( ENABLE_USE_MME False )
set ( ENABLE_USE_NETFILTER_FOR_SGI False )
set ( ENABLE_USE_PCAP_FOR_SGI False )
set ( ENABLE_USE_RAW_SOCKET_FOR_SGI False )
set ( ENABLE_VCD_FIFO True )
set ( ENB_MODE True )
set ( EPC_BUILD False )
set ( HARD_RT False )
set ( JUMBO_FRAME True )
set ( LARGE_SCALE False )
set ( LINK_ENB_PDCP_TO_GTPV1U False )
set ( LINK_ENB_PDCP_TO_IP_DRIVER False )
set ( LINK_PDCP_TO_GTPV1U False )
set ( LINUX_LIST False )
set ( LINUX True )
set ( LOCALIZATION False )
set ( LOG_NO_THREAD True )
set ( LOWLATENCY False )
set ( MAC_CONTEXT 1 )
set ( MAX_NUM_CCs 1 )
set ( MIH_C_MEDIEVAL_EXTENSIONS True )
set ( MSG_PRINT False )
set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX False )
set ( NAS_BUILT_IN_EPC False )
set ( NAS_BUILT_IN_UE False )
set ( NAS_MME False )
set ( NAS_NETLINK False )
set ( NAS_UE False )
set ( NB_ANTENNAS_RX 2 )
set ( NB_ANTENNAS_TX 2 )
set ( NB_ANTENNAS_TXRX 2 )
set ( NEW_FFT True )
set ( NO_RRM True )
set ( OAI_EMU True )
set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set ( OAI_NW_DRIVER_USE_NETLINK False )
set ( OAISIM True )
set ( OPENAIR1 False )
set ( OPENAIR2 True )
set ( OPENAIR_EMU False )
set ( OPENAIR_LTE True )
set ( PBS_SIM False )
set ( PC_DSP False )
set ( PC_TARGET False )
set ( PDCP_MSG_PRINT False )
set ( PDCP_USE_NETLINK_QUEUES False )
set ( PDCP_USE_NETLINK True )
set ( PERFECT_CE False )
set ( PHY_ABSTRACTION True )
set ( PHY_CONTEXT 1 )
set ( PHY_EMUL False )
set ( PHYSIM False )
set ( PUCCH True )
set ( RANDOM_BF False )
set ( RF_BOARD False )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_ASN1_VERSION Rel8 )
set ( RRC_DEFAULT_RAB_IS_AM False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( S1AP_LIMIT_STREAM_ID_TO_1 False )
set ( S1AP_VERSION R10 )
set ( SMBV False )
set ( SPECTRA False )
set ( STOP_ON_IP_TRAFFIC_OVERLOAD False )
set ( TEST_OMG False )
set ( TRACE_RLC_AM_BO False )
set ( TRACE_RLC_AM_FREE_SDU False )
set ( TRACE_RLC_AM_HOLE False )
set ( TRACE_RLC_AM_PDU True )
set ( TRACE_RLC_AM_RESEGMENT False )
set ( TRACE_RLC_AM_RX_DECODE False )
set ( TRACE_RLC_AM_RX False )
set ( TRACE_RLC_AM_STATUS_CREATION False )
set ( TRACE_RLC_AM_TX False )
set ( TRACE_RLC_AM_TX_STATUS False )
set ( TRACE_RLC_PAYLOAD False )
set ( TRACE_RLC_UM_DAR False )
set ( TRACE_RLC_UM_DISPLAY_ASCII_DATA False )
set ( TRACE_RLC_UM_PDU True )
set ( TRACE_RLC_UM_RX False )
set ( TRACE_RLC_UM_SEGMENT False )
set ( TRACE_RLC_UM_TX_STATUS False )
set ( UE_BUILD False )
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME False )
set ( USER_MODE True )
set ( XER_PRINT True )
set ( XFORMS False )
include(${CMAKE_CURRENT_SOURCE_DIR}/../../CMakeLists.txt)
...@@ -37,7 +37,7 @@ ...@@ -37,7 +37,7 @@
################################ ################################
ORIGIN_PATH=$PWD ORIGIN_PATH=$PWD
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0)) THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
source $THIS_SCRIPT_PATH/build_helper.bash source $THIS_SCRIPT_PATH/tools/build_helper.bash
#EMULATION_DEV_INTERFACE="eth0" #EMULATION_DEV_INTERFACE="eth0"
#EMULATION_MULTICAST_GROUP=1 #EMULATION_MULTICAST_GROUP=1
...@@ -60,14 +60,14 @@ do ...@@ -60,14 +60,14 @@ do
clean_kernel clean_kernel
echo_info "Erased iptables config and removed modules from kernel" echo_info "Erased iptables config and removed modules from kernel"
shift;; shift;;
-C | --config-file)
CONFIG_FILE=$2
echo_info "Will install the config file $CONFIG_FILE"
shift 2;;
-I | --install-external-packages) -I | --install-external-packages)
INSTALL_EXTERNAL=1 INSTALL_EXTERNAL=1
echo_info "Will install external packages" echo_info "Will install external packages"
shift;; shift;;
--install-optional-packages)
INSTALL_OPTIONAL=1
echo_info "Will install optional packages"
shift;;
-g | --run-with-gdb) -g | --run-with-gdb)
GDB=1 GDB=1
echo_info "Will Compile with gdb symbols" echo_info "Will Compile with gdb symbols"
...@@ -141,7 +141,7 @@ echo_info "2. Setting the OAI PATHS ..." ...@@ -141,7 +141,7 @@ echo_info "2. Setting the OAI PATHS ..."
set_openair_env set_openair_env
cecho "OPENAIR_HOME = $OPENAIR_HOME" $green cecho "OPENAIR_HOME = $OPENAIR_HOME" $green
dbin=$OPENAIR_HOME/cmake_targets/bin dbin=$OPENAIR_HOME/targets/bin
dlog=$OPENAIR_HOME/cmake_targets/log dlog=$OPENAIR_HOME/cmake_targets/log
mkdir -p $dbin $dlog mkdir -p $dbin $dlog
...@@ -149,13 +149,18 @@ if [ "$INSTALL_EXTERNAL" = "1" ] ; then ...@@ -149,13 +149,18 @@ if [ "$INSTALL_EXTERNAL" = "1" ] ; then
echo_info "Installing packages" echo_info "Installing packages"
check_install_oai_software check_install_oai_software
echo_info "Making X.509 certificates" echo_info "Making X.509 certificates"
make_certs make_certs eur
if [ "$HW" == "USRP" ] ; then if [ "$HW" == "USRP" ] ; then
echo_info "installing packages for USRP support" echo_info "installing packages for USRP support"
check_install_usrp_uhd_driver check_install_usrp_uhd_driver
fi fi
fi fi
if [ "$INSTALL_OPTIONAL" = "1" ] ; then
echo_info "Installing optional packages"
check_install_additional_tools
fi
echo_info "3. building the compilation directives ..." echo_info "3. building the compilation directives ..."
DIR=$OPENAIR_HOME/cmake_targets DIR=$OPENAIR_HOME/cmake_targets
...@@ -164,6 +169,7 @@ DIR=$OPENAIR_HOME/cmake_targets ...@@ -164,6 +169,7 @@ DIR=$OPENAIR_HOME/cmake_targets
#####################################" #####################################"
# For eNB, UE, ... # For eNB, UE, ...
############
mkdir -p $DIR/lte_build_oai/build mkdir -p $DIR/lte_build_oai/build
cmake_file=$DIR/lte_build_oai/CMakeLists.txt cmake_file=$DIR/lte_build_oai/CMakeLists.txt
echo "cmake_minimum_required(VERSION 2.8)" > $cmake_file echo "cmake_minimum_required(VERSION 2.8)" > $cmake_file
...@@ -177,6 +183,7 @@ cd $DIR/lte_build_oai/build ...@@ -177,6 +183,7 @@ cd $DIR/lte_build_oai/build
cmake .. cmake ..
# For EPC # For EPC
############
cmake_file=$DIR/epc_build_oai/CMakeLists.txt cmake_file=$DIR/epc_build_oai/CMakeLists.txt
cp $DIR/epc_build_oai/CMakeLists.template $cmake_file cp $DIR/epc_build_oai/CMakeLists.template $cmake_file
echo "set(ENABLE_VCD_FIFO $VCD_TIMING )" >> $cmake_file echo "set(ENABLE_VCD_FIFO $VCD_TIMING )" >> $cmake_file
...@@ -186,6 +193,7 @@ cd $DIR/epc_build_oai/build ...@@ -186,6 +193,7 @@ cd $DIR/epc_build_oai/build
cmake .. cmake ..
# For oaisim # For oaisim
############
cmake_file=$DIR/oaisim_build_oai/CMakeLists.txt cmake_file=$DIR/oaisim_build_oai/CMakeLists.txt
cp $DIR/oaisim_build_oai/CMakeLists.template $cmake_file cp $DIR/oaisim_build_oai/CMakeLists.template $cmake_file
echo "set(XFORMS $XFORMS )" >> $cmake_file echo "set(XFORMS $XFORMS )" >> $cmake_file
...@@ -196,7 +204,20 @@ mkdir -p $DIR/oaisim_build_oai/build ...@@ -196,7 +204,20 @@ mkdir -p $DIR/oaisim_build_oai/build
cd $DIR/oaisim_build_oai/build cd $DIR/oaisim_build_oai/build
cmake .. cmake ..
# For oaisim_mme
############
cmake_file=$DIR/oaisim_mme_build_oai/CMakeLists.txt
cp $DIR/oaisim_mme_build_oai/CMakeLists.template $cmake_file
echo "set(XFORMS $XFORMS )" >> $cmake_file
echo "set(RRC_ASN1_VERSION \"${REL}\")" >> $cmake_file
echo "set(ENABLE_VCD_FIFO $VCD_TIMING )" >> $cmake_file
echo 'include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)' >> $cmake_file
mkdir -p $DIR/oaisim_build_oai/build
cd $DIR/oaisim_build_oai/build
cmake ..
# For unitary test simulators # For unitary test simulators
###################
cd $OPENAIR_DIR/cmake_targets/lte-simulators cd $OPENAIR_DIR/cmake_targets/lte-simulators
[ "$CLEAN" = "1" ] && rm -rf build [ "$CLEAN" = "1" ] && rm -rf build
mkdir -p build mkdir -p build
...@@ -210,6 +231,10 @@ if [ "$eNB" = "1" -o "UE" = "1" ] ; then ...@@ -210,6 +231,10 @@ if [ "$eNB" = "1" -o "UE" = "1" ] ; then
compilations \ compilations \
lte_build_oai lte-softmodem \ lte_build_oai lte-softmodem \
lte-softmodem lte-softmodem.$REL lte-softmodem lte-softmodem.$REL
# nasmesh driver compilation
compilations \
oaisim_build_oai nasmesh \
CMakeFiles/nasmesh/nasmesh.ko $dbin/nasmesh.ko
fi fi
if [ "$UE" = 1 ] ; then if [ "$UE" = 1 ] ; then
...@@ -219,11 +244,11 @@ if [ "$UE" = 1 ] ; then ...@@ -219,11 +244,11 @@ if [ "$UE" = 1 ] ; then
lte_build_oai ue_ip \ lte_build_oai ue_ip \
CMakeFiles/ue_ip/ue_ip.ko $dbin/ue_ip.ko CMakeFiles/ue_ip/ue_ip.ko $dbin/ue_ip.ko
compilations \ compilations \
lte_build_oai usim_data \ lte_build_oai usim \
usim_data $dbin/usim_data usim $dbin/usim
compilations \ compilations \
lte_build_oai ue_data \ lte_build_oai nvram \
ue_data $dbin/ue_data nvram $dbin/nvram
fi fi
if [ "$SIMUS_PHY" = "1" ] ; then if [ "$SIMUS_PHY" = "1" ] ; then
...@@ -238,10 +263,11 @@ if [ "$SIMUS_PHY" = "1" ] ; then ...@@ -238,10 +263,11 @@ if [ "$SIMUS_PHY" = "1" ] ; then
fi fi
# Core simulators # Core simulators
#############
if [ "$SIMUS_CORE" = "1" ] ; then if [ "$SIMUS_CORE" = "1" ] ; then
# lte unitary simulators compilation # lte unitary simulators compilation
echo_info "Compiling unitary tests simulators" echo_info "Compiling unitary tests simulators"
simlist="secu_knas_encrypt_eia1 secu_kenb aes128_ctr_encrypt aes128_ctr_decrypt secu secu_knas_stream_int secu_knas_encrypt_eea2 secu_knas secu_knas_encrypt_eea1 kdf aes128_cmac_encrypt secu_knas_encrypt_eia2" 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 for f in $simlist ; do
compilations \ compilations \
lte-simulators test_$f \ lte-simulators test_$f \
...@@ -250,6 +276,7 @@ if [ "$SIMUS_CORE" = "1" ] ; then ...@@ -250,6 +276,7 @@ if [ "$SIMUS_CORE" = "1" ] ; then
fi fi
# EXMIMO drivers & firmware loader # EXMIMO drivers & firmware loader
###############
if [ "$HW" = "EXMIMO" ] ; then if [ "$HW" = "EXMIMO" ] ; then
echo_info "Compiling Express MIMO 2 board drivers" echo_info "Compiling Express MIMO 2 board drivers"
compilations \ compilations \
...@@ -266,16 +293,12 @@ if [ "$oaisim" = "1" ] ; then ...@@ -266,16 +293,12 @@ if [ "$oaisim" = "1" ] ; then
oaisim_build_oai oaisim \ oaisim_build_oai oaisim \
oaisim $dbin/oaisim.$REL oaisim $dbin/oaisim.$REL
compilations \ compilations \
oaisim_build_oai oaisim_mme \ oaisim_mme_build_oai oaisim_mme \
oaisim_mme $dbin/oaisim_mme.$REL oaisim_mme $dbin/oaisim_mme.$REL
#oai_nw_drv #oai_nw_drv
compilations \ compilations \
oaisim_build_oai oai_nw_drv \ oaisim_build_oai oai_nw_drv \
CMakeFiles/oai_nw_drv/oai_nw_drv.ko $dbin/oai_nw_drv.ko CMakeFiles/oai_nw_drv/oai_nw_drv.ko $dbin/oai_nw_drv.ko
# nasmesh driver compilation
compilations \
oaisim_build_oai nasmesh \
CMakeFiles/nasmesh/nasmesh.ko $dbin/nasmesh.ko
fi fi
# EPC compilation # EPC compilation
...@@ -284,11 +307,12 @@ if [ "$EPC" = "1" ] ; then ...@@ -284,11 +307,12 @@ if [ "$EPC" = "1" ] ; then
echo_info "Compiling EPC" echo_info "Compiling EPC"
compilations \ compilations \
epc_build_oai oai_epc \ epc_build_oai mme_gw \
oai_epc $dbin/oai_epc.$REL mme_gw $dbin/mme_gw.$REL
compilations \ # Only integrated mme+sgw+pgw is operational today
epc_build_oai oai_sgw \ # compilations \
oai_sgw $dbin/oai_sgw.$REL # epc_build_oai oai_sgw \
# oai_sgw $dbin/oai_sgw.$REL
compilations \ compilations \
epc_build_oai xt_GTPUAH_lib \ epc_build_oai xt_GTPUAH_lib \
libxt_GTPUAH_lib.so $dbin libxt_GTPUAH_lib.so $dbin
...@@ -306,27 +330,29 @@ if [ "$EPC" = "1" ] ; then ...@@ -306,27 +330,29 @@ if [ "$EPC" = "1" ] ; then
fi fi
if [ "$INSTALL_SYSTEM_FILES" = "1" ] ;then if [ "$INSTALL_SYSTEM_FILES" = "1" ] ;then
echo_info "Copying iptables libraries into system directory: /lib/xtables" echo_info "Copying iptables libraries into system directory: /lib/xtables"
$SUDO ln -s $dbin/libxt_GTPURH_lib.so /lib/xtables/libxt_GTPURH.so $SUDO ln -s $dbin/libxt_GTPURH_lib.so /lib/xtables/libxt_GTPURH.so
$SUDO ln -s $dbin/libxt_GTPUAH_lib.so /lib/xtables/libxt_GTPUAH.so $SUDO ln -s $dbin/libxt_GTPUAH_lib.so /lib/xtables/libxt_GTPUAH.so
fi dconf=$OPENAIR_TARGETS/bin
# Install config file
###################
if [ "$CONFIG_FILE" != "" ] ; then
dconf=$DIR/conf
mkdir -p $dconf mkdir -p $dconf
cp $ORIGIN_PATH/$CONFIG_FILE $dconf || echo_fatal "config file $ORIGIN_PATH/$CONFIG_FILE not found" cp $ORIGIN_PATH/$CONFIG_FILE $dconf || echo_fatal "config file $ORIGIN_PATH/$CONFIG_FILE not found"
# generate USIM data # generate USIM data
install_nas_tools $dbin $dconf install_nas_tools $dbin $dconf
# Do EPC
cp $DIR/epc_build_oai/epc.*.conf $dconf
$SUDO cp $DIR/epc_build_oai/epc_s6a.conf /usr/local/etc/freeDiameter
# Do HSS # Do HSS
# bash doesn't like space char around = char # bash doesn't like space char around = char
sed -e 's/ *= */=/' $OPENAIRCN_DIR/OPENAIRHSS/conf/hss.local.conf > $dconf/hss.local.conf cp $DIR/hss_build/hss.conf $dbin
source $dconf/hss.local.conf $SUDO cp $DIR/hss_build/hss_fd.conf $DIR/hss_build/acl.conf /usr/local/etc/freeDiameter
sed -e 's/ *= */=/' $OPENAIRCN_DIR/OPENAIRHSS/conf/hss.conf > $dconf/hss.conf.nospace
source $dconf/hss.conf.nospace
create_hss_database root linux "$MYSQL_user" "$MYSQL_pass" "$MYSQL_db" create_hss_database root linux "$MYSQL_user" "$MYSQL_pass" "$MYSQL_db"
fi fi
...@@ -336,143 +362,7 @@ fi ...@@ -336,143 +362,7 @@ fi
if [ "$OAI_TEST" = "1" ]; then if [ "$OAI_TEST" = "1" ]; then
echo_info "10. Running OAI pre commit tests (pre-ci) ..." echo_info "10. Running OAI pre commit tests (pre-ci) ..."
$OPENAIR_DIR/cmake_targets/autotests/run_compilation_autotests.bash $OPENAIR_DIR/cmake_targets/autotests/run_compilation_autotests.bash
$OPENAIR_DIR/cmake_targets/autotests/run_exec_autotests.bash
else else
echo_info "10. Bypassing the Tests ..." echo_info "10. Bypassing the Tests ..."
fi fi
exit 0
###########################################
# configure and compile
##########################################
HSS_REALM=$(echo $Identity | sed 's/.*\.//')
HSS_HOSTNAME=${Identity%.$HSS_REALM}
NEW_HOSTNAME=`hostname -s`
if [ "x$HSS_HOSTNAME" != "x$NEW_HOSTNAME" ]; then
echo_warning "Changing identity of HSS from <$HSS_HOSTNAME.$HSS_REALM> to <$NEW_HOSTNAME.$HSS_REALM>"
sed -ibak "s/$HSS_HOSTNAME/$NEW_HOSTNAME/" $OPENAIRCN_DIR/OPENAIRHSS/conf/hss_fd.conf
fi
check_hss_s6a_certificate $HSS_REALM
######################################
# fill the HSS DB
######################################
echo_info "6. create HSS database (for EURECOM SIM CARDS)"
hss_db_created=1
create_hss_database $OAI_DB_ADMIN_USER_NAME $OAI_DB_ADMIN_USER_PASSWORD $MYSQL_user $MYSQL_pass $MYSQL_db
if [ $? -eq 1 ]; then
echo_fatal "hss DB not created"
fi
}
############################################
# run
############################################
if [ $RUN -ne 0 ]; then
echo_info "11. Running ..."
cd $OPENAIR_TARGETS/bin
case "$BUILD_LTE" in
'ENB')
if [ $TARGET == "SOFTMODEM" ]; then
if [ $HW == "EXMIMO" ]; then
$SUDO $OPENAIR_TARGETS/RT/USER/init_exmimo2.sh
fi
echo "############# running ltesoftmodem #############"
if [ $RUN_GDB -eq 0 ]; then
$SUDO $OPENAIR_TARGETS/bin/lte-softmodem `echo $EXE_ARGUMENTS`
else
$SUDO setenv MALLOC_CHECK_ 2
$SUDO touch ~/.gdb_lte_softmodem
$SUDO echo "file $OPENAIR_TARGETS/bin/lte-softmodem" > ~/.gdb_lte_softmodem
$SUDO echo "set args $EXE_ARGUMENTS" >> ~/.gdb_lte_softmodem
$SUDO echo "run" >> ~/.gdb_lte_softmodem
$SUDO gdb -nh -x ~/.gdb_lte_softmodem 2>&1
fi
elif [ $TARGET == "OAISIM" ]; then
if [ $ENB_S1 -eq 0 ]; then
install_nasmesh
else
# prepare NAS for UE
if [ ! -f .ue.nvram ]; then
echo_success "generate .ue_emm.nvram .ue.nvram"
$OPENAIRCN_DIR/NAS/EURECOM-NAS/bin/ue_data --gen
fi
if [ ! -f .usim.nvram ]; then
echo_success "generate .usim.nvram"
$OPENAIRCN_DIR/NAS/EURECOM-NAS/bin/usim_data --gen
fi
$OPENAIRCN_DIR/NAS/EURECOM-NAS/bin/ue_data --print
$OPENAIRCN_DIR/NAS/EURECOM-NAS/bin/usim_data --print
insmod $OPENAIR2_DIR/NETWORK_DRIVER/UE_IP/ue_ip.ko
fi
if [ $RUN_GDB -eq 0 ]; then
$SUDO exec $OPENAIR_TARGETS/bin/oaisim `echo $EXE_ARGUMENTS`
else
$SUDO setenv MALLOC_CHECK_ 2
$SUDO touch ~/.gdb_oaisim
$SUDO echo "file $OPENAIR_TARGETS/bin/lte-oaisim" > ~/.gdb_oaisim
$SUDO echo "set args $EXE_ARGUMENTS" >> ~/.gdb_oaisim
$SUDO echo "run" >> ~/.gdb_oaisim
$SUDO gdb -nh -x ~/.gdb_oaisim 2>&1
fi
fi
;;
'EPC')
echo "############# running EPC #############"
test_is_host_reachable $HSS_HOSTNAME.$REALM HSS
if [ $RUN_GDB -eq 0 ]; then
$SUDO $OPENAIR_TARGETS/bin/oai_epc `echo $EXE_ARGUMENTS`
else
touch ~/.gdb_epc
chmod 777 ~/.gdb_epc
echo "file $OPENAIR_TARGETS/bin/oai_epc" > ~/.gdb_epc
echo "set args $EXE_ARGUMENTS" >> ~/.gdb_epc
echo "run" >> ~/.gdb_epc
$SUDO gdb -nh -x ~/.gdb_epc 2>&1
fi
;;
'HSS')
echo "############# running HSS #############"
cd $OPENAIRCN_DIR/OPENAIRHSS/objs
if [ $RUN_GDB -eq 0 ]; then
$SUDO exec ./openair-hss -c ./conf/hss.conf
else
touch ~/.gdb_hss
chmod 777 ~/.gdb_hss
echo "file ./openair-hss" > ~/.gdb_hss
echo "set args -c ./conf/hss.conf" >> ~/.gdb_hss
echo "run" >> ~/.gdb_hss
$SUDO gdb -nh -x ~/.gdb_hss 2>&1
fi
;;
'NONE')
;;
*)
echo_error "Unknown option $BUILD_LTE: do not execute"
;;
esac
else
echo_info "11. No run requested, end of script"
exit 0
fi
...@@ -38,6 +38,7 @@ set ( MIH_C_MEDIEVAL_EXTENSIONS False ) ...@@ -38,6 +38,7 @@ set ( MIH_C_MEDIEVAL_EXTENSIONS False )
set ( MSG_PRINT False ) set ( MSG_PRINT False )
set ( MU_RECEIVER False ) set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX False ) set ( NAS_ADDRESS_FIX False )
set ( NAS_BUILT_IN_EPC True )
set ( NAS_MME True ) set ( NAS_MME True )
set ( NAS_NETLINK False ) set ( NAS_NETLINK False )
set ( NAS_UE False ) set ( NAS_UE False )
......
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
# Author: Lionel GAUTHIER
###############################################################################
cmake_minimum_required(VERSION 2.8)
set(CMAKE_VERBOSE_MAKEFILE ON)
project(HSS)
ENABLE_LANGUAGE(C)
#Sends the -std=c99 flag to the gcc compiler
#add_definitions(-std=c99)
ADD_DEFINITIONS(-D_GNU_SOURCE)
set(OPENAIR_DIR $ENV{OPENAIR_DIR})
set(OPENAIR1_DIR ${OPENAIR_DIR}/openair1)
set(OPENAIR2_DIR ${OPENAIR_DIR}/openair2)
set(OPENAIR3_DIR ${OPENAIR_DIR}/openair3)
set(OPENAIRCN_DIR ${OPENAIR_DIR}/openair-cn)
set(OPENAIR_TARGETS ${OPENAIR_DIR}/targets)
set(OPENAIR_CMAKE_SCRIPTS ${OPENAIR_DIR}/cmake_targets/tools)
set(OPENAIRHSS_DIR ${OPENAIRCN_DIR}/OPENAIRHSS)
set(OPENAIR_BIN_DIR ${OPENAIR_TARGETS}/bin)
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${OPENAIR_TARGETS}/CMAKE/MODULES/")
include(cmake_useful)
macro(add_option name val helpstr)
if(DEFINED ${name})
set(value ${${name}})
else(DEFINED ${name})
set(value ${val})
endif()
set(${name} ${value} CACHE STRING "${helpstr}")
add_definitions("-D${name}=${value}")
endmacro(add_option)
# compilation flags
# added CMAKER conditional compilation to not bother legacy building system
#############################################
if(NOT CMAKE_BUILD_TYPE)
set(CMAKE_BUILD_TYPE "RelWithDebInfo" CACHE STRING "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel." FORCE)
endif()
set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS Debug Release RelWithDebInfo MinSizeRel)
#
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -msse4.2 -std=gnu99 -Wall -Wstrict-prototypes -fno-strict-aliasing -rdynamic -funroll-loops -Wno-packed-bitfield-compat -DCMAKER")
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -ggdb -DMALLOC_CHECK_=3")
set(CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_C_FLAGS_RELWITHDEBINFO} -ggdb -DMALLOC_CHECK_=3 -O2")
INCLUDE(FindMySQL)
IF( NOT MySQL_FOUND )
MESSAGE( SEND_ERROR "MySQL Client is required" )
ENDIF( NOT MySQL_FOUND )
INCLUDE(FindNettle)
IF( NOT NETTLE_FOUND )
MESSAGE( SEND_ERROR "Nettle is required" )
ENDIF( NOT NETTLE_FOUND )
INCLUDE(FindFreeDiameter)
IF( NOT FREEDIAMETER_FOUND )
MESSAGE( SEND_ERROR "FreeDiameter is required (use OAI installer)" )
ENDIF( NOT FREEDIAMETER_FOUND )
IF( NOT FREEDIAMETER_HSS_S6A_ENABLED )
MESSAGE( SEND_ERROR "FreeDiameter is not enabled for OPENAIRHSS" )
ENDIF( NOT FREEDIAMETER_HSS_S6A_ENABLED )
add_definitions("-DFREEDIAMETER_VERSION=${FREEDIAMETER_VERSION}")
find_package(BISON REQUIRED)
find_package(FLEX REQUIRED)
set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
find_package(Threads REQUIRED)
#find_package(Subversion)
#if(SUBVERSION_FOUND)
# Subversion_WC_INFO(${OPENAIR_DIR} openair)
# set (PACKAGE_VERSION "${openair_WC_REVISION} - ${openair_WC_LAST_CHANGED_DATE}")
# Subversion_WC_LOG(${OPENAIR_DIR} openair)
# message("Last changed log is ${openair_LAST_CHANGED_LOG}")
# add_definitions("-DPACKAGE_VERSION=\"${PACKAGE_VERSION}\"")
#else()
set (PACKAGE_VERSION "No svn information")
#endif()
add_definitions("-DPACKAGE_NAME=\"OPENAIRHSS\"")
################################################################################
# ACCESS RESTRICTION LIB
################################################################################
set(ar_SRC
${OPENAIRHSS_DIR}/access_restriction/access_restriction.c
)
set(ar_HDR
${OPENAIRHSS_DIR}/access_restriction/access_restriction.h
${OPENAIRHSS_DIR}/utils/conversion.h
)
add_library(hss_access_restriction ${ar_SRC} ${ar_HDR})
target_include_directories(hss_access_restriction PRIVATE ${OPENAIRHSS_DIR}/utils)
################################################################################
# AUC LIB
################################################################################
set(auc_SRC
${OPENAIRHSS_DIR}/auc/fx.c
${OPENAIRHSS_DIR}/auc/kdf.c
${OPENAIRHSS_DIR}/auc/random.c
${OPENAIRHSS_DIR}/auc/rijndael.c
${OPENAIRHSS_DIR}/auc/sequence_number.c
)
set(auc_HDR
${OPENAIRHSS_DIR}/auc/auc.h
)
add_library(hss_auc ${auc_SRC} ${auc_HDR})
################################################################################
# DB LIB
################################################################################
set(db_SRC
${OPENAIRHSS_DIR}/db/db_connector.c
${OPENAIRHSS_DIR}/db/db_epc_equipment.c
${OPENAIRHSS_DIR}/db/db_subscription_data.c
)
set(db_HDR
${OPENAIRHSS_DIR}/db/db_proto.h
${OPENAIRHSS_DIR}/utils/hss_config.h
)
add_library(hss_db ${db_SRC} ${db_HDR})
target_include_directories(hss_db PRIVATE ${OPENAIRHSS_DIR}/utils)
################################################################################
# S6A LIB
################################################################################
set(s6a_SRC
${OPENAIRHSS_DIR}/s6a/s6a_auth_info.c
${OPENAIRHSS_DIR}/s6a/s6a_common.c
${OPENAIRHSS_DIR}/s6a/s6a_error.c
${OPENAIRHSS_DIR}/s6a/s6a_fd.c
${OPENAIRHSS_DIR}/s6a/s6a_in_addr.c
${OPENAIRHSS_DIR}/s6a/s6a_peers.c
${OPENAIRHSS_DIR}/s6a/s6a_purge_ue.c
${OPENAIRHSS_DIR}/s6a/s6a_subscription_data.c
${OPENAIRHSS_DIR}/s6a/s6a_supported_features.c
${OPENAIRHSS_DIR}/s6a/s6a_up_loc.c
)
set(s6a_HDR
${OPENAIRHSS_DIR}/s6a/s6a_proto.h
${OPENAIRHSS_DIR}/db/db_proto.h
${OPENAIRHSS_DIR}/utils/hss_config.h
${OPENAIRHSS_DIR}/auc/auc.h
${OPENAIRHSS_DIR}/access_restriction/access_restriction.h
)
add_library(hss_s6a ${s6a_SRC} ${s6a_HDR})
target_include_directories(hss_s6a PRIVATE ${OPENAIRHSS_DIR}/utils)
target_include_directories(hss_s6a PRIVATE ${OPENAIRHSS_DIR}/db)
target_include_directories(hss_s6a PRIVATE ${OPENAIRHSS_DIR}/auc)
target_include_directories(hss_s6a PRIVATE ${OPENAIRHSS_DIR}/access_restriction)
target_include_directories(hss_s6a PRIVATE ${FREEDIAMETER_INCLUDE_DIR})
################################################################################
# UTILS LIB
################################################################################
# Create target for the parser
ADD_CUSTOM_TARGET(HSSParser echo "Creating hss_parser.c")
set(UTILS_GENERATED_DIR ${OPENAIR_BIN_DIR})
# Create custom command for flex/lex (note the outputs)
ADD_CUSTOM_COMMAND(
SOURCE ${OPENAIRHSS_DIR}/utils/hss_scanner.l
COMMAND ${FLEX_EXECUTABLE}
ARGS -o${UTILS_GENERATED_DIR}/hss_scanner.c ${OPENAIRHSS_DIR}/utils/hss_scanner.l
TARGET HSSParser
OUTPUTS ${UTILS_GENERATED_DIR}/hss_scanner.c)
# Create custom command for bison/yacc (note the DEPENDS)
ADD_CUSTOM_COMMAND(
SOURCE ${OPENAIRHSS_DIR}/utils/hss_parser.y
COMMAND ${BISON_EXECUTABLE}
ARGS -y ${OPENAIRHSS_DIR}/utils/hss_parser.y
-o ${UTILS_GENERATED_DIR}/hss_parser.c
TARGET HSSParser
DEPENDS ${UTILS_GENERATED_DIR}/hss_scanner.c
OUTPUTS ${UTILS_GENERATED_DIR}/hss_parser.c)
set(utils_SRC
${UTILS_GENERATED_DIR}/hss_scanner.c
${UTILS_GENERATED_DIR}/hss_parser.c
${OPENAIRHSS_DIR}/utils/conversion.c
${OPENAIRHSS_DIR}/utils/hss_config.c
)
set(utils_HDR
${UTILS_GENERATED_DIR}/hss_parser.h
${UTILS_GENERATED_DIR}/hss_scanner.h
${OPENAIRHSS_DIR}/utils/conversion.h
${OPENAIRHSS_DIR}/utils/hss_config.h
${OPENAIRHSS_DIR}/utils/queue.h
)
# Since parser.c does not exists yet when cmake is run, mark
# it as generated
SET_SOURCE_FILES_PROPERTIES(${UTILS_GENERATED_DIR}/hss_parser.c GENERATED)
SET_SOURCE_FILES_PROPERTIES(${UTILS_GENERATED_DIR}/hss_scanner.c GENERATED)
SET_SOURCE_FILES_PROPERTIES(${UTILS_GENERATED_DIR}/hss_parser.h GENERATED)
SET_SOURCE_FILES_PROPERTIES(${UTILS_GENERATED_DIR}/hss_scanner.h GENERATED)
SET_SOURCE_FILES_PROPERTIES(${OPENAIRHSS_DIR}/utils/hss_config.c DEPENDS ${UTILS_GENERATED_DIR}/hss_parser.c)
add_library(hss_utils ${utils_SRC} ${utils_HDR})
################################################################################
# EXECUTABLE openair-hss
################################################################################
include_directories( ${UTILS_GENERATED_DIR} ${OPENAIRHSS_DIR}/utils ${OPENAIRHSS_DIR}/s6a ${OPENAIRHSS_DIR}/db ${OPENAIRHSS_DIR}/auc ${OPENAIRHSS_DIR}/access_restriction)
ADD_EXECUTABLE(openair-hss ${OPENAIRHSS_DIR}/hss_main.c)
target_link_libraries (openair-hss
-Wl,-whole-archive
hss_access_restriction
hss_auc
hss_db
hss_s6a
hss_utils
-Wl,-no-whole-archive
${MySQL_LIBRARY}
${NETTLE_LIBRARIES}
${FREEDIAMETER_LIBRARIES}
${CMAKE_THREAD_LIBS_INIT} )
# Default parameters
site_name(SITE_HSS_FQDN)
add_option(HSS_FQDN ${SITE_HSS_FQDN} "HSS Fully qualified domain name")
add_option(REALM openair4G.eur "HSS realm TODO: extract this default value from SITE_HSS_FQDN")
add_option(MYSQL_server "127.0.0.1" "Database server IP address")
add_option(MYSQL_admin root "Database admin login")
add_option(MYSQL_admin_pass linux "Database admin password")
add_option(MYSQL_user hssadmin "Database username login")
add_option(MYSQL_pass admin "Database username password")
add_option(MYSQL_db oai_db "Database name")
add_option(TRANSPORT_option No_SCTP "No_TCP or No_SCTP, FreeDiameter config option")
add_option(TRANSPORT_PREFER_TCP_option Prefer_TCP "Prefer_TCP or null string, FreeDiameter config option")
add_option(AppServThreads 2 "FreeDiameter AppServThreads config option")
add_option(OPERATOR_key "11111111111111111111111111111111" "LTE operator clear text key (hex bytes)")
add_option(REMOTE_PEER_WHITELIST "*.${REALM}" "Remote peer whitlist (separeted by spaces), for freediameter acl.conf config file")
IF( FD_SERVER_IP_BIND_LIST )
set(ListenOn "ListenOn=\"${FD_SERVER_IP_BIND_LIST}\"" "//FreeDiameter server IP bind addresses list")
ELSE( FD_SERVER_IP_BIND_LIST )
set(ListenOn "#ListenOn=\"\"" "//FreeDiameter server IP bind addresses list")
ENDIF( FD_SERVER_IP_BIND_LIST )
configure_file(
${OPENAIRHSS_DIR}/conf/hss_fd.conf.in
${CMAKE_CURRENT_BINARY_DIR}/hss_fd.conf)
configure_file(
${OPENAIRHSS_DIR}/conf/hss.conf.in
${CMAKE_CURRENT_BINARY_DIR}/hss.conf)
configure_file(
${OPENAIRHSS_DIR}/conf/acl.conf.in
${CMAKE_CURRENT_BINARY_DIR}/acl.conf)
install (TARGETS openair-hss
DESTINATION ${OPENAIR_TARGETS}/bin)
cmake_minimum_required(VERSION 2.8)
set(PACKAGE_NAME "lte-softmodem")
include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
cmake_minimum_required(VERSION 2.8)
set(PACKAGE_NAME "lte-softmodem")
set(RF_BOARD "USRP")
include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
cmake_minimum_required(VERSION 2.8)
set(PACKAGE_NAME "lte-softmodem")
set(RRC_ASN1_VERSION "Rel8")
include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
cmake_minimum_required(VERSION 2.8)
set (PACKAGE_NAME "oaisim")
set(MAC_CONTEXT True)
set(PHY_ABSTRACTION True)
set(OPENAIR_EMU True)
set(OAI_EMU True)
set(NAS_ADDRESS_FIX true)
set(RRC_ASN1_VERSION "Rel8")
set(XER_PRINT True)
set(RF_BOARD None)
set(XFORMS False)
include(${CMAKE_CURRENT_SOURCE_DIR}/../CMakeLists.txt)
...@@ -15,8 +15,10 @@ set ( ENABLE_PDCP_NETLINK_FIFO False ) ...@@ -15,8 +15,10 @@ set ( ENABLE_PDCP_NETLINK_FIFO False )
set ( ENABLE_PGM_TRANSPORT True ) set ( ENABLE_PGM_TRANSPORT True )
set ( ENABLE_RAL False ) set ( ENABLE_RAL False )
set ( ENABLE_SECURITY True ) set ( ENABLE_SECURITY True )
set ( ENABLE_STANDALONE_EPC False)
set ( ENABLE_USE_CPU_EXECUTION_TIME True ) set ( ENABLE_USE_CPU_EXECUTION_TIME True )
set ( ENABLE_USE_MME True ) set ( ENABLE_USE_MME True )
set ( ENABLE_USE_RAW_SOCKET_FOR_SGI True)
set ( ENABLE_VCD_FIFO True ) set ( ENABLE_VCD_FIFO True )
set ( EXMIMO_IOT True ) set ( EXMIMO_IOT True )
set ( HARD_RT False ) set ( HARD_RT False )
...@@ -52,11 +54,12 @@ set ( OPENAIR_EMU False ) ...@@ -52,11 +54,12 @@ set ( OPENAIR_EMU False )
set ( OPENAIR_LTE True ) set ( OPENAIR_LTE True )
set ( PACKAGE_NAME "oaisim" ) set ( PACKAGE_NAME "oaisim" )
set ( PBS_SIM False ) set ( PBS_SIM False )
set ( PDCP_USE_NETLINK True )
set ( PC_DSP True ) set ( PC_DSP True )
set ( PC_TARGET True ) set ( PC_TARGET True )
set ( PDCP_MSG_PRINT False ) set ( PDCP_MSG_PRINT False )
set ( PERFECT_CE False ) set ( PERFECT_CE False )
set ( PHY_ABSTRACTION False ) set ( PHY_ABSTRACTION True )
set ( PHY_CONTEXT False ) set ( PHY_CONTEXT False )
set ( PHY_EMUL False ) set ( PHY_EMUL False )
set ( PHYSIM True ) set ( PHYSIM True )
......
cmake_minimum_required(VERSION 2.8)
set ( CMAKE_BUILD_TYPE "RelWithDebInfo" )
set ( ADDR_CONF False )
set ( ASSERT False )
set ( DEBUG_OMG False )
set ( DISABLE_XER_PRINT False )
set ( DRIVER2013 False )
set ( EMOS False )
set ( ENABLE_FXP False )
set ( ENABLE_ITTI True )
set ( ENABLE_NAS_UE_LOGGING False )
set ( ENABLE_NEW_MULTICAST False )
set ( ENABLE_PDCP_NETLINK_FIFO False )
set ( ENABLE_PGM_TRANSPORT False )
set ( ENABLE_RAL False )
set ( ENABLE_SECURITY False )
set ( ENABLE_STANDALONE_EPC False )
set ( ENABLE_USE_CPU_EXECUTION_TIME False )
set ( ENABLE_USE_GTPU_IN_KERNEL True )
set ( ENABLE_USE_MME False )
set ( ENABLE_USE_RAW_SOCKET_FOR_SGI True)
set ( ENABLE_VCD_FIFO False )
set ( ENB_MODE False )
set ( EPC_BUILD True )
set ( EXMIMO_IOT False )
set ( HARD_RT False )
set ( JUMBO_FRAME False )
set ( LARGE_SCALE False )
set ( LINK_PDCP_TO_GTPV1U False )
set ( LINUX_LIST False )
set ( LINUX False )
set ( LOCALIZATION False )
set ( LOG_NO_THREAD False )
set ( LOWLATENCY False )
set ( MAC_CONTEXT 1 )
set ( MAX_NUM_CCs 1 )
set ( MIH_C_MEDIEVAL_EXTENSIONS False )
set ( MSG_PRINT False )
set ( MU_RECEIVER False )
set ( NAS_ADDRESS_FIX False )
set ( NAS_BUILT_IN_EPC True )
set ( NAS_MME True )
set ( NAS_NETLINK False )
set ( NAS_UE False )
set ( NB_ANTENNAS_RX "2" )
set ( NB_ANTENNAS_TX "2" )
set ( NB_ANTENNAS_TXRX "2" )
set ( NEW_FFT False )
set ( NO_RRM False )
set ( OAI_EMU False )
set ( OAISIM False )
set ( OAI_NW_DRIVER_TYPE_ETHERNET False )
set ( OAI_NW_DRIVER_USE_NETLINK False )
set ( OPENAIR1 False )
set ( OPENAIR2 False )
set ( OPENAIR_EMU False )
set ( OPENAIR_LTE False )
set ( PACKAGE_NAME "EPC" )
set ( PBS_SIM False )
set ( PC_DSP False )
set ( PC_TARGET False )
set ( PDCP_MSG_PRINT False )
set ( PERFECT_CE False )
set ( PHY_ABSTRACTION False )
set ( PHY_CONTEXT False )
set ( PHY_EMUL False )
set ( PHYSIM False )
set ( PUCCH False )
set ( RANDOM_BF False )
set ( RF_BOARD "False" )
set ( RRC_ASN1_VERSION "Rel10" )
set ( RLC_STOP_ON_LOST_PDU False )
set ( RRC_MSG_PRINT False )
set ( RTAI False )
set ( SECU False )
set ( SMBV False )
set ( SPECTRA False )
set ( TEST_OMG False )
set ( UE_BUILD False )
set ( UPDATE_RELEASE_9 True)
set ( UPDATE_RELEASE_10 True)
set ( USE_3GPP_ADDR_AS_LINK_ADDR False )
set ( USE_MME "R10" )
set ( USER_MODE True )
set ( XER_PRINT False )
set ( XFORMS False )
...@@ -76,11 +76,11 @@ Options ...@@ -76,11 +76,11 @@ Options
Erase all files made by previous compilation, installation" Erase all files made by previous compilation, installation"
--clean-kernel --clean-kernel
Erase previously installed features in kernel: iptables, drivers, ... Erase previously installed features in kernel: iptables, drivers, ...
-C | --config-file
The configuration file to install
-I | --install-external-packages -I | --install-external-packages
Installs required packages such as LibXML, asn1.1 compiler, freediameter, ... Installs required packages such as LibXML, asn1.1 compiler, freediameter, ...
This option will require root password This option will require root password
--install-optional-packages
Install useful but not mandatory packages such as valgrind
-g | --run-with-gdb -g | --run-with-gdb
Add debugging symbols to compilation directives Add debugging symbols to compilation directives
--eNB --eNB
...@@ -140,7 +140,8 @@ clean_kernel() { ...@@ -140,7 +140,8 @@ clean_kernel() {
clean_all_files() { clean_all_files() {
dir=$OPENAIR_DIR/cmake dir=$OPENAIR_DIR/cmake
rm -rf $dir/log $dir/bin $dir/autotests/bin $dir/autotests/log $dir/autotests/*/buid $dir/build_*/build rm -rf $dir/log $OPENAIR_TARGETS/bin $dir/autotests/bin $dir/autotests/log $dir/autotests/*/buid $dir/build_*/build
rm -rf $dir/oaisim_build_oai/CMakeLists.txt $dir/epc_build_oai/CMakeLists.txt $dir/hss_build/BUILD
} }
################################### ###################################
...@@ -154,122 +155,56 @@ compilations() { ...@@ -154,122 +155,56 @@ compilations() {
make -j4 $2 make -j4 $2
} > $dlog/$2.$REL.txt 2>&1 } > $dlog/$2.$REL.txt 2>&1
if [ -s $3 ] ; then if [ -s $3 ] ; then
cp $3 $dbin/$2.$REL cp $3 $dbin
echo_success "$2 compiled" echo_success "$2 compiled"
else else
echo_error "$2 compilation failed" echo_error "$2 compilation failed"
fi fi
} }
run_tests() {
$1 > $2 2>&1
grep
}
test_compile() {
mkdir -p $tdir/$1/build
cd $tdir/$1/build
{
cmake ..
rm -f $3
make -j4 $2
} > $tdir/log/$1.txt
if [ -s $3 ] ; then
cp $3 $tdir/bin/$3.$1
echo_success "$1 test compiled"
else
echo_error "$1 test compilation failed"
fi
}
run_compilation_autotests() {
tdir=$OPENAIR_DIR/cmake_targets/autotests
mkdir -p $tdir/bin $tdir/log
updated=$(svn st -q $OPENAIR_DIR)
if [ "$updated" != "" ] ; then
echo_warning "some files are not in svn: $updated"
fi
test_compile \
test.0101 oaisim \
oaisim $tdir/bin/oaisim.r8
test_compile \
test.0102 oaisim \
oaisim $tdir/bin/oaisim.r8.nas
test_compile \
test.0103 oaisim \
oaisim $tdir/bin/oaisim.r8.rf
test_compile \
test.0104 dlsim \
dlsim $tdir/bin/dlsim
test_compile \
test.0104 ulsim \
ulsim $tdir/bin/ulsim
test_compile \
test.0106 oaisim \
oaisim $tdir/bin/oaisim.r8.itti
test_compile \
test.0107 oaisim \
oaisim $tdir/bin/oaisim.r10
test_compile \
test.0108 oaisim \
oaisim $tdir/bin/oaisim.r10.itti
test_compile \
test.0114 oaisim \
oaisim $tdir/bin/oaisim.r8.itti.ral
test_compile \
test.0115 oaisim \
oaisim $tdir/bin/oaisim.r10.itti.ral
test_compile \
test.0102 nasmesh \
CMakeFiles/nasmesh/nasmesh.ko $tdir/bin/nasmesh.ko
}
########################################## ##########################################
# X.509 certificates # X.509 certificates
########################################## ##########################################
make_one_cert() { make_one_cert() {
$SUDO openssl genrsa -out $1.key.pem 1024 fqdn=$1
$SUDO openssl req -new -batch -out $1.csr.pem -key $1.key.pem -subj /CN=$1.eur/C=FR/ST=PACA/L=Aix/O=Eurecom/OU=CM name=$2
$SUDO openssl ca -cert cacert.pem -keyfile cakey.pem -in $1.csr.pem -out $1.cert.pem -outdir . -batch $SUDO openssl genrsa -out $name.key.pem 1024
$SUDO openssl req -new -batch -out $name.csr.pem -key $name.key.pem -subj /CN=$name.$fqdn/C=FR/ST=PACA/L=Aix/O=Eurecom/OU=CM
$SUDO openssl ca -cert cacert.pem -keyfile cakey.pem -in $name.csr.pem -out $name.cert.pem -outdir . -batch
} }
make_certs(){ make_certs(){
fqdn=$1
certs_dir=/usr/local/etc/freeDiameter
# certificates are stored in diameter config directory # certificates are stored in diameter config directory
if [ ! -d /usr/local/etc/freeDiameter ]; then if [ ! -d $certs_dir ]; then
echo "Creating non existing directory: /usr/local/etc/freeDiameter/" echo "Creating non existing directory: $certs_dir"
$SUDO mkdir -p /usr/local/etc/freeDiameter/ || echo_error "can't create: /usr/local/etc/freeDiameter/" $SUDO mkdir -p $certs_dir || echo_error "can't create: $certs_dir"
fi fi
cd /usr/local/etc/freeDiameter cd $certs_dir
echo "creating the CA certificate" echo "creating the CA certificate"
echo_warning "erase all existing certificates as long as the CA is regenerated" echo_warning "erase all existing certificates as long as the CA is regenerated"
$SUDO rm -f /usr/local/etc/freeDiameter/*.pem $SUDO rm -f $certs_dir/*.pem
$SUDO mkdir -p $certs_dir/demoCA/
$SUDO sh -c "echo 01 > $certs_dir/demoCA/index.txt"
# CA self certificate # CA self certificate
$SUDO openssl req -new -batch -x509 -days 3650 -nodes -newkey rsa:1024 -out cacert.pem -keyout cakey.pem -subj /CN=eur/C=FR/ST=PACA/L=Aix/O=Eurecom/OU=CM $SUDO openssl req -new -batch -x509 -days 3650 -nodes -newkey rsa:1024 -out cacert.pem -keyout cakey.pem -subj /CN=$fqdn/C=FR/ST=PACA/L=Aix/O=Eurecom/OU=CM
# generate hss certificate and sign it # generate hss certificate and sign it
make_one_cert hss make_one_cert eur hss
make_one_cert mme make_one_cert eur mme
# legacy config is using a certificate named 'user' # legacy config is using a certificate named 'user'
make_one_cert user make_one_cert eur user
} }
############################################ ############################################
# External packages installers # External packages installers
############################################ ############################################
...@@ -316,18 +251,40 @@ install_freediameter_from_source() { ...@@ -316,18 +251,40 @@ install_freediameter_from_source() {
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ../ cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr ../
echo "Compiling freeDiameter" echo "Compiling freeDiameter"
make -j4 make -j4
make test #make test
$SUDO make install $SUDO make install
rm -rf /tmp/1.1.5.tar.gz /tmp/freeDiameter-1.1.5 rm -rf /tmp/1.1.5.tar.gz /tmp/freeDiameter-1.1.5
} }
check_install_usrp_uhd_driver(){ check_install_usrp_uhd_driver(){
if [ ! -f /etc/apt/sources.list.d/ettus.list ] ; then v=$(lsb_release -cs)
$SUDO bash -c 'echo "deb http://files.ettus.com/binaries/uhd/repo/uhd/ubuntu/`lsb_release -cs` `lsb_release -cs` main" >> /etc/apt/sources.list.d/ettus.list' $SUDO apt-add-repository "deb http://files.ettus.com/binaries/uhd/repo/uhd/ubuntu/$v $v main"
$SUDO apt-get update $SUDO apt-get update
fi $SUDO apt-get -y install python python-tk libboost-all-dev libusb-1.0-0-dev
$SUDO apt-get -y install python libboost-all-dev libusb-1.0-0-dev $SUDO apt-get -y install -t `lsb_release -cs` uhd --force-yes
$SUDO apt-get -y install -t `lsb_release -cs` uhd }
check_install_additional_tools (){
$SUDO apt-get update
$SUDO apt-get install -y \
check \
dialog \
dkms \
gawk \
libboost-all-dev \
libpthread-stubs0-dev \
openvpn \
phpmyadmin \
pkg-config \
python-dev \
python-pexpect \
sshfs \
swig \
tshark \
uml-utilities \
unzip \
valgrind \
vlan
} }
check_install_oai_software() { check_install_oai_software() {
...@@ -338,17 +295,11 @@ check_install_oai_software() { ...@@ -338,17 +295,11 @@ check_install_oai_software() {
automake \ automake \
bison \ bison \
build-essential \ build-essential \
check \
cmake \ cmake \
cmake-curses-gui \ cmake-curses-gui \
dialog \
dkms \
doxygen \ doxygen \
ethtool \ ethtool \
flex \ flex \
g++ \
gawk \
gcc \
gccxml \ gccxml \
gdb \ gdb \
graphviz \ graphviz \
...@@ -362,19 +313,17 @@ check_install_oai_software() { ...@@ -362,19 +313,17 @@ check_install_oai_software() {
libatlas-dev \ libatlas-dev \
libblas3gf \ libblas3gf \
libblas-dev \ libblas-dev \
libboost-all-dev \
libconfig8-dev \ libconfig8-dev \
libforms-bin \ libforms-bin \
libforms-dev \ libforms-dev \
libgcrypt11-dev \ libgcrypt11-dev \
libgmp-dev \ libgmp-dev \
libgtk-3-dev \ libgtk-3-dev \
libidn11-dev \
libidn2-0-dev \ libidn2-0-dev \
libidn11-dev \
libmysqlclient-dev \ libmysqlclient-dev \
libpgm-5.1 \ libpgm-5.1 \
libpgm-dev \ libpgm-dev \
libpthread-stubs0-dev \
libsctp1 \ libsctp1 \
libsctp-dev \ libsctp-dev \
libssl-dev \ libssl-dev \
...@@ -384,26 +333,13 @@ check_install_oai_software() { ...@@ -384,26 +333,13 @@ check_install_oai_software() {
libxml2 \ libxml2 \
libxml2-dev \ libxml2-dev \
linux-headers-`uname -r` \ linux-headers-`uname -r` \
make \
mysql-client \ mysql-client \
mysql-server \ mysql-server \
openssh-client \ openssh-client \
openssh-server \ openssh-server \
openssl \ openssl \
openvpn \
phpmyadmin \
pkg-config \
python \ python \
python-dev \ subversion
python-pexpect \
sshfs \
subversion \
swig \
tshark \
uml-utilities \
unzip \
valgrind \
vlan
if [ `lsb_release -rs` = '12.04' ] ; then if [ `lsb_release -rs` = '12.04' ] ; then
install_nettle_from_source install_nettle_from_source
install_gnutls_from_source install_gnutls_from_source
...@@ -418,10 +354,10 @@ install_asn1c_from_source(){ ...@@ -418,10 +354,10 @@ install_asn1c_from_source(){
mkdir -p /tmp/asn1c-r1516 mkdir -p /tmp/asn1c-r1516
cd /tmp/asn1c-r1516 cd /tmp/asn1c-r1516
rm -rf /tmp/asn1c-r1516/* rm -rf /tmp/asn1c-r1516/*
svn co https://github.com/vlm/asn1c/trunk /tmp/asn1c-r1516 -r 1516 svn co https://github.com/vlm/asn1c/trunk /tmp/asn1c-r1516 -r 1516 > /tmp/log_compile_asn1c
patch -p0 < $OPENAIRCN_DIR/S1AP/MESSAGES/ASN1/asn1cpatch.p0 patch -p0 < $OPENAIRCN_DIR/S1AP/MESSAGES/ASN1/asn1cpatch.p0 >> /tmp/log_compile_asn1c
./configure ./configure
make make > /tmp/log_compile_asn1c 2>&1
$SUDO make install $SUDO make install
} }
...@@ -429,45 +365,36 @@ install_asn1c_from_source(){ ...@@ -429,45 +365,36 @@ install_asn1c_from_source(){
# 2. compile # 2. compile
################################################ ################################################
compile_hss() { compile_hss() {
cd $OPENAIRCN_DIR/OPENAIRHSS cd $OPENAIR_DIR/cmake_targets/hss_build
rm -f $OPENAIR_TARGETS/bin/openair-hss openair-hss
if [ "$CLEAN" = "1" ]; then if [ "$CLEAN" = "1" ]; then
echo_info "build a clean HSS" echo "Cleaning HSS"
rm -rf obj* m4 .autom4* configure rm -rf BUILD
fi fi
mkdir -p BUILD
echo_success "Invoking autogen" cd ./BUILD
./autogen.sh || return 1 cmake $SOFTMODEM_DIRECTIVES ..
mkdir -p objs ; cd objs make -j $NUM_CPU openair-hss > $dlog/hss.txt 2>&1
echo_success "Invoking configure" if [ -s openair-hss ] ; then
../configure || return 1 cp openair-hss $OPENAIR_TARGETS/bin
if [ -f Makefile ]; then echo_success "hss compiled"
echo_success "Compiling..."
make -j4
# seems a bug in hss compilation: run make twice to work around
make -j4
if [ $? -ne 0 ]; then
echo_error "Build failed, exiting"
return 1
else else
return 0 echo_error "hss compilation failed"
fi fi
else return $?
echo_error "Configure failed, aborting"
fi
return 1
} }
install_nas_tools() { install_nas_tools() {
cd $1 cd $1
if [ ! -f .ue.nvram ]; then if [ ! -f .ue.nvram ]; then
echo_success "generate .ue_emm.nvram .ue.nvram" echo_success "generate .ue_emm.nvram .ue.nvram"
./ue_data --gen ./nvram --gen
fi fi
if [ ! -f .usim.nvram ]; then if [ ! -f .usim.nvram ]; then
echo_success "generate .usim.nvram" echo_success "generate .usim.nvram"
./usim_data --gen ./usim --gen
fi fi
} }
......
# this file contains the calibration values to compute the RSSI
# we can use three different gain stages (high, low, med) as well as a gain factor for fine tuning
# the three lines in this file gives the total rx gain in dB for the three gain stages if the rx gain is set to 30dB
# this is for Express MIMO2 without any additional RF frontend
# high gain
103 107 106 104
# med gain
98 101 100 98
# low gain (byp)
94 97 96 94
...@@ -24,7 +24,7 @@ load_module() { ...@@ -24,7 +24,7 @@ load_module() {
sudo insmod $1 sudo insmod $1
} }
load_module $OPENAIR_DIR/cmake_targets/bin/openair_rf.ko load_module $OPENAIR_DIR/targets/bin/openair_rf.ko
sleep 1 sleep 1
if [ ! -e /dev/openair0 ]; then if [ ! -e /dev/openair0 ]; then
...@@ -36,7 +36,7 @@ DEVICE=`echo $PCI | awk -F\" '{print $(NF-1)}' | awk '{print $2}'` ...@@ -36,7 +36,7 @@ DEVICE=`echo $PCI | awk -F\" '{print $(NF-1)}' | awk '{print $2}'`
DEVICE_SWID=${DEVICE:2:2} DEVICE_SWID=${DEVICE:2:2}
if [ $DEVICE_SWID == '0a' ]; then if [ $DEVICE_SWID == '0a' ]; then
echo "Using firware version 10" echo "Using firware version 10"
$OPENAIR_DIR/cmake_targets/bin/updatefw -s 0x43fffff0 -b -f $OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2_v10 $OPENAIR_DIR/targets/bin/updatefw -s 0x43fffff0 -b -f $OPENAIR_TARGETS/ARCH/EXMIMO/USERSPACE/OAI_FW_INIT/sdr_expressmimo2_v10
else else
echo 'No corresponding firmware found' echo 'No corresponding firmware found'
return return
......
#!/bin/bash
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) anylater version.
#
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#
################################################################################
# file run_enb_s1_exmimo
# brief run script for eNB EXMIMO.
# author Lionel GAUTHIER
# company Eurecom
# email: lionel.gauthier@eurecom.fr
################################
# include helper functions
################################
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
source $THIS_SCRIPT_PATH/build_helper
function help()
{
echo_error " "
echo_error "Usage: run_enb_s1_exmimo [OPTION]..."
echo_error "Run the eNB executable, hardware target is EXMIMO."
echo_error " "
echo_error "Options:"
echo_error "Mandatory arguments to long options are mandatory for short options too."
echo_error " -c, -C, --config-file eNB config file (see $OPENAIR_DIR/targets/PROJECTS/GENERIC-LTE-EPC/CONF)"
echo_error " -g, --gdb Run with GDB."
echo_error " -h, --help Print this help."
echo_error " -K, --itti-dump-file ITTI dump file containing all ITTI events occuring during EPC runtime."
echo_error " -H, --hss HSS hostname."
echo_error " -M, --target-dl-mcs Downlink target MCS."
echo_error " -V, --vcd Dump timings of processing in a GTKWave compliant file format."
echo_error " -S, --enable-missed-slot Continue execution in case of missed slot."
echo_error " -T, --target-ul-mcs Uplink target MCS."
echo_error " -x, --xforms Run XFORMS scope windows."
}
function main()
{
local declare -i run_gdb=0
local declare exe_arguments=""
until [ -z "$1" ]
do
case "$1" in
-c | -C | --config-file)
CONFIG_FILE=$2
# may be relative path
if [ -f $(dirname $(readlink -f $0))/$CONFIG_FILE ]; then
CONFIG_FILE=$(dirname $(readlink -f $0))/$CONFIG_FILE
echo "setting config file to: $CONFIG_FILE"
CONFIG_FILE_ACCESS_OK=1
else
# may be absolute path
if [ -f $CONFIG_FILE ]; then
echo "setting config file to: $CONFIG_FILE"
else
echo_fatal "config file $CONFIG_FILE not found"
fi
fi
exe_arguments="$exe_arguments -O $CONFIG_FILE"
shift 2;
;;
-g | --gdb)
run_gdb=1
echo "setting GDB flag to: $GDB"
shift;
;;
-h | --help)
help
shift;
exit 0
;;
-K | --itti-dump-file)
ITTI_DUMP_FILE=$2
# can omit file name if last arg on the line
if [ "x$ITTI_DUMP_FILE" = "x" ]; then
ITTI_DUMP_FILE="/tmp/enb_s1_exmimo_itti.log"
fi
echo "setting ITTI dump file to: $ITTI_DUMP_FILE"
exe_arguments="$exe_arguments -K $ITTI_DUMP_FILE"
shift 2;
;;
-M | --target-dl-mcs)
echo "setting target dl MCS to $2"
exe_arguments="$exe_arguments -m $2"
shift 2;
;;
-V | --vcd)
"setting gtk-wave output"
exe_arguments="$exe_arguments -V /tmp/oai_gtk_wave.vcd"
shift ;
;;
-S | --enable-missed-slot)
echo "setting continue even if missed slot"
exe_arguments="$exe_arguments -S"
shift ;
;;
-T | --target-ul-mcs)
echo "setting target ul MCS to $2"
exe_arguments="$exe_arguments -t $2"
shift 2;
;;
-x | --xforms)
exe_arguments="$exe_arguments -d"
echo "setting xforms to: $XFORMS"
shift;
;;
*)
echo "Unknown option $1"
help
exit 0
;;
esac
done
check_for_root_rights
set_openair_env
cecho "OPENAIR_HOME = $OPENAIR_HOME" $green
cecho "OPENAIR1_DIR = $OPENAIR1_DIR" $green
cecho "OPENAIR2_DIR = $OPENAIR2_DIR" $green
cecho "OPENAIR3_DIR = $OPENAIR3_DIR" $green
cecho "OPENAIRCN_DIR = $OPENAIRCN_DIR" $green
cecho "OPENAIR_TARGETS = $OPENAIR_TARGETS" $green
if [ ! -e $OPENAIR_TARGETS/bin/lte-softmodem ]; then
echo_fatal "Cannot find $OPENAIR_TARGETS/bin/lte-softmodem executable"
fi
if [ ! -e $OPENAIR_TARGETS/bin/updatefw ]; then
echo_fatal "Cannot find $OPENAIR_TARGETS/bin/updatefw executable"
fi
if [ ! -e $OPENAIR_TARGETS/bin/openair_rf.ko ]; then
echo_fatal "Cannot find $OPENAIR_TARGETS/bin/openair_rf.ko kernel module"
fi
for i in `seq 0 64`; do
have_rtfX=`ls /dev/ |grep -c rtf$i`;
if [ "$have_rtfX" -eq 0 ] ; then
$SUDO mknod -m 666 /dev/rtf$i c 150 $i;
fi;
done
$THIS_SCRIPT_PATH/init_exmimo2.sh
if [ $run_gdb -eq 0 ]; then
exec $OPENAIR_TARGETS/bin/lte-softmodem `echo $exe_arguments` 2>&1 > /tmp/gdb_lte_softmodem.stdout.txt
else
touch ~/.gdb_lte_softmodem
chmod 777 ~/.gdb_lte_softmodem
echo "file $OPENAIR_TARGETS/bin/lte-softmodem" > ~/.gdb_lte_softmodem
echo "set args $exe_arguments" >> ~/.gdb_lte_softmodem
echo "run" >> ~/.gdb_lte_softmodem
cat ~/.gdb_lte_softmodem
gdb -n -x ~/.gdb_lte_softmodem 2>&1 > /tmp/gdb_lte_softmodem.stdout.txt
fi
}
main "$@"
#!/bin/bash
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) anylater version.
#
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#
################################################################################
# file run_epc
# brief run script for EPC (MME+SGW-LITE).
# author Lionel GAUTHIER
# company Eurecom
# email: lionel.gauthier@eurecom.fr
################################
# include helper functions
################################
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
source $THIS_SCRIPT_PATH/build_helper
set_openair_env
function help()
{
echo_error " "
echo_error "Usage: run_epc [OPTION]..."
echo_error "Run the EPC executable (MME+SGW-LITE)."
echo_error " "
echo_error "Options:"
echo_error "Mandatory arguments to long options are mandatory for short options too."
echo_error " -g, --gdb Run with GDB."
echo_error " -h, --help Print this help."
echo_error " -K, --itti-dump-file ITTI dump file containing all ITTI events occuring during EPC runtime."
echo_error " -l, --local-enb EPC run on the same eNB host."
echo_error " -v, --verbosity-level Verbosity level (0,1,2)."
echo_error " 0 -> ASN1 XER printf off"
echo_error " 1 -> ASN1 XER printf on and ASN1 debug off"
echo_error " 2 -> ASN1 XER printf on and ASN1 debug on"
}
function main()
{
local -i run_gdb=0
local exe_arguments=" "
local -i epc_local=0
local -r epc_default_config_file="$OPENAIR_TARGETS/bin/epc.conf"
local epc_config_file=$epc_default_config_file
until [ -z "$1" ]
do
case "$1" in
-g | --gdb)
run_gdb=1
echo "setting GDB flag to: $GDB"
shift;
;;
-h | --help)
help
exit 0
;;
-K | --itti-dump-file)
local itti_dump_file=$2
# can omit file name if last arg on the line
if [ "x$itti_dump_file" = "x" ]; then
itti_dump_file="/tmp/epc_itti.log"
else
shift 1;
fi
echo "setting ITTI dump file to: $itti_dump_file"
exe_arguments="$exe_arguments -K $itti_dump_file"
shift 1;
;;
-l | ----local-enb)
epc_local=1
shift;
;;
-v | --verbosity-level)
local verbosity_level=$2
echo "setting verbosity level to: $verbosity_level"
exe_arguments="-v $verbosity_level $exe_arguments"
shift 2;
;;
*)
echo "Unknown option $1"
help
exit 0
;;
esac
done
check_for_root_rights
set_openair_env
cecho "OPENAIR_HOME = $OPENAIR_HOME" $green
cecho "OPENAIR1_DIR = $OPENAIR1_DIR" $green
cecho "OPENAIR2_DIR = $OPENAIR2_DIR" $green
cecho "OPENAIR3_DIR = $OPENAIR3_DIR" $green
cecho "OPENAIRCN_DIR = $OPENAIRCN_DIR" $green
cecho "OPENAIR_TARGETS = $OPENAIR_TARGETS" $green
if [ ! -e $OPENAIR_TARGETS/bin/mme_gw ]; then
echo_fatal "Cannot find $OPENAIR_TARGETS/bin/mme_gw executable, have a look at the output of build_epc executable"
fi
if [ $epc_local -eq 1 ]; then
epc_config_file="$OPENAIR_TARGETS/bin/epc.local.enb.conf"
fi
exe_arguments="-O $epc_config_file $exe_arguments"
if [ $run_gdb -eq 0 ]; then
exec $OPENAIR_TARGETS/bin/mme_gw `echo $exe_arguments` 2>&1
else
touch ~/.gdb_mme_gw
chmod 777 ~/.gdb_mme_gw
echo "file $OPENAIR_TARGETS/bin/mme_gw" > ~/.gdb_mme_gw
echo "set args $exe_arguments " >> ~/.gdb_mme_gw
echo "run" >> ~/.gdb_mme_gw
cat ~/.gdb_mme_gw
gdb -n -x ~/.gdb_mme_gw
fi
}
main "$@"
#!/bin/bash
################################################################################
# OpenAirInterface
# Copyright(c) 1999 - 2014 Eurecom
#
# OpenAirInterface is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) anylater version.
#
#
# OpenAirInterface is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with OpenAirInterface.The full GNU General Public License is
# included in this distribution in the file called "COPYING". If not,
# see <http://www.gnu.org/licenses/>.
#
# Contact Information
# OpenAirInterface Admin: openair_admin@eurecom.fr
# OpenAirInterface Tech : openair_tech@eurecom.fr
# OpenAirInterface Dev : openair4g-devel@eurecom.fr
#
# Address : Eurecom, Campus SophiaTech, 450 Route des Chappes, CS 50193 - 06904 Biot Sophia Antipolis cedex, FRANCE
#
################################################################################
# file run_hss
# brief run script for HSS (!EXPERIMENTAL!).
# author Lionel GAUTHIER
# company Eurecom
# email: lionel.gauthier@eurecom.fr
################################
# include helper functions
################################
THIS_SCRIPT_PATH=$(dirname $(readlink -f $0))
source $THIS_SCRIPT_PATH/build_helper
function help()
{
echo_error " "
echo_error "Usage: run_hss [OPTION]..."
echo_error "Run the HSS executable (experimental)."
echo_error " "
echo_error "Options:"
echo_error "Mandatory arguments to long options are mandatory for short options too."
echo_error " -g, --gdb Run with GDB."
echo_error " -h, --help Print this help."
}
function main()
{
local -i run_gdb=0
local exe_arguments=" -c ./hss.conf"
until [ -z "$1" ]
do
case "$1" in
-g | --gdb)
run_gdb=1
echo "setting GDB flag to: $GDB"
shift;
;;
-h | --help)
help
exit 0
;;
*)
echo "Unknown option $1"
help
exit 0
;;
esac
done
check_for_root_rights
set_openair_env
cecho "OPENAIR_HOME = $OPENAIR_HOME" $green
cecho "OPENAIR1_DIR = $OPENAIR1_DIR" $green
cecho "OPENAIR2_DIR = $OPENAIR2_DIR" $green
cecho "OPENAIR3_DIR = $OPENAIR3_DIR" $green
cecho "OPENAIRCN_DIR = $OPENAIRCN_DIR" $green
cecho "OPENAIR_TARGETS = $OPENAIR_TARGETS" $green
if [ ! -e $OPENAIR_TARGETS/bin/openair-hss ]; then
echo_fatal "Cannot find $OPENAIR_TARGETS/bin/openair-hss executable"
fi
# for file config relative path
cd $OPENAIR_TARGETS/bin
if [ $run_gdb -eq 0 ]; then
exec $OPENAIR_TARGETS/bin/openair-hss `echo $exe_arguments` 2>&1
else
touch ~/.gdb_hss
chmod 777 ~/.gdb_hss
echo "file $OPENAIR_TARGETS/bin/openair-hss" > ~/.gdb_hss
echo "set args $exe_arguments " >> ~/.gdb_hss
echo "run" >> ~/.gdb_hss
cat ~/.gdb_hss
gdb -n -x ~/.gdb_hss 2>&1
fi
}
main "$@"
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment