Commit Graph

174 Commits

Author SHA1 Message Date
Vadim Yanitskiy 900ad92912 srsue/extnas: implement a simple UNIX domain socket server
Unfortunately, the existing networking API (common/network_utils.h)
lacks the UNIX domain socket support, and it turned to be easier
to implement a simple, single client server using Boost.Asio.

The server runs in its own thread with a blocking Tx queue, and
calls a user definted callback on receipt of any data from client.
Multiple client connections are not supported and will be rejected.
2020-11-09 06:31:45 +07:00
faluco db03275337 - Fix compiler errors when trying to build the project without SIMD support. 2020-09-02 12:35:18 +02:00
faluco 12e82a947f
LTO compiler and linker fixes (#1676)
* Guard the LTO feature in a CMAKE option and document possible issues of using it.
2020-09-02 09:21:56 +02:00
Andre Puschmann 6c12728cc7 cmake: only add large function growth param when using gcc
the param is only available in gcc so we must not add it to the CFLAGS
when compiling with clang
2020-08-10 15:48:55 +02:00
Andre Puschmann fffff5e7bc cmake: increase function inlining limit
gcc sets the inlining limit a bit arbitrary and the default gcc
on the RPi2 seems to use a lower value so compiling the SIMD
extensions fails with an "inlining failed" error in
srslte_mat_2x2_mmse_csi_simd().

this patch increases the default value. even though its
increased for all platforms it shouldn't case issues on other
machines. the value isn't used by clang.
2020-08-10 11:27:29 +02:00
faluco 3c59d90c17 Disabled strict aliasing in C and C++. 2020-05-19 14:38:58 +02:00
faluco 3fa5926cd5 Fix SIMD neg operation which was inverted.
Re-enable -Werror.
2020-05-08 21:17:05 +02:00
Andre Puschmann 189685b6f5 demod_soft: fix clang warning in demod NEON code
Try to bring back compilation.
Disable temporarily Werror.

Re-enable two simd functions.
2020-05-08 21:17:05 +02:00
faluco 2deeccb416 Re-enable -Werror. 2020-05-07 10:10:24 +02:00
faluco d3cb5dcffd Start fixing clang 10.0.0 warnings.
Disable -Werror temporarily.
2020-05-07 10:10:24 +02:00
faluco da4f9cde40 Enable -Werror by default except for older GCCs. 2020-05-07 10:10:24 +02:00
Andre Puschmann 99c3975f83 remove CMake option to disable glibc header for IPv6
we've added this to allow building for older glibc
version that cause issues with redefining some structs.

this patch removes the flag and auto-detects it using the glibc version
2020-05-05 19:04:14 +01:00
Filipe Laíns e8e1ffefa9 cmake: enable choosing CPU extesions
`AUTO_DETECT_ISA` will disable the resolution of the SSE packages
and the user will have to manually set `HAVE_{AVX,AVX2,SSE}`.

Solves #453

Signed-off-by: Filipe Laíns <lains@archlinux.org>
2020-04-27 11:53:23 +02:00
Andre Puschmann db91e9e772 cmake: add CMake flag to disable project build when calling make install 2020-04-27 11:07:56 +02:00
Paul Sutton b1a127a546 Adding custom build target to build osmo-gsm-tester trial 2020-04-15 13:41:57 +02:00
Francisco Paisana e73cbb09b0 created tprof statistic for sliding windows 2020-03-19 10:59:37 +00:00
Francisco Paisana 269c852767 created a class for time profiling. An object of such class, if disabled, has almost zero overhead. Added a compile-time flag to turn on/off time profiling 2020-03-19 10:59:37 +00:00
Xavier Arteaga e832769ae6 Updated copyright 2020-03-16 11:26:06 +01:00
Andre Puschmann 0dd93c793c add CMake option for ZMQ-based end-to-end tests 2020-02-27 21:39:09 +01:00
Andre Puschmann 0247762265 adding basic shell script for running end-to-end tests 2020-02-03 16:26:15 +01:00
Ismael Gomez 52716f8716 Process HO complete in the background to avoid heap-after-use bug when PHY measurements are reported during a HO
rrc_meas refactor. Need to split commit

Fix typo

Temporal commit

Apply rx_gain_offset to neighbour cell measurements

srsLTE: modify TESTASSERT Macro to follow codeline

SRSUE: prevent RRC from having serving cell in neighbour list

SRSUE: DL HARQ does not need Time Aligment Timer. UL is disabled using PUCCH resources release

SRSUE: extend intra-frequency to CA SCell

SRSUE: fix confusing/ambiguous code in the RRC measurements and fix concurrency issue

SRSUE: remove RRC measurement report triggers when measurements are modified or HO succesful

SRSUE: fix compilation issues and Reest SIB indexes

Fixes sync using incorrect cell configuration when search cell does not find a correct cell

Small refactor to remove measurement report triggers always after removing measurement

SRSUE: Removed SIC PSS from UE

SRSUE: fix inter-frequency reestablishment and added more traces

SRSUE: Fix compilation issue
2020-02-03 12:51:46 +01:00
Andre Puschmann 9e1b8bc95e disabling certain PHY DL tests that aren't working on ARM due to Turbo issues 2019-12-20 18:54:41 +01:00
Pedro Alvarez 6d4303cd94 Added option to force 32bit compilation (useful for debug). Fixed various warnings when compiling in a 32 bit arch. 2019-12-20 17:33:55 +01:00
Andre Puschmann 0d3710176d remove -Werror=incompatible-pointer-types as CXX flag
seems to be only a valid C flag
2019-12-16 14:06:26 +01:00
Vasil Velichkov af2b4ecc79 Use -Wno-unused-but-set-variable only if supported
This fixes the following clang's warning

warning: unknown warning option '-Wno-unused-but-set-variable'; did you mean
      '-Wno-unused-const-variable'? [-Wunknown-warning-option]
2019-12-16 14:06:26 +01:00
Andre Puschmann 31d40304ff add CMake option to force usage of MKL while default is fftw 2019-12-16 12:49:07 +01:00
Vasil Velichkov f3cdee4bb2 Compile without -Werror when compiling with clang
clang currently prints a lot of warnings that will be fixed in
subsequent commits
2019-12-12 15:34:29 +01:00
Andre Puschmann 7885b5b9ee add CMake flag to enable 5G-NR components 2019-12-11 17:50:11 +01:00
Andre Puschmann 6e85b26367 enable ccache if found on system 2019-11-27 20:41:52 +01:00
Pedro Alvarez 6860617426 Removing more temporary changes to CMakeLists.txt 2019-11-07 14:12:08 +01:00
Pedro Alvarez 4746707d0b Revert temporary changes to cmakelists to support ninja 2019-11-07 14:12:08 +01:00
Pedro Alvarez 6265325e20 Starting to change test to also run the clock. 2019-11-07 14:12:08 +01:00
Pedro Alvarez 9b932f131c Added flag for colored output when using ninja instead of make. 2019-11-07 14:12:08 +01:00
Justin Tallon 4a1b8a5952 adding support for neon soft demodulation, adding cmake checks for aarch64
* adding support for neon soft demodulation, adding cmake checks for aarch64
* rearranging some arm cmake flags
2019-11-06 12:11:26 +01:00
Aleksander Morgado ba5f6e9ce4 build: fix ADD_CXX_COMPILER_FLAG_IF_AVAILABLE usages
This patch solves two different issues at the same time when building
with gcc/g++ 9.2.0:

 1) The -fvisibility=hidden support check was done using the C++
 compiler only (with check_cxx_compiler_flag), inside the block
 corresponding to the C compiler being GNU/clang, and the result of
 the check was applied to both C++ (CXX_FLAGS) and C (C_FLAGS) flags.
 Instead of this, there should be separate checks for the C and C++
 compilers, each of them modifying a single set of <LANG>_FLAGS.

 2) -Wincompatible-pointer-types support check was done using the C++
 compiler only, and the result of the check was applied to both C++
 (CXX_FLAGS) and C (C_FLAGS) flags. But, this warning is not
 applicable to C++ and actually breaks compilation when using g++ 9.2:
    [  0%] Building CXX object lib/src/asn1/CMakeFiles/rrc_asn1.dir/rrc_asn1.cc.o
    cc1plus: error: ‘-Werror=’ argument ‘-Werror=incompatible-pointer-types’ is not valid for C++ [-Werror]
 Instead of this, there should be a check for this warning only using
 the C compiler, and therefore only modifying the C flags (C_FLAGS).

This patch splits the macro into one specific for C++ (which modifies
CXX_FLAGS) and one specific for C (which modifies C_FLAGS). And so,
the macro call to check for `-Werror=incompatible-pointer-types' is
made C-only, and the one for `-fvisibility=hidden` is done for both C
and C++ targets (each on the correct GNU/clang compiler block).

Due to how the tests are done in cmake, the '-fvisibility=hidden'
check wasn't even succeding before, so the compiler option wasn't
being effectively used. The cmake flags.make file contents throughout
the project are updated as follows now:

Before this change, we had:
   C_FLAGS   = -Werror=incompatible-pointer-types ...
   CXX_FLAGS = -Werror=incompatible-pointer-types ...

And after this change, we have:
   C_FLAGS   = -Werror=incompatible-pointer-types -fvisibility=hidden ...
   CXX_FLAGS = -fvisibility=hidden ...
2019-10-25 12:40:36 +02:00
Pedro Alvarez 5a1883b748 Making sure that we can get colored output when using Ninja instead of Make. 2019-10-15 10:14:16 +02:00
David Rupprecht f14bb1e760 Building srsLTE in a subdir of project 2019-10-07 16:33:35 +02:00
Xavier Arteaga 3acfe68d35 Add /lib/x86... to CMake find library hints 2019-09-20 15:43:07 +02:00
Andre Puschmann dbd219e112 enable -Werror based on compiler version
older gcc's (e.g gcc4.8) have issues with some const expressions
so they print warnings. we don't want to change the code because it is
fine with newer compilers. therefore we only enable -Werror for
newer versions of gcc
2019-09-17 22:12:34 +02:00
Andre Puschmann 9e1c46dfb0 add initial TTCN3 code 2019-09-17 21:56:47 +02:00
Andre Puschmann a9bea7e30c add -Werror to compile flags 2019-09-09 16:30:48 +02:00
Andre Puschmann 7ec587bcdc backport support for ipv6 for older glibc 2019-04-30 14:00:19 +02:00
Andre Puschmann 4b01a2e4a0 update copyright notice 2019-04-29 09:20:02 +02:00
Andre Puschmann c6e19645af add zmq-based rf driver 2019-04-25 10:25:49 +02:00
Andre Puschmann 1cc6ae3c60 enable c++11 support 2019-03-11 13:31:43 +01:00
Andre Puschmann 22503541b1 disable clang tidy by default during build 2018-12-13 11:06:57 +01:00
Ismael Gomez a8a0c3ebe7 Fixed compilation in zynq 2018-12-12 14:34:13 +01:00
Andre Puschmann 34f552fae9 add universal executable to select binary based on current ISA
- using cpuid to check x86 features
- using hwcap on ARM to check for NEON
2018-12-10 17:48:52 +01:00
Xavier Arteaga 8c3a0153b9 Added missing AVX512 intrinsics and flags. Fixes #291. 2018-11-21 18:09:09 +01:00
Andre Puschmann b75506ac16 add CMake option to enable memory sanitizer 2018-09-25 10:46:36 +02:00