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
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
Michael du Breuil
5192376c85
Tools: Don't generally build scripting unless requested
2018-10-09 10:08:52 +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
6622c9b8fd
HAL_ChibiOS: wrap sscanf and snprintf methods
2018-09-19 12:14:15 +10: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
Peter Barker
4915c72f10
Tools: add sprayer to standard libraries
2018-08-17 15:33:35 +09:00
Andrew Tridgell
a4e50e1626
waf: use the current python interpreter for sub-commands
2018-08-07 14:40:36 +10:00
Andrew Tridgell
36af9eecdf
waf: fixes for python 3.7
2018-08-07 14:40:36 +10:00
Andrew Tridgell
c5f3beb297
waf: added --enable-asserts option for ChibiOS
2018-08-03 13:44:59 +10:00
Andrew Tridgell
4022a17d3b
waf: fixed upload on Linux
2018-07-26 08:52:56 +10:00
Jani Hirvinen
62cf45659b
adding support for win/cygwin installations
2018-07-24 12:40:23 -07:00
Stephen
651a7030aa
Tools: Add quotes in ChibiOS waf file
...
Without these quotes, the ChibiOS build fails if there are spaces in the Ardupilot path, ie ``C:\Stephen Dade\files\ardupilot``
2018-07-18 12:55:29 +10:00
Andrew Tridgell
1e2065e381
waf: recognise CubeBlack USB IDs
2018-07-11 09:26:59 +10:00
Andrew Tridgell
655828d2f8
waf: use wildcard OSD fonts for SITL
2018-07-09 19:41:56 +10:00
Andrew Tridgell
d2996677cf
waf: auto-compress ROMFS files
2018-07-09 19:41:56 +10:00
Andrew Tridgell
950be3fc17
waf: stop build if OSD libs missing and requested
2018-07-08 08:22:40 +10:00
Andrew Tridgell
1dece80c88
waf: fixed error with no ROMFS files
2018-07-03 14:05:37 +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
Andrew Tridgell
355269115e
waf: support --enable-osd option
2018-07-01 21:21:28 +10:00
Andrew Tridgell
a7ecbf29aa
waf: define CHIBIOS_BOARD_NAME
2018-06-29 20:27:36 +10:00
Andrew Tridgell
95b2587c76
waf: use ardupilot uploader for HAL_PX4
2018-06-29 08:17:38 +10:00
Andrew Tridgell
8ae6b2e026
waf: fixed dependency of hwdef.h on hwdef.dat
2018-06-27 11:37:45 +10:00
Andrew Tridgell
d12cf0ab59
waf: added -Werror on signed comparison
2018-06-27 11:37:45 +10:00
Lucas De Marchi
49d08ba72a
Global: remove minlure
...
Minlure is a port of ArduPilot to Minnow Board connected to daughter
board. Very few of those were produced and nobody is flying with it.
It served its purpose and all the the improvements to ArduPilot remain
regardless of it not being supported anymore. Now it's just adding
maintenance work with no clear benefit, so pull the plug.
2018-06-26 07:32:08 -07:00
Andrew Tridgell
1c73c133a9
waf: fixed binary generation order
2018-06-24 20:24:06 +10:00
Andrew Tridgell
623a30be55
waf: build hex file with and without bootloader
...
this allows for DFU tools without losing parameters
2018-06-24 16:47:23 +10:00
Andrew Tridgell
f73ca2a6ba
waf: speed up the bootloader build
...
don't need to build all libraries
2018-06-24 15:57:51 +10:00
Andrew Tridgell
5b46adf3fb
waf: fixed chibios upload
2018-06-23 17:06:53 +10:00
Andrew Tridgell
338ff6ae64
waf: automatically build intel hex fw when possible
...
this combines the bootloader and application code into a single binary
2018-06-23 17:06:38 +10:00
Peter Barker
b94e31b21a
Tools: remove warning about native clang builds
...
These appear to be stable now
2018-06-22 16:49:05 +10:00
Andrew Tridgell
290f050575
waf: enable gccdeps, using gcc dependencies
...
this is considerably faster than the way dependency system
2018-06-22 11:13:03 +10:00
Andrew Tridgell
ad49f4fdbf
waf: fixed declaration of ap_romfs_embedded.h
2018-06-22 11:13:03 +10:00
Andrew Tridgell
14f66461a7
HAL_ChibiOS: shrink build size for bootloader
...
thanks to @sh83 for the idea
2018-06-22 08:00:31 +10:00
Andrew Tridgell
0ae25787c0
waf: added a --bootloader configure option
...
this selects hwdef-bl.dat instead of hwdef.dat, allowing for
bootloader config to be kept in the same directory as the main
hwdef.dat
2018-06-22 08:00:31 +10:00
Andrew Tridgell
6771a3d65a
waf: support Hex USB IDs in px_uploader.py
2018-06-22 08:00:31 +10:00
Peter Barker
e9a07bdd6f
Tools: create CHIBIOS_GIT_VERSION build-time define
2018-06-18 19:10:37 +01:00
Peter Barker
09a9abb3a8
Tools: include AP_RTC in all waf builds
2018-06-15 08:01:22 +10:00
Peter Barker
684482295e
Tools: include Gripper in all builds
2018-06-11 19:07:39 +01:00
Eugene Shamaev
68ec9f4119
Tools: add CAN bus declaration for the intel aero board
2018-05-25 13:53:17 +10:00
Lucas De Marchi
2916a3f40c
build: add --apstatedir for Linux boards
...
This is the --localstatedir that is found on other
buildsystems/programs + the package directory. We could provide a
--localstatedir instead to be similar to the others, but I thought it
would be too confusing for the help message.
2018-05-24 08:00:33 -07:00
Francisco Ferreira
ddb45a0813
waf: move skyviper-v2450-px4 definitions to board config
2018-05-22 08:35:01 +09:00
Michael du Breuil
82d486add0
Tools: Add proximity as a common library
2018-05-16 23:21:41 +01:00
Andrew Tridgell
cc931e9a2a
waf: allow F4Light USB ID to be recognised
2018-05-16 20:24:23 +10:00
Lucas De Marchi
997d9f58de
build: invert default for header checks
...
In the end the build time is always almost the same, but it's a pain to
change one header and have it check the world. CI continues to use the
check so we can get any mistake before merging.
2018-05-04 11:47:04 -07:00
Lucas De Marchi
73edda697d
build: align help options
...
While it's aesthetically nice to start the help message in a new line
looking at the code, the first \n screws the output leaving them not
aligned.
2018-05-04 11:47:04 -07:00
Lucas De Marchi
9342bc5050
build: invert default for lttng
...
Since it's a debug option, particularly for the scheduler, leave it
disabled by default and let the user enable on demand.
2018-05-04 11:47:04 -07:00
Lucas De Marchi
4697089a82
build: move Linux configuration options to its own sections
2018-05-04 11:47:04 -07:00
Peter Barker
4e53d9e1a8
Tools: correct flashing under Linux
2018-05-04 18:37:14 +10:00