Commit Graph

760 Commits

Author SHA1 Message Date
Peter Barker 98d392194a Tools: allow AP_SCRIPTING_ENABLED to come from hwdef files 2023-06-09 16:10:52 +10:00
Peter Barker 5a33f870c0 Tools: use HAL_PROXIMITY_ENABLED in place of HAL_PERIPH_ENABLE_PRX
boolean truth rather than defines, and simplifies code
2023-06-08 11:53:01 +10:00
bugobliterator 8ac9480e3d waf: add support for semaphores around allocate blocks in libcanard 2023-06-08 10:15:50 +10:00
Ryan Friedman 2750a1ad6f waf: Only enable whitelist if compiling with G++
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-06-05 09:09:13 +10:00
Ryan Friedman fd10bc35f0 waf: Fix disable werror to actually work
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-06-05 09:09:13 +10:00
Ryan Friedman 819f93b778 waf: Enable werror on sitl for gcc
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-06-05 09:09:13 +10:00
Ryan Friedman 17ba7180d1 waf: Enable Werror for gcc 11.3.0
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-06-05 09:09:13 +10:00
Nicholas Kruzan e1f50fadd7 Tools: new mcu: esp32s3 2023-05-26 10:54:01 -07:00
Nicholas Kruzan d16cde3b31 Tools: make esp32.py more flexible 2023-05-26 10:54:01 -07:00
Nicholas Kruzan 7a9ceb7241 Tools: move esp32 specific idf build stuff to subfolder 2023-05-26 10:54:01 -07:00
Peter Barker 0d38362c1a waf: warn on missing declarations in SITL 2023-05-20 17:28:08 +10:00
Peter Barker b051b0d24b waf: add --enable-scripting option 2023-05-16 10:31:01 +10:00
Peter Barker 537fc19bb5 AP_HAL_ChibiOS: do not build ChibiOS with debug symbols unless debug build
debug symbols subtly change the compiler output which can lead to problems with repeatable builds
2023-05-16 09:55:47 +10:00
Peter Barker 0da4e3c9f3 Tools: add and use AP_RCPROTOCOL_ENABLED 2023-05-16 09:16:37 +10:00
Tom Pittenger a47e125c1f Tools: add ./waf --upload-force arg to allow uploader.py to do --force 2023-05-12 07:14:52 +10:00
Tom Pittenger 3b9c2bb185 Tools: WSL2 python.exe uploader.py stdout to be unbuffered via -u 2023-05-12 07:12:07 +10:00
Peter Barker 52d5fbad39 waf: SITL: define bus+addr for LP5562 2023-05-11 11:08:50 +10:00
Andrew Tridgell 91496a1e22 waf: require python 3.8.0 or later
for 4.5.x we no longer support py2
2023-05-05 08:54:03 +10:00
David Buzz c947ce3be3 Tools: fix the HAL double define 2023-05-02 14:38:03 +10:00
David Buzz f1af8bae0d Tools: on esp32 force constants to single-precision like chibios port does. 2023-05-02 14:38:03 +10:00
Andrew Tridgell 775f12387c waf: added -g option to configure
this adds debug symbolds to the build without enabling other debug
code. This is needed for analysing watchdog crash dumps
2023-05-02 10:38:24 +10:00
Andy Piper ae04200fa0 ardupilotwaf: print linker memory map after linking on boards with external flash 2023-04-28 08:31:15 +10:00
bugobliterator 6330c493ae waf: place ROMFS in external flash 2023-04-26 18:04:00 +10:00
bugobliterator db09173ca9 waf: add external flash used size for mixed flash use 2023-04-26 18:04:00 +10:00
Andrew Tridgell 52481e8355 waf: require gcc 10.2 or later for ChibiOS 2023-04-25 11:29:28 +10:00
Peter Barker 0d8512cdfb Tools: tidy external baro probing 2023-04-23 08:28:55 +10:00
Tom Pittenger 8a530ee0a6 Tools: move AP_KDECAN build to AP_Vehicle 2023-04-17 11:52:52 +10:00
Andrew Tridgell 5c3d464754 waf: support extra C and C++ flags on a per library basis 2023-04-11 12:18:29 +10:00
Andrew Tridgell 402de293d6 Tools: text messages and more defines 2023-04-11 10:31:31 +10:00
Andrew Tridgell c53e5eaafc Tools: cleanup more defines and classes 2023-04-11 10:31:31 +10:00
Andrew Tridgell 6944e73c57 Tools: fixed build of CPUInfo and other tools 2023-04-10 16:48:50 +10:00
Andrew Tridgell 47a73d2c8f waf: fixed build with CANFD and TAO for sitl_periph_gps 2023-04-10 14:46:54 +10:00
Andrew Tridgell cb4b27042c waf: build sitl periph GPS as 64 bit 2023-04-10 14:46:54 +10:00
Andrew Tridgell 85d4024e64 waf: allow for 64 bit CAN builds 2023-04-10 14:46:54 +10:00
Andrew Tridgell 75ed340efa waf: rename UAVCAN to DroneCAN 2023-04-08 07:11:23 +10:00
Andrew Tridgell 0c3c379f69 Tools: remove references to modules/uavcan 2023-04-08 07:11:23 +10:00
Andy Piper c7bd87ce33 waf: disable watchdogs on debug builds 2023-03-29 20:49:40 +11:00
bugobliterator 56068e65c6 waf: add support for multithreaded register/unregister of DroneCAN handlers 2023-03-29 17:16:39 +11:00
bugobliterator 50bfa516bc waf: add support for dronecan on linux 2023-03-29 17:16:39 +11:00
bugobliterator 0e80802f69 waf: replace libuavcan with libcanard for vehicle builds 2023-03-29 17:16:39 +11:00
Andrew Tridgell 7e3b538b16 waf: added --board-start-time configure option 2023-03-24 08:31:25 +11:00
Ryan Friedman 74e7703288 waf: Remove unused XRCE_DEPENDENCIES
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-03-22 09:22:36 +11:00
Ryan Friedman c7cac9abae waf: Add building DDS client to waf
* Had to ignore pre-commit hooks for isort and mypy since there are unrelated broken issues in the file

Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
Co-authored-by: Arsh Pratap <arshpratapofficial@gmail.com>
Co-authored-by: Andrew Tridgell <andrew@tridgell.net>
2023-03-22 09:22:36 +11:00
Peter Barker 7995bc5175 Tools: add and use option to compile SLCAN support out of code 2023-03-15 19:08:09 +11:00
Peter Barker 956b66f1f2 Tools: specify compass feature enables for periph in chibios_hwdef.py 2023-03-12 09:35:35 +11:00
Peter Barker f5cc7b206d Tools: rename HAL_SCHEDULER_ENABLED to AP_SCHEDULER_ENABLED
there's AP_HAL::Scheduler which confuses this
2023-02-28 11:26:04 +11:00
Peter Barker debb5c24b3 Tools: add waf argument to get consistent builds 2023-02-17 20:48:45 +11:00
Peter Barker d08e3dec8a Tools: add simple CSV reader 2023-01-17 11:21:48 +11:00
Andrew Tridgell 6d2e060deb waf: add -fcheck-new to g++ build
this ensures the compiler doesn't assume that new always returns a
non-NULL value. Without this the compiler may remove the error path in
code like this:

```
MyObject *x = new MyObject;
if (x == nullptr) {
  ::printf("Alloc failed\n");
}
```

the reason it can do this is the new operator is marked as throwing an
exception on failure, which means the error path is unreachable. As we
don't have C++ exceptions in ArduPilot could (and do!) have code that
ends up losing protection against allocation failures
2023-01-09 15:04:22 +11:00
Peter Barker 343b72dc32 waf: whitelist AP_LandingGear_config.h for vehicle-dependant macros 2022-12-14 18:30:23 +11:00