Commit Graph

151 Commits

Author SHA1 Message Date
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
Andre Puschmann 7572299615 enable clang-tidy for srslte_upper library 2018-09-25 10:46:36 +02:00
Andre Puschmann b1a443a9b8 add clang-tidy detection 2018-09-13 17:11:55 +02:00
Ismael Gomez bc9d342959
New optimization on the PHY for both UE and eNodeB (#251)
* New parallel Turbodecoder implementation in SSE/AVX 16-bit and 8-bit

* Optimised UL Interleaver

* Include TB CRC calculation in FEC encoder

* New threading priorities
2018-09-04 17:51:35 +02:00
Andre Puschmann bfae6c5059 add CMake option for UHD and pcsc 2018-07-10 12:02:04 +02:00
Andre Puschmann 91e1b27219 Merge branch 'master' into next 2018-06-27 11:43:01 +02:00
Matt Thompson 569dfd8e09 Add cmake option to conditionally compile SoapySDR 2018-06-21 11:42:28 -07:00
Andre Puschmann 2b937023dc remove usage of gold linker causing issues with some linkers and boost (rfci testbed) 2018-06-13 17:15:13 +02:00
Ismael Gomez 6120f20290
Changes in RRC and S1AP to make enb more robust on UE add/rem operations.
* Consolidated functions in S1AP

* Fixed ASAN in some GCC

* Stop quicker the enb

* Minor typo edit

* Fixed mutexing issues in RRC and possibly RLC/PDCP when adding/removing users
2018-06-12 17:31:07 +02:00
Andre Puschmann 2c179dd84f add config install helper 2018-06-05 11:34:01 +02:00
Xavier Arteaga 681b98ae50 Added vector CFO 2018-05-25 16:06:32 +02:00
Andre Puschmann 3fe6dad323 adding hard SIM card support using PCSC 2018-05-15 12:40:29 +02:00
Ismael Gomez aa1724b8f3 Add missing-field-initializers flag and properly initialize structs 2018-04-29 17:55:19 +02:00
Joseph Giovatto ab1d9e98f3 Format and typelimit warnings (#169)
* merge with origin 4fc7dbc3 8daa8346

* fixed whitespace diff

* added .gitignore

* added format warning flags to C_FLAGS
added typelimit check to C_FLAGS and CXX_CLAGS

* Revert "added format warning flags to C_FLAGS"

Apply to branch format_and_typelimt branch

This reverts commit bf7467e82e.

* check for format warnings to top level C_FLAGS
added typelimit warnings to top level C_FLAGS and CXX_FLAGS
beset effort attempt to remedy warnings
removed unused param names in hex_log baseclass methods due to multitude of unused-warnings
2018-04-29 17:26:35 +02:00
Joseph Giovatto 9f5069cdc8 Format and typelimit warnings (#169)
* merge with origin 4fc7dbc3 8daa8346

* fixed whitespace diff

* added .gitignore

* added format warning flags to C_FLAGS
added typelimit check to C_FLAGS and CXX_CLAGS

* Revert "added format warning flags to C_FLAGS"

Apply to branch format_and_typelimt branch

This reverts commit bf7467e82e.

* check for format warnings to top level C_FLAGS
added typelimit warnings to top level C_FLAGS and CXX_FLAGS
beset effort attempt to remedy warnings
removed unused param names in hex_log baseclass methods due to multitude of unused-warnings
2018-04-29 17:24:35 +02:00
Joseph Giovatto 49da57c8a1 Changed log methods to take string literal vs string object
to allow for format checking and save on object copy.
Fixed log format specifier warnings.
2018-03-29 16:59:19 +02:00
Andre Puschmann 2cf5acf9c8 set valgrind options correctly
this avoid an ugly valgrind error after executing long sequences
of simd code

see: https://www.bountysource.com/issues/41603953-temporary-storage-exhausted-when-long-sequence-of-vfmadd231ps-instructions-to-be-executed
2018-03-29 14:48:35 +02:00
Andre Puschmann 9c006e4585 remove boost system dependency 2018-03-29 12:12:15 +02:00
Andre Puschmann 37e06d78ea fix build_mode printing in RelWithDebInfo mode 2018-03-19 13:22:50 +01:00
Ismael Gomez 58f204d94a Set DEBUG constant for RelWithDebug 2018-03-14 21:19:02 +01:00
Andre Puschmann c3088e1d16 add cmake option to enable address sanitizer 2018-03-06 20:50:25 +01:00
Paul Sutton 1fd2341932 Minor typo fix 2018-02-07 09:37:26 +00:00
Andre Puschmann 5a35cef4b0 remove static FFTW library as strict dependency 2018-01-23 14:54:26 +01:00
Pedro Alvarez 042552491b Merging next into epc branch. 2018-01-08 14:45:13 +00:00