Andrew Tridgell
a9455ec3d3
waf: fixed app signature in elf files
...
this fixes an issue when developing for ChibiOS AP_Periph targets
where loading the elf file in gdb doesn't allow it to run as it
doesn't have the correct AP_Periph signature (crc, board type etc)
This patch modifies the elf file to fill in the signature, so when you
load in gdb the bootloader will be able to run the signature checks
and load the firmware
2024-09-10 12:33:45 +10:00
Willian Galvani
4ec023ac1a
Tools: ardupilotwaf: allow automatic upload to BlueOS
2024-08-27 10:25:35 +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
Andrew Tridgell
792fdc2fb8
Tools: specify pymonocypher version in more places
...
and confirm version when running tools
2024-05-19 10:07:54 +10:00
Andrew Tridgell
c097cd7fb9
waf: cope with CI python oddity
2024-05-08 18:28:59 +10:00
Andrew Tridgell
fee5374cb6
Tools: only produce _with_bl.hex not *.hex for vehicle firmware
...
if we are producing _with_bl.hex then don't also build *.hex as it can
confuse users who think they should flash *.hex with a DFU flashing
tool
2024-02-27 11:24:24 +11:00
Andrew Tridgell
4ad1231c8f
waf: prevent use of C++ library calls that can cause exceptions
...
this cleans up our blacklist of library functions, and ensures there
can be no accidential use of std:: functions that cause exceptions in
flight code on HAL_ChibiOS
2024-02-21 12:09:48 +11:00
Andrew Tridgell
743b1262a0
waf: removed old UAVCAN defines
2024-01-25 11:44:02 +11:00
Andrew Tridgell
ec9a8d7167
waf: CubePilot-PPPGW needs fiprintf
2024-01-21 12:30:08 +11:00
Andrew Tridgell
a53be122db
waf: removed lwip source paths in chibios class
2024-01-03 12:14:47 +11:00
Andrew Tridgell
a5fee135b0
waf: added paths for PPP build
2024-01-03 12:14:47 +11:00
Andrew Tridgell
23e67f7b53
waf: enable CAN deadlines in AP_Periph
2023-12-19 18:56:46 +11:00
Andrew Tridgell
8f2911d0e2
waf: fix dependency on lwip code
2023-12-11 18:00:38 +11:00
Peter Barker
576dc9d05f
Tools: clamp empy to version 3
...
API and syntax hanges make 4 problematic
2023-12-03 17:08:00 +11:00
Andrew Tridgell
3623d20479
waf: enable CANARD_MULTI_IFACE on AP_Periph if more than one interface
2023-09-05 06:56:51 +10:00
Pierre Kancir
9d76d1e3df
Tools: Test for membership should be `not in`
2023-09-02 13:27:25 +10:00
Andrew Tridgell
2eca7224d3
waf: wrap _sbrk to prevent its use
...
while _sbrk isn't used now, this will prevent a repeat of the bug in
PR 24218
2023-07-05 21:46:36 +10:00
Andrew Tridgell
37253c13d9
waf: wrap newlib alloc functions on ChibiOS
...
this prevents scripting and string library functions from calling sbrk
based alloction functions that are not thread safe
2023-07-05 07:13:39 +10:00
Andrew Tridgell
1055c5f1c6
waf: fixed dependency of ChibiOS build on compiler flags
...
this adds a chibios_flags.h which contains the flags we pass to the
ChibiOS make, which allows us to have a make level dependency on the
flags
this fixes (among other things) the build of copter followed by
bootloader for SPRacingH7
2023-06-20 18:08:31 +10:00
bugobliterator
8ac9480e3d
waf: add support for semaphores around allocate blocks in libcanard
2023-06-08 10:15:50 +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
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
Andrew Tridgell
402de293d6
Tools: text messages and more defines
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
75ed340efa
waf: rename UAVCAN to DroneCAN
2023-04-08 07:11:23 +10:00
bugobliterator
56068e65c6
waf: add support for multithreaded register/unregister of DroneCAN handlers
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
bugobliterator
e4ada09fc3
waf: use bld for dronecangen export headers for including
2022-11-16 18:05:59 +11:00
Tom Pittenger
1944894b76
Tools: remove warning for WSL2 --upload on python.exe 3.10.x, it works fine
2022-10-07 09:35:20 -07:00
Andrew Tridgell
7a57fc8c5d
waf: ensure we don't try to use non-implemented functions
2022-10-06 10:45:49 +11:00
Andrew Tridgell
b55ee297d8
waf: allow setting signing key as part of configure with --private-key
...
makes for faster development with signed bootloaders
2022-09-05 12:35:37 +10:00
bugobliterator
3f951c3e0b
waf: add support for secure bootloader
2022-08-30 10:51:06 +10:00
bugobliterator
0c78f8bac2
AP_HAL_ChibiOS: add support for booting into DFU
2022-08-30 10:51:06 +10:00
bugobliterator
3c30991153
waf: ensure we don't apply app desc step on BL
2022-08-16 16:49:30 +10:00
Andrew Tridgell
df75c1796a
waf: added --enable-check-firmware option
2022-08-15 09:18:34 +10:00
Tom Pittenger
c60f7bff91
Tools: Enable uploader.py and waf --upload to work on WSL2
2022-07-22 09:12:01 +10:00
Pierre Kancir
2cca370a74
Tools: ardupilotwaf: remove useless shebang on non exec files
2022-06-08 08:16:42 +09:00
Siddharth Purohit
5e54871d82
ardupilotwaf: set flags for CANFD support as applicable
2022-03-11 18:13:54 +11:00
Andy Piper
fdaaa589e5
waf: move external flash binaries to regular name to aid publishing
2022-03-01 11:15:52 +11:00
Andy Piper
2beb9cfc7d
waf: rename EXTERNAL_PROG_FLASH_MB to EXT_FLASH_SIZE_MB
2022-02-09 12:47:55 +00:00
Peter Barker
43b4f86485
waf: use GIT_VERSION from env if available
...
This allows for reproducible builds to be produced
2022-01-18 11:30:41 +11:00
Peter Barker
d6f4f54c0a
Tools: include brand name and manufacturer in APJ file, use for manifest
2022-01-07 22:46:52 +11:00
bugobliterator
9eb3a976bc
waf: allow build with ardupilot as a module
2021-12-20 12:47:25 +11:00
bugobliterator
6adfcd4957
waf: disable building CrashCatcher for non 2M boards
2021-10-30 19:24:57 +11:00
bugobliterator
eee7e6cadf
waf: add defines for use in CrashCatcher Flash dump
2021-10-30 19:24:57 +11:00
bugobliterator
c5dd02fb2b
waf: compile in crash catcher library
2021-10-30 19:24:57 +11:00
Andrew Tridgell
00491275e0
waf: added image_maxsize to apj files
...
this allows the px4_uploader.py script to load apj files
2021-10-12 15:47:51 +11:00