Commit Graph

417 Commits

Author SHA1 Message Date
Peter Barker
613aa6028f waf: move setting of -cl-single-precision-constant into cxx-flags block
we have two separate blocks, one for setting c flags, one for setting cxx flags.

Move cxx set into correct area
2025-02-04 11:55:39 +11:00
Shiv Tyagi
c324143866 Tools: create and use AP_PERIPH_RANGEFINDER_ENABLED 2025-02-03 10:06:04 +11:00
Shiv Tyagi
dba4136f95 Tools: create and use AP_PERIPH_BARO_ENABLED 2025-01-31 08:25:28 +11:00
Shiv Tyagi
1060d6703b Tools: create and use AP_PERIPH_MAG_ENABLED 2025-01-30 08:49:03 +11:00
Thomas Watson
46e081aea1 ardupilotwaf: add -fno-math-errno to ChibiOS boards
Allows better use of math instructions as opposed to calling library
functions to implement math like `sqrt`. This saves flash and increases
speed. ArduPilot does not use EDOM or ERANGE anyway.

Might cause issues with malloc errno:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88576 but ArduPilot does
not check for ENOMEM or use errno much anyway.
2025-01-28 11:54:34 +11:00
Peter Barker
b5ce6f1efd waf: disable battery-balance features on simulated periphs 2025-01-28 09:11:21 +11:00
Peter Barker
b3bc0528e0 Tools: create and use AP_PERIPH_BATTERY_ENABLED
... and AP_PERIPH_BATTERY_BALANCE_ENABLED while we're here
2025-01-28 09:11:21 +11:00
Peter Barker
04786200c3 Tools: create AP_PERIPH_GPS_ENABLED 2025-01-23 17:47:58 +11:00
Thomas Watson
125c64074c ardupilotwaf: fix ESP32 memory zero comment
Followup to PR #29005 (d9e5f2d8a7).
2025-01-20 18:29:35 -06:00
Thomas Watson
949e6bcbba Tools: waf: have boards call superclass initializer
Allows future variables to propagate down to board subclasses.
only build littlefs when hwdef or board calls for it
Avoids issues with build on QURT due to QURT's poor POSIX
implementation.
2025-01-21 11:10:31 +11:00
Andy Piper
ce7f4db7ee waf: optionally add littlefs to sitl build options 2025-01-21 11:10:31 +11:00
Thomas Watson
2d9865760d Tools: ensure ESP32 malloc is wrapped to zero memory
The relevant linker flag needed to be put in the CMake script.
2025-01-05 10:27:32 +11:00
Rhys Mainwaring
3235a0692c Tools: ardupilotwaf: esp32 does not have hardware double
Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-12-26 19:59:15 -06:00
Thomas Watson
f964d3aed3 waf: add defaults.parm support to esp32 using ROMFS
And drop broken remnants of code using apj_tool to do it.
2024-12-24 10:50:21 +11:00
Andrew Tridgell
60f6a9deec waf: enable IMU in simulated AP_Periph 2024-12-10 09:29:37 +11:00
bugobliterator
93d99ece0a Tools:waf: add option to build IOMCU firmware with profiled support 2024-11-20 19:12:44 +11:00
Peter Barker
7ee9a337e1 Tools: waf: build rally and fencepoint protocols in on SITL
so we continue to autotest them
2024-11-18 08:34:08 +11:00
Peter Barker
8a58642cd1 waf: make initialiser reordering fatal
we were bitten by a nasty bug in CAN because of constructor reordering
2024-11-13 06:40:37 +11:00
Willian Galvani
64b9d0ebea Tools: ardupilotwaf: add entry for 64bit versions of Navigator 2024-10-02 06:18:32 +10:00
ARg
f3a39105b9 Tools: Migration of ESP32 targets from idf 4.4 to 5.3 consisting of:
- Updated installation scripts of esp-idf toolchain;
- Adding ESP_PLATFORM define to ESP32 targets, it is required to compile FreeRTOS with idf 5.3;
2024-10-01 09:25:35 +10:00
Peter Barker
35a8a04787 waf: add -Werror=use-after-free to CFLAGS and CXXFLAGS 2024-09-19 11:42:50 +10:00
Andrew Tridgell
b2b9226863 waf: allow any custom build option to be specified in waf configure
this makes it easy to configure with any option from build_options.py
2024-09-11 16:11:22 +10:00
Iampete1
d5a125a2a9 Tools: ardupilotwaf: boards: enable extended esc telem on sitl_periph_universal 2024-08-20 09:14:11 +10:00
Peter Barker
535f806c96 Tools: make include file mistakes nicer to interpret 2024-07-30 09:57:01 +10:00
Andrew Tridgell
af34df2b9f waf: added QURT board target 2024-07-12 15:56:48 +10:00
Andrew Tridgell
24a6e6bfa1 waf: Revert "waf: use debug option 3 which records defines as well"
this change made use of gdb so slow it is completely unusable for
ArduPilot. Far too many macros, loading gdb takes forever
2024-07-11 14:20:04 +10:00
Andrew Tridgell
096cfdcb61 waf: fixed ESP32 build 2024-07-11 09:28:17 +10:00
Andrew Tridgell
8be0a64155 waf: don't mark esp32 as CYGWIN_BUILD 2024-07-07 07:11:59 +10:00
Andrew Tridgell
039367e340 Tools: wrap _malloc_r on cygwin
fixes dual allocation heap bug
See https://cygwin.com/pipermail/cygwin/2000-July/038916.html
2024-07-07 07:11:59 +10:00
bugobliterator
4260acb21a waf: use debug option 3 which records defines as well 2024-07-05 14:16:27 +10:00
Michelle Rossouw
7e5810a746 Tools: Added option to set environment variable to not add the compile_commands.json to VSCode's c_cpp_properties.json 2024-06-11 14:29:06 +10:00
Peter Barker
364452ffc8 autotest: add test for DroneCAN battery handling 2024-06-11 09:31:46 +10:00
Andrew Tridgell
93f1bb576b waf: added --enable-new-checking option
this allows CI to check for violations of new, calling without
NEW_NOTHROW
2024-06-04 09:20:21 +10:00
Andrew Tridgell
1ad0c069ae waf: fixed cygwin build 2024-06-04 09:20:21 +10:00
Andrew Tridgell
aff9175328 waf: moved elf symbol checking to ardupilotwaf
not chibios specific
2024-06-04 09:20:21 +10:00
Andrew Tridgell
07b5ffcc58 waf: removed -fcheck-new and added link checks
check for use of new without std::nothrow
2024-06-04 09:20:21 +10:00
Peter Barker
720c8719dc waf: boards.py: use chibios_hwdef.py to get boards list 2024-05-28 10:25:39 +10:00
Bob Long
ead48b6737 Tools: fix handling of include files for Periph
This fix scans all the include files in a hwdef, not just one on the
first line.
2024-05-24 10:40:46 +10:00
Iampete1
773fa73e75 Tools: ardupilotwaf: move setting of ROMFS flags for all boards to embed_ROMFS_files method 2024-05-14 10:05:51 +10:00
Rhys Mainwaring
513a6b6206 Tools: ardupilotwaf: use classic clang linker when compiling on macOS
- Fix issue where linker fails with Xcode 15.3.
- Add check for CC_VERSION.

Signed-off-by: Rhys Mainwaring <rhys.mainwaring@me.com>
2024-05-07 09:35:41 +10:00
Iampete1
8cb368de0c Tools: ardupilotwaf: boards: enable HAL_PERIPH_ENABLE_RPM_STREAM on sitl_periph_universal 2024-05-02 20:25:38 +10:00
muramura
4ef66dcf34 ardupilotwaf: change a word(NFC) 2024-04-10 14:20:04 +09:00
Oleksiy Protas
4e21dbcc0b waf: Detect board class by inheritance instead of naming 2024-04-06 09:45:01 +11:00
Peter Barker
a1a920ba78 waf: add and use AP_CUSTOMROTATIONS_ENABLED 2024-03-03 08:22:46 +11:00
Iampete1
ec762d5609 Tools: ardupilotwaf: boards: define HAL_HAVE_AP_ROMFS_EMBEDDED_LUA if lua files in ROMFS 2024-02-27 11:09:08 +11:00
Andrew Tridgell
c7a729b7f6 waf: fixed leading slashes in root of ROMFS 2024-02-22 07:43:16 +11:00
Andrew Tridgell
a3697b3d97 waf: added -Wno-psabi
the ABI change warnings for gcc 7.1 are not useful
2024-02-21 12:09:48 +11:00
Peter Barker
392aa8fd48 waf: remove richenpower special-case
we started to include this everywhere anyway
2024-02-20 19:35:50 +11:00
Peter Barker
a77df87b01 Tools: rename sim_periph_gps to sim_gps_universal, recreate sim_periph_gps 2024-01-16 12:16:35 +11:00
Andrew Tridgell
c7c0680352 waf: enable sim on hw for esp32 empty builds 2024-01-07 20:51:55 +11:00