Matthias Grob
52e7ce0990
Support python3 only systems by using cmake's FindPythonInterp
...
Ubuntu 20.04 comes with no Python 2 and no link from python to python3.
To not mess with the system we just use cmake's detection for seamless
python3 support.
2020-03-28 16:08:26 +00:00
Dixon, Scott
4750a50099
Issue #100 remove auto_ptr and c++03 support.
...
Problem:
auto_ptr is deprecated.
Solution:
use unique_ptr which is only available in c++11 and newer.
Also fix how unit tests are run as part of the build to keep them from being
deleted when they fail.
Testing:
Unit tests on linux run.
2018-06-26 20:56:53 -07:00
Dixon, Scott
784ec114f6
Issue #132 Proper googletest dependency and fixes for unitests on OSX.
...
Problem:
It's really hard to get Libuavcan tests building on a mac or other platform if googletest isn't installed.
Solution:
add "if linux" guards to problem areas. Also include googletest as recommended in the googletest project's README.
Testing:
Successfully built on OSX sierra using gcc6
2018-06-07 12:25:49 -07:00
Pavel Kirienko
c914f98772
Updated the unit tests for compatibility with GCC 5.4
2017-03-16 17:16:21 +03:00
Gustavo Jose de Sousa
1e04e6b70d
Fix build on Windows
...
Windows native shell doesn't understand shebangs. Also, make sure the Python
scripts are run by the same interpreter.
2016-08-24 16:13:37 -03:00
Pavel Kirienko
c9ec822244
-Wold-style-cast; linked list items made noncopyable
2016-07-29 16:46:57 +03:00
Pavel Kirienko
32d8851dde
-Wnon-virtual-dtor -Woverloaded-virtual -Wsign-promo
2016-07-29 16:02:31 +03:00
Pavel Kirienko
38a241a90a
Added -Wzero-as-null-pointer-constant, replaced NULL --> UAVCAN_NULLPTR. All changes are automatic, no manual edits to the library code.
2016-07-29 15:39:24 +03:00
Pavel Kirienko
7a9031db73
There's no such thing as too much static analysis
2016-07-28 11:53:11 +03:00
Pavel Kirienko
3629a8033d
Building tests only if GTest is found
2016-06-02 23:36:42 +03:00
Daniel Agar
7f3a3d4a96
python only output if there's an error
2016-04-17 16:30:23 -04:00
Daniel Agar
27f112a831
cmake only run libuavcan_dsdlc if there are changes
2016-04-17 14:54:17 -04:00
Ben Dyer
8b178aaa65
Use --gtest_filter to exclude real-time tests, instead of modifying source
2015-10-25 17:51:30 +11:00
Ben Dyer
c446898d05
Adding CONTINUOUS_INTEGRATION_BUILD flag
2015-10-25 10:42:23 +11:00
James Goppert
562d308712
Requested changes.
2015-10-05 17:56:48 -04:00
James Goppert
0b0e7bc6cc
Added cross-compiling support.
2015-10-04 21:28:22 -04:00
Pavel Kirienko
a4020f8749
Redirecting test stderr to files
2015-07-02 02:33:42 +03:00
Pavel Kirienko
3784484b16
Installation updates
2015-06-10 20:30:10 +03:00
Pavel Kirienko
df34ed9ffe
Logging installed Python files into text files; this partially resolves #26
2015-06-10 13:59:36 +03:00
Pavel Kirienko
44b84ea5cb
Using -std=c++11 compiler flag
2015-06-09 22:48:19 +03:00
Pavel Kirienko
988e404586
Work-around for false -Wtype-limits from GCC
2015-06-07 00:07:49 +03:00
Pavel Kirienko
1b75c48783
Fixed #21
2015-04-27 10:31:21 +03:00
postal
803e60f30f
Cmake gcc 4.9 compatability
2015-02-23 19:07:18 +01:00
Pavel Kirienko
6ea66c045c
libuavcan now compiles warning-free with -Wundef
2015-01-10 01:15:25 +03:00
Pavel Kirienko
62db10d9aa
More warnings
2014-08-28 16:31:22 +04:00
Pavel Kirienko
128a8bad1c
Warning fixes
2014-08-28 16:09:21 +04:00
Pavel Kirienko
b09bfab117
Strict warnings in the unit tests. This commit needs to be carefully reviewed.
2014-08-28 04:54:59 +04:00
Pavel Kirienko
d9d6e80aea
Strict sign conversions
2014-08-28 02:51:29 +04:00
Pavel Kirienko
8240c7962b
Extra warnings for the debug build: -Wfloat-equal -Wconversion. The code was fixed accordingly. No broken tests.
2014-08-28 01:33:27 +04:00
Pavel Kirienko
da62126ca2
libuavcan build: cppcheck made optional
2014-08-10 22:29:49 +04:00
Pavel Kirienko
3a70b17b1d
Release builds without -Werror -pedantinc. Strict compilation warnings shall only be enforced for debug builds.
2014-07-24 23:41:00 +04:00
Pavel Kirienko
68a91d888d
Fixed library targets for tests
2014-03-29 15:37:20 +04:00
Pavel Kirienko
21152e00db
Renamed dsdlc target, library made static, added linux drivers project (empty yet)
2014-03-29 15:31:06 +04:00
Pavel Kirienko
89e5cf60e0
Added top-level CMake script
2014-03-29 15:18:36 +04:00
Pavel Kirienko
18e4d919c1
uavcan_dsdlc renamed to libuavcan_dsdlc
2014-03-29 14:54:26 +04:00
Pavel Kirienko
e212c6a9d5
Rewritten CMake installation directives, added setup.py for libuavcan_dsdl_compiler. uavcan_dsdlc should be lifted from libuavcan to a separate subproject in order to add support for other programming languages
2014-03-29 14:31:27 +04:00
Pavel Kirienko
fc543fafe6
Rewritten CMakeLists.txt; now it should work with any compiler (not only GCC). By default it compiles just libuavcan itself and nothing else. In case of GCC or Clang it is possible to select C++ standard (03/11, the latter is default)
2014-03-29 00:35:36 +04:00
Pavel Kirienko
0e2965e6fb
Reorganized CMake script; unit tests and cppcheck will be used only if CMAKE_BUILD_TYPE=Debug, otherwise they are not required
2014-03-28 22:36:55 +04:00
Pavel Kirienko
eead3f55ec
libuavcan installation rules
2014-03-28 20:25:02 +04:00
Pavel Kirienko
c4e0404d02
Added test with -O3, removed noexcept tests, the library compiles in two versions: C++11 (default) and C++03 (with suffix '_cpp03')
2014-03-27 13:51:16 +04:00
Pavel Kirienko
6257896627
Added -Wno-long-long for C++03 builds because this library requires 64 bit integer type
2014-03-18 21:50:40 +04:00
Pavel Kirienko
f3f9f3dd18
Build speedup: dsdlc compiler is being invoked without -v, which improves its performance a tiny bit
2014-03-17 22:24:31 +04:00
Pavel Kirienko
06603ad237
Much improved tests: Both C++03/C++11 are supported, with exceptions and without them; test outputs are being dumped on disk
2014-03-17 19:45:27 +04:00
Pavel Kirienko
6eee97fb05
DSDLC default output directory name was changed to more obvious 'dsdlc_generated'
2014-03-11 20:16:58 +04:00
Pavel Kirienko
026105d0b4
DSDLC invocation has been fixed - now it generates messages even if the tests are not going to be built
2014-03-11 20:12:57 +04:00
Pavel Kirienko
65a4dcc2cf
Superrefactoring - all time values were replaced with new safer classes from uavcan/time.hpp; generated types were moved away from anonymous namespaces because this makes it impossible to use a type from different compilation units. Some less vital fixes are to follow - see the next few commits
2014-03-11 14:41:48 +04:00
Pavel Kirienko
633fa9d8bd
Bitarray copy algorithm was moved to C++ source file, thus C compiler is no longer required
2014-03-10 19:33:06 +04:00
Pavel Kirienko
fb5840116a
Enabled RTTI for tests, added POSIX clock driver, modified CAN driver mock to add the new clock driver support
2014-03-07 23:59:20 +04:00
Pavel Kirienko
451ea11795
Added standard DSDL types: uavcan.*, uavcan.protocol.*, uavcan.mavlink.*
2014-03-06 13:32:38 +04:00
Pavel Kirienko
8e298f98c3
Added gtest for dsdlc (not fully implemented yet); dropped support for inf and nan constants in DSDL as this functionality is not portable
2014-03-03 20:58:21 +04:00