Commit Graph

586 Commits

Author SHA1 Message Date
Andrew Tridgell c2ed419401 waf: build AP_Hott_Telem 2020-01-16 20:36:54 +11:00
Patrick José Pereira 994a934f88 Tools: ardupilotwaf: Add navigator board
Signed-off-by: Patrick José Pereira <patrickelectric@gmail.com>
2020-01-16 08:01:54 +11:00
Peter Barker a21a87e884 waf: factor out a cc_version_gte 2020-01-15 13:55:42 +11:00
Peter Barker 824a085097 waf: make implicit fallthroughs fatal 2020-01-15 13:55:42 +11:00
Peter Barker 0afdee5105 waf: add -werror=unused-value to catch unused expression results 2020-01-14 11:12:14 +11:00
Andrew Tridgell 82148607ee Tools: add USBID to generated apj file 2020-01-06 09:55:26 +11:00
Andy Piper 1b17955f6b waf: hack to let RunCam header enablement macro pass 2019-12-30 13:02:04 +11:00
Andy Piper 30878553d6 Tools: add AP_Camera to list of libraries
remove dummy Camera methods from Replay
add rcmapper to replay
make replay a vehicle
2019-12-30 13:02:04 +11:00
Andrew Tridgell a06da57f3e waf: fixed aligned size of bootloader in ROMFS 2019-12-23 21:46:33 +11:00
Oliver Walters 9a7b78d49d waf: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Andy Piper abb7041c22 Tools: only enable -Wno-format-contains-nul if not clang 2019-12-01 10:27:51 +11:00
Andrew Tridgell 4ff2d744e7 waf: build AP_EFI 2019-11-17 20:10:54 +11:00
Peter Barker a4a1536614 waf: make format errors fatal 2019-11-05 11:29:08 +11:00
Andrew Tridgell ca00ca4dac waf: build AP_SerialLED 2019-11-04 13:01:59 +11:00
Michael du Breuil 7b2fdec211 ardupilotwaf: Add -Wno-format-contains-nul
MAV_FTP benefits quite a lot from using null's in it's print strings
2019-11-02 22:52:06 +11:00
Andrew Tridgell d00f4316e9 Tools: moved AC_PID dependency to core 2019-11-02 16:31:04 +11:00
Andrew Tridgell 4e33aff5d6 waf: fixed unnecessary nul termination of ROMFS 2019-10-25 21:36:55 +11:00
Andrew Tridgell c219d357f0 waf: allow for uncompressed ROMFS
this saves memory flashing bootloader on low memory boards
2019-10-24 22:03:43 +11:00
Andrew Tridgell c5afc3ff99 Tools: use crc_crc32() in app descriptor 2019-10-21 19:12:01 +11:00
Andrew Tridgell d572d630ed waf: added generation of app descriptor 2019-10-21 19:12:01 +11:00
Michael du Breuil 6be5578621 ardupilotwaf: -Werror=delete-non-virtual-dtor is a C++ flag not a C flag 2019-10-16 18:14:42 +11:00
Andrew Tridgell c18098cdf4 waf: always build AP_ADSB
needed for singleton
2019-10-16 13:13:24 +11:00
Andy Piper 1d11fe5377 Tools: add --upload-port option to waf 2019-10-01 18:12:04 +10:00
Andrew Tridgell 1635da1dd7 Tools: removed HAVE_OCLOEXEC check 2019-09-28 14:19:46 +10:00
Peter Barker 84f6e49594 waf: cope with new format of gtest submodule 2019-09-24 14:30:13 +10:00
Peter Barker 52cb509f11 waf: add suggest-override even when building in uavcan 2019-09-24 14:30:13 +10:00
Andrew Tridgell e9f8b91134 waf: fixed --build-dates option
and remove build_time from apj when --build-dates not used to avoid
changing apj file
2019-09-23 08:32:05 +10:00
Peter Barker 45a76fe7fc waf: add -Werror=format-extra-args to cxx flags 2019-09-10 10:04:48 +10:00
Andrew Tridgell c90b937972 waf: wrap more libc functions 2019-09-09 13:31:30 +10:00
Andrew Tridgell c2b06a3293 waf: wrap vsnprintf 2019-09-09 13:31:30 +10:00
Peter Barker 2273ffb267 waf: build in libraries/AP_NavEKF 2019-09-03 09:28:37 +10:00
Peter Barker 291e2e3af6 waf: squash expansion-to-defined warnings
We use these a lot in our code and we're not particularly fussed with
portability.
2019-08-27 18:41:03 +10:00
Andrew Tridgell da15fb988c waf: add a lot more wrapped functions
this allows us to catch accidential inclusion of libc functions that
we don't want
2019-08-27 15:40:43 +10:00
Andrew Tridgell abe53e1c9e waf: build AP_Filesystem 2019-08-27 15:40:43 +10:00
Andrew Tridgell 29fe4241a8 waf: use C11 for C files
needed for AP_Periph
2019-08-27 10:29:56 +10:00
Peter Barker 813694894d Tools: waf: add warning if bootloader not found 2019-08-26 11:08:11 +10:00
Peter Barker be173a9514 Tools: waf: stop adding -Wno-error=suggest-override for CAN boards 2019-08-14 16:33:29 +10:00
Peter Barker 1574464543 waf: do not -Werror=suggest-override on uavcan-enabled boards
uavcan doesn't have all of the required override keywords

SITL will still die without the keyword
2019-08-13 23:19:45 +10:00
Peter Barker c339d18ee6 Tools: add -Werror=suggest-override for gcc 2019-08-13 09:46:20 +10:00
Pierre Kancir bb13a75e30 Tools: check for feenableexcept on WAF 2019-08-06 09:37:30 +10:00
Peter Barker cc742dbfc4 waf: make unused variables an error on C as well as C++ source files 2019-08-05 18:31:58 +10:00
Peter Barker a3b5ed442c waf: add -Werror=ignored-qualifiers
Sub recently got a patch which introduced a bunch of these warnings
2019-08-02 08:23:57 +10:00
Peter Barker 0952ca0abc waf: remove NuttX-based IO firmware blob 2019-07-16 10:29:05 +10:00
Peter Barker c4311b4af6 Tools: waf: add -Werror=delete-non-virtual-dtor 2019-07-16 10:28:30 +10:00
Siddharth Purohit 8de169b1ce waf: remove redundant src includes for libuavcan drivers 2019-07-08 12:18:29 +10:00
Peter Barker 306783211b Tools: waf: understand DISABLE_SCRIPTING from the board configuration 2019-07-08 09:55:46 +10:00
Michael du Breuil 4893b85983 Tools: bootloaders should not include scripting 2019-06-19 11:26:44 +10:00
Michael du Breuil 0e76afd22c Tools: Support enabling scripting by default 2019-06-18 00:06:32 -07:00
Peter Barker 4f7905331a waf: add build option to include dates in binary 2019-06-18 10:54:01 +10:00
Julien Beraud 8a4553ba0a waf: fix lib link check
-llibrary_name is already part of the link flags at this point and
libname is "liblibrary_name" so it adds -lliblibrary_name instead which
is wrong
2019-06-14 18:52:57 -07:00
Peter Barker 82dd2438b9 waf: add -Werror=parentheses
This warns on some of our compilers in CI, but doesn't flag it as an
error ATM
2019-06-11 21:50:53 +10:00
Peter Barker 0aa074467b waf: add -Werror=overflow
Can catch some trivial errors.  This warns by default on gcc anyway
2019-06-11 09:12:49 +10:00
Peter Barker f730020b31 Tools: waf: make extra arguments in format string fatal 2019-06-07 22:03:41 +10:00
Andrew Tridgell d81bd6530c waf: use make -j on build of ChibiOS core
using number of jobs from waf
2019-06-06 08:29:06 +10:00
Francisco Ferreira 8849e0d276 waf: add AP_NMEA_Output to common libraries 2019-05-21 09:41:15 +10:00
Peter Barker 85fe4ae6dd waf: add sitl rgbled option 2019-05-21 09:21:56 +10:00
Jonathan Challinger fea82dc360 waf: support building headers from uavcan_vendor_specific_types directory 2019-05-15 16:01:53 +09:00
Peter Barker 2f7f361968 Tools: waf: do not permit taking address of packed members under clang++ 2019-05-01 19:36:49 -07:00
Peter Barker 9f9531a790 Copter: AP_Arming: correct overriding of arm_checks method
This makes the arbitrary decision that arming checks always report
failures to the GCS.

Fixes:

In file included from ../../ArduCopter/events.cpp:1:
In file included from ../../ArduCopter/Copter.h:91:
../../ArduCopter/AP_Arming.h:33:69: fatal error: non-virtual member function marked 'override' hides virtual member function
    bool arm_checks(bool display_failure, AP_Arming::Method method) override;
                                                                    ^
../../libraries/AP_Arming/AP_Arming.h:64:18: note: hidden overloaded virtual function 'AP_Arming::arm_checks' declared here: different number of parameters (1 vs 2)
    virtual bool arm_checks(AP_Arming::Method method);
                 ^
1 error generated.
2019-04-30 09:29:59 +10:00
Peter Barker 1dd5c33374 Tools: waf: add various conversion warning compiler options
suggested by @patrickelectric
2019-04-30 09:29:59 +10:00
Peter Barker ad6c1acbd7 waf: add -Werror=type-limits
This catches always-true comparisons and the like

Also remove redundant directive
2019-04-14 12:18:03 +09:00
Peter Barker 30fec9f54b Tools: ardupilotwaf: make unused variables fatal on all boards 2019-04-02 10:24:49 +11:00
Peter Barker e6a1789df8 Tools: ardupilotwaf: make shadowed variables fatal on all platforms 2019-03-23 11:23:07 +11:00
Peter Barker 156d580bcd Tools: ardupilotwaf: include sfml-audio 2019-03-23 07:10:50 +11:00
Peter Barker d762629c62 Tools: waf: link AP_InternalError everywhere 2019-03-21 21:34:33 +11:00
Peter Barker 780e0e2eba Tools: ardupilotwaf: build SITL binaries for x86_64-linux-gnu and arm-linux-gnueabihf 2019-03-19 20:21:50 +11:00
Peter Barker 1a81da4a26 Tools: ardupilotwaf: sort boards in help text 2019-03-19 20:21:50 +11:00
Peter Barker 929e84d120 Tools: ardupilotwaf: add -Werror=attributes 2019-03-19 14:10:10 +11:00
Andrew Tridgell 9e50c1b64e waf: fixed case insensitive board name 2019-03-07 08:36:01 +11:00
Andrew Tridgell 102141756a waf: make board name case insensitive in waf configure 2019-03-05 08:43:14 +11:00
Peter Barker facfa53f57 Tools: waf: add -Werror=overloaded-virtual 2019-03-01 22:31:21 +11:00
Peter Barker 39e7733872 Tools: waf: add -Werror=enum-compare 2019-03-01 12:50:52 +11:00
Andrew Tridgell b619e1e560 Tools: remove more px4 remnants 2019-02-27 20:32:37 +11:00
Andrew Tridgell e5efbffe5b waf: pad bootloader to multiple of 32 bytes
this ensures that we can write a whole flash line when updating
bootloader from ROMFS
2019-02-26 16:18:26 +11:00
Andrew Tridgell 3c9646dfef waf: allow hwdef.dat to override build optimization 2019-02-26 16:18:26 +11:00
Andrew Tridgell e71514c136 waf: allow for no param default support
this allows apj files to be built for example fw
2019-02-26 16:18:26 +11:00
Francisco Ferreira 03ed67a996 waf: add option to override toolchain 2019-02-22 08:27:08 +11:00
Francisco Ferreira ba2f954a20 waf: add AC_AttitudeControl library for PE target format 2019-02-22 08:27:08 +11:00
Peter Barker 6137704032 Tools: ardupilotwaf: add -Werror=inconsistent-missing-override for clang 2019-02-20 19:23:54 +11:00
Peter Barker e23809fd59 Tools: ardupilotwaf: include AP_Parachute in all builds 2019-02-13 09:25:27 +09:00
Peter Barker 61961d037e Tools: ardupilotwaf: all vehicles get AC_Fence 2019-01-31 13:44:29 +09:00
Andrew Tridgell 1f28994bae waf: added --sitl-flash-storage option 2019-01-21 20:59:00 +11:00
mirkix f9d49913d9 ardupilotwaf: enable UAVCAN for bbbmini, blue and pocket 2019-01-21 08:08:59 +11:00
Andrew Tridgell 85ca38b630 waf: fixed git hash in generated APJ file 2019-01-19 17:19:41 +11:00
Peter Barker 0bf55ce3f4 Tools: ardupilotwaf: DataFlash renamed to AP_Logger 2019-01-18 18:08:20 +11:00
Randy Mackay b3b3385143 Tools: add ToshibaCAN to waf build 2019-01-18 17:30:28 +11:00
Andrew Tridgell 1cf4a9b8d8 waf: fixed ROMFS compression to use zero timestamp
this makes the apj file indepenent of build date, which fixes this
issue:

https://discuss.ardupilot.org/t/arducopter-waf-build-repeatability/37182
2019-01-11 17:45:07 +11:00
Michael du Breuil 7b259fb09f ardupilotwaf: Enable heap for scripting builds 2018-12-31 19:25:23 -07:00
Andrew Tridgell d8291ef1d1 waf: fixed static link build
for bebop
2019-01-01 09:34:11 +11:00
Michael du Breuil 2c8b5c651d Tools: Remove unneeded AP_Buffer include 2018-12-31 11:41:43 +09:00
Andrew Tridgell bac091262f waf: use ctx.fatal for old board error
thanks to @OXINARF
2018-12-22 11:06:59 +11:00
Andrew Tridgell 646c6f4361 waf: point developers at the new build 2018-12-22 11:06:59 +11:00
Andrew Tridgell 7c5d82ed15 waf: removed px4 build targets 2018-12-22 11:06:59 +11:00
Andrew Tridgell aa7221d1bf waf: build AP_RobotisServo 2018-12-22 08:13:14 +11:00
Andrew Tridgell bdacc410ca waf: added check for memrchr()
needed on macos
2018-12-06 13:32:09 +11:00
Peter Barker 8949cdd87a Tools: waf: use ctx rather than build for fatal errors 2018-12-01 09:41:24 +11:00
Andrew Tridgell 4b1857b3aa waf: use local pymavlink
use pymavlink from modules, not from install. This allows building
without pymavlink installs, and ensures we use the current version
2018-11-19 10:06:23 +11:00
Andrew Tridgell e6651b01bb waf: use direct import of mavgen for mavlink generation
this avoids a path problem on windows under eclipse
2018-11-15 14:39:11 +11:00
Andrew Tridgell 304eaa7782 waf: fixed typo 2018-11-15 09:55:14 +11:00
Peter Barker 1d2f8555c0 Tools: ardupilotwaf: adjust for new location of uploader.py 2018-11-15 09:55:14 +11:00