bugobliterator
9eb3a976bc
waf: allow build with ardupilot as a module
2021-12-20 12:47:25 +11:00
Nick Exton
5f74333559
waf: only enable -Wsizeof-pointer-div for gcc v8.4 or greater
...
The -Wsizeof-pointer-div option doesn't exist in gcc v7.5, which is the
version used by Ubuntu 18.04 LTS. It does exist in v8.4.
2021-11-26 11:46:04 +11:00
Peter Barker
a93da420c8
waf: make maybe-uninitialised and duplicated-cond errors
2021-11-24 18:26:17 +11:00
Peter Barker
a2961ede8f
waf: add -Wsizeof-pointer-div
2021-11-24 18:26:17 +11:00
Peter Barker
8ae1a58eae
Tools: move from ENABLE_SCRIPTING to AP_SCRIPTING_ENABLED
2021-11-15 20:27:40 +11:00
Peter Barker
b83cf3a431
waf: ensure ENABLE_SCRIPTING is always defined
2021-11-15 20:27:40 +11:00
Buzz
228fafeffe
Tools: add esp32 support
...
see libraries/AP_HAL_ESP32/README.md for more.
Author: Charles Villard <charlesvillard10@gmail.com>
Author: Buzz <davidbuzz@gmail.com>
2021-11-01 17:40:31 +11:00
bugobliterator
eee7e6cadf
waf: add defines for use in CrashCatcher Flash dump
2021-10-30 19:24:57 +11:00
bugobliterator
2223698c47
waf: don't build libuavcan library for AP_Periph builds
2021-10-14 20:13:06 +11:00
Peter Barker
376e7d2a21
Tools: add simulated RAMTRON device
2021-10-12 20:01:49 +11:00
Peter Barker
b2a7841672
Tools: allow for selection of Storage backend type at runtime
2021-10-05 10:16:54 +11:00
Pierre Kancir
040a5dffb9
Tools: fix missing warning on Clang
2021-09-30 08:22:40 +10:00
Josh Henderson
27bb200644
Tools: add sitl_32bit board type for sim_vehicle & autotests
2021-09-28 09:15:11 +10:00
Peter Barker
76e2db952b
Tools: move from HAL_NO_GCS to HAL_GCS_ENABLED
2021-09-22 21:37:00 +10:00
Pierre Kancir
41788d7b2e
Tools: add more compilation warning flags
2021-09-22 18:06:48 +10:00
bugobliterator
b8749b776a
waf: configure compileCommands json based on the configured board
2021-09-22 17:35:31 +10:00
Mohammad Hefny
705acb26c6
Tools: define obal board
2021-09-10 08:17:37 +10:00
bugobliterator
5940cfac8a
waf: move SRCROOT env variable setting to common Board class
2021-09-01 17:10:53 +10:00
Siddharth Purohit
f15f5e9334
waf: create separate image sections for internal and external flash
2021-09-01 17:10:53 +10:00
Peter Barker
784d1ddf7c
waf: check for AP_PERIPH define in hwdef includes
2021-08-25 10:09:23 +10:00
Andrew Tridgell
54d92551d1
waf: add files from ROMFS_custom to ROMFS
...
this allows for lua scripts in the root of the source tree as ROMFS_custom/scripts/*.lua
it also allows for any other custom data files that may be
needed. This is cleaner for custom scripts than having the files in
AP_HAL_ChibiOS/hwdef/BOARD/scripts, and allows for the same scripts
working in SITL, Linux and ChibiOS
2021-08-03 10:57:38 +10:00
Andrew Tridgell
791b043586
waf: added 10.2.1 gcc to whitelist of compilers for -Werror
2021-07-27 19:50:21 +10:00
Andrew Tridgell
66bad7b885
waf: added --assert-cc-version configure option
...
this will allow build_binaries.py to confirm it is using the right
compiler for each build
2021-07-27 19:50:21 +10:00
Siddharth Purohit
7a2c460496
waf: remove cast-align disable flags from CXXFLAGS
2021-07-15 07:50:12 +10:00
Peter Barker
d2be5231cb
ardupilotwaf: probe external baros in SITL
2021-07-14 17:46:15 +10:00
Siddharth Purohit
67ed54bfca
waf: add option to disable Watchdog
2021-07-14 15:18:42 +10:00
Andrew Tridgell
4f7630e29c
Tools: allow for double EKF build
2021-07-10 07:20:41 +10:00
Andrew Tridgell
5f45098044
waf: added --ekf-double configure option
2021-07-10 07:20:41 +10:00
Siddharth Purohit
51a6d3c16a
waf: only apply gsoap specific flags to gsoap sources
2021-07-07 18:57:25 +10:00
bugobliterator
f6715cdaa0
waf: generate SOAP wsdl into cpp code
2021-07-07 18:57:25 +10:00
Andrew Tridgell
895ab6c089
waf: added --postype-single option
...
for SITL with single precision postype_t
2021-06-24 21:34:30 +10:00
Peter Barker
31c345fc4b
Tools: add support for AP_Logger into AP_Periph
2021-06-08 09:57:55 +10:00
Pierre Kancir
d1cc8d2bf3
Waf: add coverage flags
2021-06-02 14:42:59 +10:00
Peter Barker
0d05bb9732
Revert "waf: list boards 1/line in case of board-not-found error"
...
This reverts commit 8ab74d9462
.
This broke the build server which parses the output of this
2021-05-21 10:59:56 +10:00
Peter Barker
98753ec6dc
Tools: move from HAL_NO_LOGGING to HAL_LOGGING_ENABLED
2021-05-19 17:38:47 +10:00
Peter Barker
8ab74d9462
waf: list boards 1/line in case of board-not-found error
...
This line is now way too long, and splitting it this way will allow the
output to be grepped for likely-looking board names.
2021-05-18 10:47:37 +10:00
Andy Piper
5eca0c61c4
waf: add support for --enable-stats
2021-04-21 17:14:11 +10:00
Andrew Tridgell
5304dfe213
waf: set NDEBUG define to avoid assert issues
...
this avoids future assert() calls from affecting STM32 HAL_ChibiOS
builds
2021-03-30 11:05:13 +11:00
Pierre Kancir
805493c854
ardupilotwaf: use dynamic generation for ap_periph board name
2021-01-22 05:42:12 +11:00
bugobliterator
9e15b5785b
ardupilotwaf: fix spec args as distcc doesn't like it
2021-01-20 19:21:14 +11:00
Andrew Tridgell
bd9dd7ff4c
Tools: added vnav linux target
2021-01-20 10:06:45 +11:00
Andrew Tridgell
eaf7e7354a
Tools: added locations.txt to ROMFS for SITL
2021-01-01 17:30:32 +11:00
Andrew Tridgell
ce95b7e81a
waf: added --enable-memory-guard option
2020-11-18 17:14:43 +11:00
Michael du Breuil
960437d446
Tools: Add the SFML configuration flags as needed for joysticks
2020-11-13 15:38:22 +11:00
Andrew Tridgell
0c1d665818
waf: support no-gcs and DAL builds
2020-11-10 16:15:45 +11:00
bugobliterator
48b59973b5
waf: add sitl_gps support to simulate AP_Periph GPS
2020-11-04 19:59:40 +11:00
Andrew Tridgell
39f25fc0f4
Tools: added models to ROMFS in SITL
2020-10-28 14:20:44 +11:00
bugobliterator
e49891d605
Tools: waf: remove extraneous frame-larger-than warning
2020-10-08 09:31:35 +11:00
Andrew Tridgell
7726848a50
waf: lock in zero errors for gcc9
2020-09-22 08:07:23 +10:00
Andrew Tridgell
3da00b482e
waf: enable -Werror for whitelisted compilers on ChibiOS builds
2020-09-15 09:40:03 +10:00
Peter Barker
0bb44ba933
waf: print compiler version as part of configure
2020-09-14 18:11:31 +10:00
Peter Barker
5c22e9e105
Revert "Tools: make non DEBUG SITL use -march=native"
...
This reverts commit 85b599b2d7
.
This breaks the cygwin binaries that MissionPlanner uses for simulation
2020-09-14 11:19:11 +10:00
Pierre Kancir
85b599b2d7
Tools: make non DEBUG SITL use -march=native
2020-09-10 15:16:18 +10:00
Andrew Tridgell
844d2bf7ff
waf: enable MSP when we enable OSD
2020-09-02 05:56:46 +10:00
Andrew Tridgell
6f04b4a5ec
waf: added --osd-fonts configure option
...
allows for --osd without fonts
2020-09-02 05:56:46 +10:00
Andrew Tridgell
7c579c4814
waf: added --osd configure option
...
to allow boards with no builtin OSD to use MSP OSD
2020-09-02 05:56:46 +10:00
Siddharth Purohit
4e17f8a23e
waf: add CANManager library and use uavcan agnostic names CAN vars
2020-08-19 17:31:09 +10:00
Peter Barker
904981a0c3
waf: build with -Werror=undef
2020-08-19 14:46:39 +10:00
Andrew Tridgell
5fdc400aab
waf: added -Werror=cast-align
2020-07-10 13:31:27 +10:00
Pierre Kancir
77b461fee4
Tools: add --debug-ekf to debug the EKF
2020-06-20 19:59:05 +10:00
Andrew Tridgell
f352b6d107
waf: added -Werror configure option
...
for building with error on any warning
2020-04-28 10:32:23 +10:00
Andy Piper
6245197204
waf: add support for the macOS clang address sanitizer
2020-04-15 07:22:49 +10:00
Andrew Tridgell
823d666bc2
waf: added --disable-ekf2 and --disable-ekf3 build options
...
allows for testing disables in SITL
2020-04-14 09:15:43 +10:00
Andrew Tridgell
9f2c689ec8
waf: fixed build to produce consistent binary
...
this ensures that optimisation levels are added regardless of whether
clean is run before or after a configure
2020-03-28 15:28:03 +11:00
Andrew Tridgell
4ca11224ba
waf: embed files from ROMFS directory in SITL
2020-03-28 15:28:03 +11:00
Andrew Tridgell
1b5e5de0d1
waf: prevent warnings about OSD_ENABLED in build
2020-03-28 15:28:03 +11:00
bugobliterator
21a6a5d061
waf: disable use of libc realloc for chibios
2020-03-24 10:32:14 +11:00
bugobliterator
51fa1773b4
waf: enable heap methods for everything but bootloader
2020-03-24 10:32:14 +11:00
Andrew Tridgell
de791682e9
waf: fixed build on cygwin
...
this fixes a link error on cygwin with the new DSP libs
2020-02-22 22:41:24 +11:00
Andy Piper
88f0c26636
Tools: add CMSIS DSP module to waf for M4 ChibiOS and control inclusion of FFT based on HAL_WITH_DSP and GYROFFT_ENABLED. target appropriate ARM cpus
...
sophisticated autotest for Gyro FFT
2020-02-22 11:15:37 +11:00
Michael du Breuil
ea3d8046da
waf: don't embed the sandbox.lua anymore
2020-02-18 10:38:09 +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
Andy Piper
abb7041c22
Tools: only enable -Wno-format-contains-nul if not clang
2019-12-01 10:27:51 +11:00
Peter Barker
a4a1536614
waf: make format errors fatal
2019-11-05 11:29:08 +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
c219d357f0
waf: allow for uncompressed ROMFS
...
this saves memory flashing bootloader on low memory boards
2019-10-24 22:03:43 +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
1635da1dd7
Tools: removed HAVE_OCLOEXEC check
2019-09-28 14:19:46 +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
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
29fe4241a8
waf: use C11 for C files
...
needed for AP_Periph
2019-08-27 10:29:56 +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
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
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
Peter Barker
85fe4ae6dd
waf: add sitl rgbled option
2019-05-21 09:21:56 +10: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
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
3c9646dfef
waf: allow hwdef.dat to override build optimization
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
Peter Barker
6137704032
Tools: ardupilotwaf: add -Werror=inconsistent-missing-override for clang
2019-02-20 19:23:54 +11: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
Michael du Breuil
7b259fb09f
ardupilotwaf: Enable heap for scripting builds
2018-12-31 19:25:23 -07: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
Peter Barker
8949cdd87a
Tools: waf: use ctx rather than build for fatal errors
2018-12-01 09:41:24 +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
Michael du Breuil
472cd9f48c
Tools: Add a runtime scripting check flag
2018-11-14 01:41:35 +00:00
Francisco Ferreira
2e3b4df47e
waf: don't fail on missing pkg-config
...
Also remove unneeded wrapper method and use standard waf
2018-11-13 10:30:34 +11:00
Francisco Ferreira
9bdbd37d98
waf: boards: use existing abstract class definition
...
Remove special case for removing ChibiOS base board class and use the pre-existing way
Make board name list order be case-insensitive
Also fix some space in blank lines
2018-11-13 10:30:34 +11:00
Francisco Ferreira
1e036e4d4e
waf: boards: small change to use waf standard
2018-11-13 10:30:34 +11:00
Peter Barker
769192fed7
Tools: ardupilotwaf: make type narrowing an error
2018-11-09 15:49:35 +11:00
Michael du Breuil
645afbab82
ardupilotwaf: Add ROMFS for scripting
2018-10-30 16:17:03 -07:00
Andrew Tridgell
b3b5415081
waf: added --use-nuttx-iofw configure option
...
this allows building with the old NuttX based IO firmware. The default
is the ChibiOS based firmware
2018-10-30 13:00:48 +11:00
Peter Barker
6585b6036d
Tools: waf: add -Werror=return-type to all boards
2018-10-23 12:53:28 +11:00
Peter Barker
d4c3caf592
Tools: ardupilotwaf: add enable-math-check-indexes configure option
2018-10-19 08:46:43 +11:00
Andrew Tridgell
31548c983a
waf: ensure that C files get same ABI flags as C++
2018-10-09 10:08:52 +11:00
Michael du Breuil
33d4e09d60
Tools: Add lua source to waf
2018-10-09 10:08:52 +11:00
Michael du Breuil
580c9d6ad9
Tools: Add waf scripting configure option
2018-10-09 10:08:52 +11:00
Michael du Breuil
17103623eb
Tools: Pass ENABLE_SCRIPTING into the system
2018-10-09 10:08:52 +11:00
Francisco Ferreira
434afa268e
waf: change ChibiOS ld script path back to relative
...
Fixes #9461
2018-09-21 09:29:32 +01:00
Siddharth Purohit
56afc44c56
ardupilotwaf: add support for controllers with different arm cortex and related configs
2018-09-19 12:14:15 +10:00
Siddharth Purohit
6fee72b0c0
waf: add flags for F1 controller support and more debug features
2018-09-19 12:14:15 +10:00
Peter Barker
35330e8caa
Tools: ardupilotwaf: add -Werror=unused-result for all boards
2018-09-04 09:22:18 +10:00
Peter Barker
3a1afc4bf1
Tools: boards.py: make float-equals fatal in sitl
2018-08-28 09:54:47 +10:00
Peter Barker
5bd1f57a2a
Tools: ardupilotwaf: add -Werror=return-type to all boards
2018-08-21 20:34:01 +09:00
Andrew Tridgell
c5f3beb297
waf: added --enable-asserts option for ChibiOS
2018-08-03 13:44:59 +10:00
Andrew Tridgell
655828d2f8
waf: use wildcard OSD fonts for SITL
2018-07-09 19:41:56 +10:00
Andrew Tridgell
f78b84805c
waf: don't generate hex files if intelhex module not installed
2018-07-02 12:47:58 +10:00
Andrew Tridgell
8ba137bd9a
waf: moved ROMFS embed script into waf folder
2018-07-02 10:43:48 +10:00