Commit d5127b23 authored by Robert Schmidt's avatar Robert Schmidt Committed by Sakthivel Velumani

Move CMakeLists.txt into root

parent 62cea0ef
...@@ -21,10 +21,10 @@ ...@@ -21,10 +21,10 @@
# Author: laurent THOMAS, Lionel GAUTHIER # Author: laurent THOMAS, Lionel GAUTHIER
cmake_minimum_required (VERSION 2.8) cmake_minimum_required (VERSION 3.5)
project (OpenAirInterface LANGUAGES C CXX) project (OpenAirInterface LANGUAGES C CXX)
include("macros.cmake") include("cmake_targets/macros.cmake")
# System packages that are required # System packages that are required
# We use either the cmake buildin, in ubuntu are in: /usr/share/cmake*/Modules/ # We use either the cmake buildin, in ubuntu are in: /usr/share/cmake*/Modules/
......
...@@ -379,7 +379,7 @@ VM_TEMPLATE=ci- ...@@ -379,7 +379,7 @@ VM_TEMPLATE=ci-
# look for ASN1 release in cmake directives # look for ASN1 release in cmake directives
# It will be the release used when building # It will be the release used when building
ASN1VEROPT=( `grep "set (RRC_ASN1_VERSION" cmake_targets/CMakeLists.txt` ) ASN1VEROPT=( `grep "set (RRC_ASN1_VERSION" CMakeLists.txt` )
ASN1VER=${ASN1VEROPT[2]//\"} ASN1VER=${ASN1VEROPT[2]//\"}
ASN1VER=${ASN1VER//)} ASN1VER=${ASN1VER//)}
unset ASN1VEROPT unset ASN1VEROPT
......
...@@ -634,7 +634,7 @@ function main() { ...@@ -634,7 +634,7 @@ function main() {
if [[ ${#CMAKE_CXX_FLAGS[@]} > 0 ]]; then CMAKE_CMD="$CMAKE_CMD -DCMAKE_CXX_FLAGS=\"${CMAKE_CXX_FLAGS[*]}\""; fi if [[ ${#CMAKE_CXX_FLAGS[@]} > 0 ]]; then CMAKE_CMD="$CMAKE_CMD -DCMAKE_CXX_FLAGS=\"${CMAKE_CXX_FLAGS[*]}\""; fi
CMAKE_CMD="$CMAKE_CMD -DNOAVX512=\"${NOAVX512[*]}\"" CMAKE_CMD="$CMAKE_CMD -DNOAVX512=\"${NOAVX512[*]}\""
echo_info "running $CMAKE_CMD" echo_info "running $CMAKE_CMD"
eval $CMAKE_CMD ../.. eval $CMAKE_CMD
for f in $execlist ; do for f in $execlist ; do
echo_info "Compiling $f..." echo_info "Compiling $f..."
......
...@@ -6,7 +6,7 @@ int load_module_shlib(char *modname,loader_shlibfunc_t *farray, int numf) ...@@ -6,7 +6,7 @@ int load_module_shlib(char *modname,loader_shlibfunc_t *farray, int numf)
* Formats the full shared library path, using the `modname` argument and the loader `shlibpath` and `shlibversion`configuration parameters. * Formats the full shared library path, using the `modname` argument and the loader `shlibpath` and `shlibversion`configuration parameters.
* loads the shared library, using the dlopen system call * loads the shared library, using the dlopen system call
* looks for `< modname >_autoinit` symbol, using the `dlsym` system call and possibly call the corresponding function. * looks for `< modname >_autoinit` symbol, using the `dlsym` system call and possibly call the corresponding function.
* looks for `< modname >_checkbuildver` symbol, using the `dlsym` system call and possibly calls the corresponding function. If the return value of this call is `-1`, program execution is stopped. It is the responsibility of the shared library developer to implement or not a `< modname >_checkbuildver` function and to decide if a version mismatch is a fatal condition. The `< modname >_checkbuildver` function must match the `checkverfunc_t` function type. The first argument is the main executable version, as set in the `PACKAGE_VERSION` macro defined in the [oai CMakeLists](https://gitlab.eurecom.fr/oai/openairinterface5g/blob/develop/cmake_targets/CMakeLists.txt#L218), around line 218. The second argument points to the shared library version which should be set by the `< modname >_checkbuildver` function. * looks for `< modname >_checkbuildver` symbol, using the `dlsym` system call and possibly calls the corresponding function. If the return value of this call is `-1`, program execution is stopped. It is the responsibility of the shared library developer to implement or not a `< modname >_checkbuildver` function and to decide if a version mismatch is a fatal condition. The `< modname >_checkbuildver` function must match the `checkverfunc_t` function type. The first argument is the main executable version, as set in the `PACKAGE_VERSION` macro defined in the [oai CMakeLists](https://gitlab.eurecom.fr/oai/openairinterface5g/blob/develop/CMakeLists.txt#L218), around line 218. The second argument points to the shared library version which should be set by the `< modname >_checkbuildver` function.
* If the farray pointer is null, looks for `< modname >_getfarray` symbol, calls the corresponding function when the symbol is found. `< modname >_getfarray` takes one argument, a pointer to a `loader_shlibfunc_t` array, and returns the number of items in this array, as defined by the `getfarrayfunc_t` type. The `loader_shlibfunc_t` array returned by the shared library must be fully filled (both `fname` and `fptr` fields). * If the farray pointer is null, looks for `< modname >_getfarray` symbol, calls the corresponding function when the symbol is found. `< modname >_getfarray` takes one argument, a pointer to a `loader_shlibfunc_t` array, and returns the number of items in this array, as defined by the `getfarrayfunc_t` type. The `loader_shlibfunc_t` array returned by the shared library must be fully filled (both `fname` and `fptr` fields).
* looks for the `numf` function symbols listed in the `farray[i].fname` arguments and set the corresponding `farray[i].fptr`function pointers * looks for the `numf` function symbols listed in the `farray[i].fname` arguments and set the corresponding `farray[i].fptr`function pointers
......
...@@ -39,7 +39,7 @@ Running the [build_oai](../cmake_targets/build_oai) script also generates some ...@@ -39,7 +39,7 @@ Running the [build_oai](../cmake_targets/build_oai) script also generates some
- `rb_tool`: radio bearer utility - `rb_tool`: radio bearer utility
- `genids` T Tracer utility, used at build time to generate T_IDs.h include file. This binary is located in the [T Tracer source file directory](../common/utils/T) . - `genids` T Tracer utility, used at build time to generate T_IDs.h include file. This binary is located in the [T Tracer source file directory](../common/utils/T) .
The build system for OAI uses [cmake](https://cmake.org/) which is a tool to generate makefiles. The `build_oai` script is a wrapper using cmake, make and standard linux shell commands to ease the oai build and use . The file describing how to build the executables from source files is the [CMakeLists.txt](../cmake_targets/CMakeLists.txt), it is used as input by cmake to generate the makefiles. The build system for OAI uses [cmake](https://cmake.org/) which is a tool to generate makefiles. The `build_oai` script is a wrapper using cmake, make and standard linux shell commands to ease the oai build and use . The file describing how to build the executables from source files is the [CMakeLists.txt](../CMakeLists.txt), it is used as input by cmake to generate the makefiles.
The oai softmodem supports many use cases, and new ones are regularly added. Most of them are accessible using the configuration file or the command line options and continuous effort is done to avoid introducing build options as it makes tests and usage more complicated than run-time options. The following functionalities, originally requiring a specific build are now accessible by configuration or command line options: The oai softmodem supports many use cases, and new ones are regularly added. Most of them are accessible using the configuration file or the command line options and continuous effort is done to avoid introducing build options as it makes tests and usage more complicated than run-time options. The following functionalities, originally requiring a specific build are now accessible by configuration or command line options:
......
...@@ -43,7 +43,7 @@ set(DEBUG_DLSCH True) ...@@ -43,7 +43,7 @@ set(DEBUG_DLSCH True)
set(T_TRACER False) set(T_TRACER False)
# standard cmake file for nr ue build # standard cmake file for nr ue build
include(../../../../../cmake_targets/CMakeLists.txt) include(../../../../../CMakeLists.txt)
set(SRC_UNIT_TESTS set(SRC_UNIT_TESTS
......
...@@ -1102,7 +1102,7 @@ void nr_rlc_tick(int frame, int subframe) ...@@ -1102,7 +1102,7 @@ void nr_rlc_tick(int frame, int subframe)
} }
/* This is a hack, to compile the gNB. /* This is a hack, to compile the gNB.
* TODO: remove it. The solution is to cleanup cmake_targets/CMakeLists.txt * TODO: remove it. The solution is to cleanup CMakeLists.txt
*/ */
void rlc_tick(int a, int b) void rlc_tick(int a, int b)
{ {
......
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