259 Commits

Author SHA1 Message Date
Peter Barker
805409e3cb waf: add boards dynamically for SITL (i.e. hwdefs) 2026-01-14 09:43:22 +11:00
Thomas Watson
5c15ae261c ardupilotwaf: force versions when consistent builds are enabled
Avoids the need to specify manually in environment variables.
2025-11-04 12:55:57 +11:00
Thomas Watson
1c74832764 ardupilotwaf: memorize consistent build flag in configure stage 2025-11-04 12:55:57 +11:00
Thomas Watson
90309858cb ardupilotwaf: only use gccdeps source header dependency scanner
There is essentially no reason to use the slower default, the option to
do so was only added many years ago to smooth working with older
branches which did use the default.

But those haven't been around for a long time so just delete the option.
2025-11-04 12:04:06 +11:00
Peter Barker
ddcee62551 waf: create an abstract base class for linux boards
This resolves a some oddness where the "linux" target you might use when configuring is also (sort of) the same class used when inheriting when creating a Linux board (e.g. bbbmini).

The "linux" hwdef has gained all of the bits which makes a build that works on your laptop work.
2025-11-01 10:46:28 -05:00
Peter Barker
7e41eb4bdd waf: suppress help output on all-lower-case-and-dashes options 2025-07-07 19:33:21 -05:00
Peter Barker
f6de8ae66f waf: accept entirely lower case values for BUILD_OPTIONS options 2025-07-07 19:33:21 -05:00
Thomas Watson
98fe3547fa ardupilotwaf: drop subprocess monkeypatching for unsupported Python
Not needed now that minimum Python is 3.8.
2025-07-06 20:01:10 -05:00
Thomas Watson
6a0893479f ardupilotwaf: belt-and-suspenders Python version check
Gives a comprehensible error message in case we start using 3.8-only
features in the main `wscript`.

Keep the check in `wscript` in the somewhat unlikely case that another
Python is discovered by waf.
2025-07-06 20:01:10 -05:00
Christian Clauss
dc9446af62 wscript: Add # flake8: noqa linter directive 2025-06-20 20:30:15 +10:00
Thomas Watson
8ef0c22295 ardupilotwaf: require minimum Python 3.8
Makes the comment accurate. Python 3.8 is shipped in Ubuntu 20.04 focal
by default so we can't move past until that goes EOL.
2025-06-19 21:27:25 +10:00
Stephen Dade
850c124e19 Waf: Allow DDS to be enabled via hwdef 2025-05-21 17:20:38 +10:00
Pierre Kancir
bf026e8242 wscript: print CI group tag on CI 2025-05-07 10:51:32 +10:00
Andrew Tridgell
62fadb915c waf: allow --embed-XXX on configure
allows embedding of any lua driver or applet in the tree into ROMFS
2025-05-06 13:58:34 +10:00
Peter Barker
41b5f796b5 waf: remove Python print_function import 2025-02-26 10:06:11 +11:00
Huibean
57e98e2b16 Waf:add --vs-launch 2025-01-22 18:23:57 +11:00
Thomas Watson
a93f51d631 wscript: only build littlefs if called for 2025-01-21 11:10:31 +11:00
Andy Piper
da74370fdd wscript: address review comments 2025-01-21 11:10:31 +11:00
Andy Piper
a2de66b8d2 wscript: add littlefs build option for sitl 2025-01-21 11:10:31 +11:00
Andy Piper
35b6dd9814 wscript: build in littlefs 2025-01-21 11:10:31 +11:00
bugobliterator
93d99ece0a Tools:waf: add option to build IOMCU firmware with profiled support 2024-11-20 19:12:44 +11:00
Ryan Friedman
0725109d1c waf: Fail if custom hwdef file doesn't exist
Signed-off-by: Ryan Friedman <25047695+Ryanf55@users.noreply.github.com>
2024-10-27 11:42:28 +11: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
bugobliterator
b93ba1ae68 waf: add support for generating compile_commands.json 2024-06-19 17:11: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
c097cd7fb9 waf: cope with CI python oddity 2024-05-08 18:28:59 +10:00
Peter Barker
7f1a551364 waf: factor out a vehicles array
most elements duplicated for sitl, linux and ChibiOS
2024-04-17 18:10:24 +10:00
Oleksiy Protas
4e21dbcc0b waf: Detect board class by inheritance instead of naming 2024-04-06 09:45:01 +11:00
Andrew Tridgell
38b5d942fd waf: avoid trying to compile .github directory as DSDL 2024-02-11 16:48:52 +11:00
Joshua Henderson
f1ca5bea49 waf : wscript add submoduleclean & submodule_force_clean 2024-01-17 07:41:44 +11:00
Andrew Tridgell
d26530c892 waf: added --enable-ppp option 2024-01-03 12:14:47 +11:00
Andrew Tridgell
468c532290 waf: recurse info AP_Networking 2024-01-03 12:14:47 +11:00
Peter Barker
aa9bbd0fcb waf: invert ekf2-disable command-line option 2023-11-27 09:05:08 +11:00
Andrew Tridgell
aec605b020 waf: enable networking by default when supported, and disable with --disable-networking 2023-11-17 10:54:24 -08:00
Ryan Friedman
c09352102e waf: Improve help text for network tests
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-11-15 21:30:27 -08:00
Andrew Tridgell
c4cf3268cb waf: added --enable-networking and --enable-networking-tests 2023-11-15 12:43:41 -08:00
Andrew Tridgell
1d05196b52 waf: moved SKETCHBOOK to AP_BUILD_ROOT in ap_version.h 2023-10-25 09:50:08 +11:00
Michelle Rossouw
a900921f95 wscript: Add recurse into SITL library 2023-08-12 10:49:02 +10:00
Andy Piper
ec02ac9378 wscript: recurse into AP_HAL_SITL 2023-08-02 16:22:59 +01:00
Peter Barker
46b262cb32 waf: tidy interpretation of -Werror 2023-08-01 11:31:07 +10:00
Peter Barker
35d7561c50 waf: allow AP_SCRIPTING_ENABLED to come from hwdef files 2023-06-09 16:10:52 +10:00
Ryan Friedman
a32f429e23 waf: Preserve default to werr off on CLI
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
ae20754ab9 waf: Enable Werror by default and add option to disable it
Signed-off-by: Ryan Friedman <ryanfriedman5410+github@gmail.com>
2023-06-05 09:09:13 +10:00
Randy Mackay
49b9b0393e waf: revert run Tools/gittools/submodule-sync.sh at distclean
This reverts commit 22c1470aca
2023-05-31 18:44:35 +10:00
bugobliterator
22c1470aca waf: also run Tools/gittools/submodule-sync.sh at distclean 2023-05-26 10:50:04 -07: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
fbf63ce601 waf: reduce requirement for Python back to 3.6.9
so bionic can continue to function
2023-05-09 11:09:25 +10:00
Andrew Tridgell
3371296e39 waf: use python3 even if /usr/bin/python is v2 2023-05-06 10:09:04 +10:00