Commit Graph

873 Commits

Author SHA1 Message Date
Siddharth Purohit 5e54871d82 ardupilotwaf: set flags for CANFD support as applicable 2022-03-11 18:13:54 +11:00
Iampete1 6ac661c6ce Tools: ardupilotwaf: add AP_CustomRotations 2022-03-02 18:16:42 +11:00
Andy Piper fdaaa589e5 waf: move external flash binaries to regular name to aid publishing 2022-03-01 11:15:52 +11:00
Andrew Tridgell ad88f3e1e8 waf: added --save-temps configure option
linking fails with this option, but the ii files are produced, which
is what is needed for diagnosing cache issues
2022-02-23 12:36:59 +11:00
Andrew Tridgell d07d5a7082 waf: removed g++ command line differences between similar boards
don't put board name on g++ command line
2022-02-22 12:13:19 +11:00
Andy Piper 3f7a726970 waf: add linker map on linking 2022-02-09 12:47:55 +00: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 410507d54d waf: include integer version of GIT_VERSION (hash) 2022-02-09 18:32:38 +11:00
Joshua Henderson b3e78e1e8d ardupilotwaf: grouped_program use nested dicts 2022-02-02 19:36:39 +11:00
Willian Galvani 2b9d56c252 Tools: embed default.param files for Linux boards 2022-02-01 17:35:26 +11:00
Peter Barker c056a7948d Tools: move Airspeed up to AP_Vehicle, provide dummy 2022-01-19 18:21:32 +11: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
Pierre Kancir d9c562cfae Tools: add HAL_COVERAGE_BUILD for coverage build 2022-01-12 12:31:56 +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
Joshua Henderson ac4304e2c4 Tool: ardupilotwaf fix duplicate reporting from build summary 2022-01-03 12:40:42 +11:00
Josh Henderson d410533424 Tools: fix Build_Summary when more than one targert 2021-12-28 10:27:10 +11:00
Josh Henderson 74fa47a3bb Tools: fix flash size reporting due to crash_log 2021-12-21 20:33:00 +11:00
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 854266dc78 ESP32: drop submodule and add script to get it as a clone and/or submodule
works with either a submodule setup or a 'clone' for either type of dev
2021-11-03 06:06:15 +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 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
Andy Piper 7daa276769 waf: stricter lua bindings build processing 2021-10-28 07:19:16 +11:00
Andy Piper 6672577f6e waf: make sure APM_BUILD_DIRECTORY is defined for APM_BUILD_COPTER_OR_HELI and lua 2021-10-26 11:42:12 +11:00
Randy Mackay 37dbbc7ed3 Tools: add AP_Torqeedo to ardupilotwaf.py 2021-10-19 01:30:51 -04: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
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
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
Gone4Dirt 7fab70b8f1 Waf: Modify build directory define if heli build command is given 2021-09-29 19:55:48 +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 948a0012c5 waf: fix build issue on cygwin after changes for external flash 2021-09-06 18:04:48 +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
Pierre Kancir 28706f5e23 Tools: link AP_FETtecOneWire 2021-08-13 16:22:37 +10:00
Andrew Tridgell fadadfb50e waf: avoid problem with custom build server
this happens on custom build server when building into a new directory
2021-08-10 21:34:36 +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
Iampete1 d2a14f4283 Tools/ardupilotwaf: make skipped summary warning red 2021-07-28 18:25:27 +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
bugobliterator a5d3dade67 waf: allow overriding uploader script with custom uploader script 2021-07-09 18:19:04 +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
Siddharth Purohit 5d435c762e waf: notify users that we have moved to using tool instead of tools 2021-07-07 17:31:09 +10:00
Andrew Tridgell d6088539b7 waf: use new syntax for chibios_hwdef.py 2021-07-01 09:33:16 +10:00
willpiper 15cd9d502d waf: added --extra-hwdef option 2021-07-01 09:33:16 +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
Andrew Tridgell a04e8746a4 waf: removed debug code
this was in to test cygwin ar behaviour on linux. It should not have
been committed.

Thanks to Andy for letting me know it broke MacOS
2021-04-23 05:50:23 +10:00
Andy Piper 5eca0c61c4 waf: add support for --enable-stats 2021-04-21 17:14:11 +10:00
Andrew Tridgell 878bd3f0fe waf: use /usr/bin/ar not arm-none-eabi-ar on cygwin
needed to allow for @FILE syntax for long arg lists
2021-04-20 18:43:20 +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
Andrew Tridgell b137f9e319 waf: fixed embed error on python2 2021-02-26 10:59:09 +11:00
bugobliterator 6d25b02508 waf: need to crc the padded bootloaders before embedding 2021-02-26 10:59:09 +11:00
Andrew Tridgell b012c472e1 waf: added crc to embedded data 2021-02-23 20:20:07 +11:00
Andy Piper 7aa1e2d63b waf: add AP_VideoTX module 2021-02-17 18:23:33 +11:00
Andrew Tridgell ee8e9e3289 waf: fixed handling of vehicle dependency check for abs paths
this fixes the use of vehicle dependent cpp files on the build server
2021-02-15 07:23:33 +11:00
Andrew Tridgell 3c825bdffc waf: make AP_NavEKF3_core.h a vehicle dependent include 2021-01-24 11:56:52 +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
Iampete1 5e00f5ae48 Tools: ardupilotwaf: ap_library: add genrated bindings to whitle list and add support for ends with whitle listing 2021-01-19 11:18:10 +11:00
Iampete1 8d7299d052 Tools: ardupilotwaf: ap_library.py: allow vehicle in build/ 2021-01-19 11:18:10 +11:00
Andrew Tridgell 5840d24ed9 Tools: build AP_ExternalAHRS 2021-01-05 21:13:12 +11:00
Andrew Tridgell eaf7e7354a Tools: added locations.txt to ROMFS for SITL 2021-01-01 17:30:32 +11:00
Pierre Kancir 60c6666941 Tools: ardupilotwaf: fix scripting inclusion on build_binaries.py 2020-12-23 22:52:52 +11:00
Randy Mackay 28e769a79e Tools: link AP_WheelEncoder for all vehicles 2020-12-01 14:01:17 +09: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 2e60fbc6d3 waf: fixed headers check 2020-11-10 16:15:45 +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
giacomo892 4eeccb61cd WAF: Add AP_OLC to build 2020-10-01 09:40:45 +10:00
Pierre Kancir ae29697504 Tools: build_summary: make binary path a string 2020-09-30 17:59:33 +10:00
Siddharth Purohit b27092c651 Tools: waf: don't do uavcan build config for AP_Periph 2020-09-24 12:32:19 +10: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 6b242bf1db waf: add flash_total to apj file 2020-09-10 07:41:25 +10:00
Pierre Kancir 2e60f361fa Tools: ardupilotwaf: remove '-Werror=suggest-override' from benchmark to prevent failure
this is due to the fact that gbenchmark header should be compatible with C++03 and then don't accept C++11 feature like override ...
2020-09-06 19:13:04 +10:00
Pierre Kancir 9d9cf2501a Tools: disable Gtest and testing on Gbenchmark build 2020-09-06 19:13:04 +10:00
Andrew Tridgell 689902cb69 waf: moved include of ap_config.h into configure step 2020-09-03 09:56:29 +10:00
Andrew Tridgell 24425b4155 waf: allow setup of double precision for some cpp files 2020-09-03 09:56:29 +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
yaapu b658edfa20 Tools: added MSP 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
Peter Barker b955be50af waf: build in AP_Generator directory 2020-07-03 08:21:42 +09:00
Pierre Kancir 77b461fee4 Tools: add --debug-ekf to debug the EKF 2020-06-20 19:59:05 +10:00
Andrew Tridgell a349a2f956 Tools: fixed SITL build 2020-05-16 10:39:14 +10:00
Andrew Tridgell c5c171b359 Tools: fixed scripting build with --out on configure line
thanks to Henry for noticing
2020-05-16 10:09:15 +10:00
Andrew Tridgell be812f490f waf: added AP_LIB_EXTRA_SOURCES
used to allow building of dynamically generated library components
2020-05-12 19:55:21 +10:00
Andy Piper d0cd494178 waf: add AP_RCTelemetry to build 2020-05-05 09:23:15 +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
bugobliterator 1f421edaf2 waf: chibios remove quotes from the default param filename 2020-04-10 07:04:21 +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
Randy Mackay dc537efabe Tools: add AP_ESC_Telem to build for all vehicles 2020-02-12 11:58:34 +09:00
Matt Lawrence e6f32f4572 AP_HAL_ChibiOS: Fix waf --default-parameters
If a defaults.parm file was present in the hwdef, waf ignored the --default-parameters=xyz.parm command line argument.  This will allow it to use that command line argument specified file.
2020-02-11 11:00:01 +11:00
Jaaaky fb7c5e09e5 Tools: chibios.py remove duplicate fread from wraplist 2020-01-28 08:48:29 +11:00
Andrew Tridgell 647aaf0575 waf: added AP_Stats to Sub 2020-01-16 20:36:54 +11:00
Andrew Tridgell c2ed419401 waf: build AP_Hott_Telem 2020-01-16 20:36:54 +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
Andrew Tridgell 82148607ee Tools: add USBID to generated apj file 2020-01-06 09:55:26 +11:00
Andy Piper 1b17955f6b waf: hack to let RunCam header enablement macro pass 2019-12-30 13:02:04 +11:00
Andy Piper 30878553d6 Tools: add AP_Camera to list of libraries
remove dummy Camera methods from Replay
add rcmapper to replay
make replay a vehicle
2019-12-30 13:02:04 +11:00
Andrew Tridgell a06da57f3e waf: fixed aligned size of bootloader in ROMFS 2019-12-23 21:46:33 +11:00
Oliver Walters 9a7b78d49d waf: added support for Piccolo CAN ESCs 2019-12-22 09:48:40 +11:00
Andy Piper abb7041c22 Tools: only enable -Wno-format-contains-nul if not clang 2019-12-01 10:27:51 +11:00
Andrew Tridgell 4ff2d744e7 waf: build AP_EFI 2019-11-17 20:10:54 +11:00
Peter Barker a4a1536614 waf: make format errors fatal 2019-11-05 11:29:08 +11:00
Andrew Tridgell ca00ca4dac waf: build AP_SerialLED 2019-11-04 13:01:59 +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 d00f4316e9 Tools: moved AC_PID dependency to core 2019-11-02 16:31:04 +11:00
Andrew Tridgell 4e33aff5d6 waf: fixed unnecessary nul termination of ROMFS 2019-10-25 21:36:55 +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
Andrew Tridgell c5afc3ff99 Tools: use crc_crc32() in app descriptor 2019-10-21 19:12:01 +11:00
Andrew Tridgell d572d630ed waf: added generation of app descriptor 2019-10-21 19:12:01 +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 c18098cdf4 waf: always build AP_ADSB
needed for singleton
2019-10-16 13:13:24 +11:00
Andy Piper 1d11fe5377 Tools: add --upload-port option to waf 2019-10-01 18:12:04 +10:00
Andrew Tridgell 1635da1dd7 Tools: removed HAVE_OCLOEXEC check 2019-09-28 14:19:46 +10:00
Peter Barker 84f6e49594 waf: cope with new format of gtest submodule 2019-09-24 14:30:13 +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
Andrew Tridgell c90b937972 waf: wrap more libc functions 2019-09-09 13:31:30 +10:00
Andrew Tridgell c2b06a3293 waf: wrap vsnprintf 2019-09-09 13:31:30 +10:00
Peter Barker 2273ffb267 waf: build in libraries/AP_NavEKF 2019-09-03 09:28:37 +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 da15fb988c waf: add a lot more wrapped functions
this allows us to catch accidential inclusion of libc functions that
we don't want
2019-08-27 15:40:43 +10:00
Andrew Tridgell abe53e1c9e waf: build AP_Filesystem 2019-08-27 15:40:43 +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 813694894d Tools: waf: add warning if bootloader not found 2019-08-26 11:08:11 +10:00
Peter Barker be173a9514 Tools: waf: stop adding -Wno-error=suggest-override for CAN boards 2019-08-14 16:33:29 +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
Siddharth Purohit 8de169b1ce waf: remove redundant src includes for libuavcan drivers 2019-07-08 12:18:29 +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
Julien Beraud 8a4553ba0a waf: fix lib link check
-llibrary_name is already part of the link flags at this point and
libname is "liblibrary_name" so it adds -lliblibrary_name instead which
is wrong
2019-06-14 18:52:57 -07: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
Andrew Tridgell d81bd6530c waf: use make -j on build of ChibiOS core
using number of jobs from waf
2019-06-06 08:29:06 +10:00
Francisco Ferreira 8849e0d276 waf: add AP_NMEA_Output to common libraries 2019-05-21 09:41:15 +10:00
Peter Barker 85fe4ae6dd waf: add sitl rgbled option 2019-05-21 09:21:56 +10:00
Jonathan Challinger fea82dc360 waf: support building headers from uavcan_vendor_specific_types directory 2019-05-15 16:01:53 +09: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 d762629c62 Tools: waf: link AP_InternalError everywhere 2019-03-21 21:34:33 +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 b619e1e560 Tools: remove more px4 remnants 2019-02-27 20:32:37 +11:00
Andrew Tridgell e5efbffe5b waf: pad bootloader to multiple of 32 bytes
this ensures that we can write a whole flash line when updating
bootloader from ROMFS
2019-02-26 16:18:26 +11:00
Andrew Tridgell 3c9646dfef waf: allow hwdef.dat to override build optimization 2019-02-26 16:18:26 +11:00
Andrew Tridgell e71514c136 waf: allow for no param default support
this allows apj files to be built for example fw
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
Francisco Ferreira ba2f954a20 waf: add AC_AttitudeControl library for PE target format 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
Peter Barker e23809fd59 Tools: ardupilotwaf: include AP_Parachute in all builds 2019-02-13 09:25:27 +09:00
Peter Barker 61961d037e Tools: ardupilotwaf: all vehicles get AC_Fence 2019-01-31 13:44:29 +09: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
Andrew Tridgell 85ca38b630 waf: fixed git hash in generated APJ file 2019-01-19 17:19:41 +11:00
Peter Barker 0bf55ce3f4 Tools: ardupilotwaf: DataFlash renamed to AP_Logger 2019-01-18 18:08:20 +11:00
Randy Mackay b3b3385143 Tools: add ToshibaCAN to waf build 2019-01-18 17:30:28 +11:00
Andrew Tridgell 1cf4a9b8d8 waf: fixed ROMFS compression to use zero timestamp
this makes the apj file indepenent of build date, which fixes this
issue:

https://discuss.ardupilot.org/t/arducopter-waf-build-repeatability/37182
2019-01-11 17:45:07 +11:00
Michael du Breuil 7b259fb09f ardupilotwaf: Enable heap for scripting builds 2018-12-31 19:25:23 -07:00
Andrew Tridgell d8291ef1d1 waf: fixed static link build
for bebop
2019-01-01 09:34:11 +11:00
Michael du Breuil 2c8b5c651d Tools: Remove unneeded AP_Buffer include 2018-12-31 11:41:43 +09: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
Andrew Tridgell aa7221d1bf waf: build AP_RobotisServo 2018-12-22 08:13:14 +11:00
Andrew Tridgell bdacc410ca waf: added check for memrchr()
needed on macos
2018-12-06 13:32:09 +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 4b1857b3aa waf: use local pymavlink
use pymavlink from modules, not from install. This allows building
without pymavlink installs, and ensures we use the current version
2018-11-19 10:06:23 +11:00
Andrew Tridgell e6651b01bb waf: use direct import of mavgen for mavlink generation
this avoids a path problem on windows under eclipse
2018-11-15 14:39:11 +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
Peter Barker d0f070d05d Tools: rename px_uploader.py into uploader.py, move into scripts 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 ff77000d93 waf: support changing board to build without re-configure
This allows to use the board option when building as long as it has been configured before

As we don't want to force configuration of all boards each single time, auto-configuration support now has to be done per-board
2018-11-13 10:30:34 +11: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 389a9ee88b waf: add option to disable gccdeps 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
Andrew Tridgell 4eb867efc2 waf: always link AP_LandingGear
needed for RC_Channel
2018-11-09 14:35:14 +11:00
Andrew Tridgell 2054be0ce1 waf: omit bootloader for px4-v2 build
This saves 8k of flash, and allows the plane stable release for older
Pixhawk1 boards to build
2018-11-07 07:35:45 +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 7c0e5b9929 waf: include AC_Avoid on all vehicles 2018-10-30 12:10:42 +11:00