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
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
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
Peter Barker
e9a07bdd6f
Tools: create CHIBIOS_GIT_VERSION build-time define
2018-06-18 19:10:37 +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
Andrew Tridgell
835484429d
waf: don't build ChibiOS with debug by default
...
this makes builds (and rebuilds with ccache) faster
2018-05-04 12:17:12 +10:00
Peter Barker
b26d140316
Tools: ardupilotwaf: remove redundant --no-trigraph
2018-03-05 13:28:03 +00:00
Andrew Tridgell
b6c0e65dee
waf: set CYGWIN_BUILD on cygwin for px4
...
helps with missing/cmath
2018-03-03 13:35:39 +11:00
Andrew Tridgell
3e9f0f83f0
waf: fixed cygwin build for ChibiOS
...
keep path lengths to linker short
2018-03-02 17:11:31 +11:00
Andrew Tridgell
706a0c1b2f
waf: define CYGWIN_BUILD for ChibiOS under cygwin
...
and for SITL
2018-03-02 17:11:31 +11:00
Andrew Tridgell
43f1b43b6c
waf: auto-generate board targets for ChibiOS
...
this allows porting to a new board by just adding the hwdef.dat, with
no other changes
2018-03-02 12:52:50 +11:00
Andrew Tridgell
2075a3da7d
waf: use pre_build hook for ChibiOS
...
this fixes dynamic uavcan building
2018-03-02 12:52:50 +11:00
Andrew Tridgell
7d5ed1bc9b
waf: simplify board classes for ChibiOS
...
rely in hwdef.dat
2018-03-02 12:52:50 +11:00
Andrew Tridgell
fed1579187
waf: auto-enable CAN for ChibiOS builds
...
use presence of CAN pins in hwdef.dat to automatically enable if
available
2018-03-02 12:52:50 +11:00
Andrew Tridgell
89430793dd
waf: allow env variable overrides in hwdef.dat
...
this allows hwdef.dat to control files that are built and flags to the
build
2018-03-02 12:52:50 +11:00
Andrew Tridgell
61debe95e0
Tools: started on OMNIBUSF7V2 support
2018-03-02 12:52:50 +11:00
Andrew Tridgell
035da5047a
waf: added fmuv2 build
...
based on fmuv3, but with 1M target flash
2018-03-01 15:25:55 +11:00
Peter Barker
053d789843
Tools: ardupilotwaf: disable SLP vectorization for clang++ in SITL
...
There appears to be a problem caused by clang++'s optimisations to do
with SLP vectorizations.
It *looks* like it doesn't push enough operands into one of the vectors,
so you end up with a division by zero when attempting to execute an SSE
instruction.
2018-03-01 13:12:10 +11:00
Andrew Tridgell
4dc88c6022
waf: added crazyflie2
2018-02-14 18:27:00 +11:00
ljwang
59ee3c8f62
AP_HAL: support mini-pix
2018-02-14 18:27:00 +11:00
Alexey Bulatov
7302618bbc
waf: add support UAVCAN for Edge board
2018-02-13 13:52:44 +11:00
Andrew Tridgell
8b5291975b
waf: disable uavcan and fatfs on skyviper-v2450
2018-02-08 22:10:46 +11:00
Andrew Tridgell
36695fe1f6
waf: create abin files for some px4 builds
...
needed for skyviper web UI upload
2018-02-08 18:56:51 +11:00
Andrew Tridgell
258ae49952
waf: support PX4 boards with no microSD or USB
2018-02-08 18:56:51 +11:00
Andrew Tridgell
86d43061e9
waf: added skyviper-v2450-px4 build
2018-02-08 17:36:33 +11:00
Andrew Tridgell
2db74a642b
waf: added skyviper-f412-rev1 board
...
older board with SPI 20789
2018-02-08 17:36:33 +11:00
Andrew Tridgell
779de02acb
waf: disable double-promotion warnings on ChibiOS
...
these are not useful
2018-02-08 17:36:33 +11:00
Andrew Tridgell
13a3c56a02
waf: added board name to ChibiOS build
2018-02-07 20:33:45 +11:00
Siddharth Purohit
b1499ee8f2
waf: add option to compile with uavcan for chibios boards
2018-02-07 20:33:45 +11:00
Andrew Tridgell
3d50bbe2c0
waf: added mini-pix build target
2018-02-07 20:33:45 +11:00
Andrew Tridgell
6ee0c48ab1
waf: added revo-mini build type
2018-02-07 20:33:45 +11:00
Peter Barker
7c232323da
waf: added support for Sparky2 STM23F405 board
2018-01-20 17:40:07 +11:00
Alexey Bulatov
e16ac3da23
ardupilotwaf: Disable exceptions for UAVCAN on linux boards
2018-01-17 07:24:17 -08:00
Alexey Bulatov
0998ac102b
ardupilotwaf: Add libraries instead of assignment
2018-01-17 07:24:17 -08:00
Andrew Tridgell
681792acf3
waf: added skyviper-v2450 build target
...
derived from fmuv3
2018-01-15 11:46:02 +11:00
Andrew Tridgell
c708201fc6
waf: added flag for no FATFS in ChibiOS
2018-01-15 11:46:02 +11:00
Andrew Tridgell
2978649cd4
waf: moved to generated loader script
2018-01-15 11:46:02 +11:00
Andrew Tridgell
5af4f8b364
waf: added mindpx-v2 build target
2018-01-15 11:46:02 +11:00
Andrew Tridgell
a2681f1d1c
waf: support ChibiOS FMUv4
2018-01-15 11:46:02 +11:00
Peter Barker
550ab6ac62
waf: chibios trigraph warning fix
2018-01-15 11:46:02 +11:00
bugobliterator
925e3a2dcb
waf: added ChibiOS support
2018-01-15 11:46:02 +11:00
mirkix
793578c0a9
ardupilotwaf: add new board PocketPilot
2017-12-27 16:01:55 +00:00
Peter Barker
fa68738726
Tools: waf: avoid trigraph warnings by adding -Wno-trigraphs
2017-11-23 10:40:30 +11:00
HeBin
c700e69541
Tools: add Robsense PhenixPro Devkit Board support
2017-11-22 10:10:21 -08:00
Staroselskii Georgii
62cb2b6845
waf: boards: add Edge
2017-10-20 13:03:08 -07:00
Lucas De Marchi
83b9518a49
build: remove raspilot
2017-09-12 15:06:19 -07:00
Francisco Ferreira
efc42edabe
waf: remove URUS
2017-09-11 10:04:11 -07:00
davidaroyer
bde8252359
waf: add support for Aerotenna OcPoC-Zynq hardware
2017-09-08 07:30:49 -07:00
Lucas De Marchi
bfe2acac33
build: add -Wno-attributes for PX4
...
This will allow us to use [[fallthrough]] attribute as an
statement.
2017-08-22 23:59:13 -07:00
Kevin Lopez Alvarez
34c977f046
waf: Initial waf support for ppro
2017-07-24 13:45:37 +10:00
Gustavo Sousa
930f3b4aca
build: boards: enable --upload option for linux boards
...
Make it use rsync command. That's a workaround to allow user using --upload
option, which in fact appends the 'rsync' to the command chain. A bad
side-effect of this is that the build summary is output twice for a command
like 'waf copter --upload'.
2017-07-02 08:58:26 -07:00
Lucas De Marchi
d02013c91b
build: aerofc-v1: add default param file into ROMFS
2017-06-06 18:42:17 -07:00
Lucas De Marchi
f6d43aea25
build: px4: allow to embed defaults file into ROMFS
2017-06-06 18:42:17 -07:00
Andrew Tridgell
c8d6311047
waf: added -Werror=switch
...
match the stm32 build, so errors are found in SITL
2017-04-19 20:48:42 +10:00
Eugene Shamaev
59ef501a19
waf: add support for building with UAVCAN
2017-04-10 22:38:13 +01:00
Lucas De Marchi
fab0358a0f
build: document special fields in px4 boards
2017-03-24 12:06:19 +11:00
Lucas De Marchi
81a9a70910
ROMFS: use different UART for errors in aerofc
2017-03-24 12:06:19 +11:00
Lucas De Marchi
3eb16fd881
build: PX4: install rc.<board-name> as init script
2017-03-24 12:06:19 +11:00
Lucas De Marchi
b17acfee12
Add aerofc support
...
Flight Controller board that comes on Intel Aero RTF Drone.
2017-03-24 12:06:19 +11:00
Lucas De Marchi
1bf17fa50f
build: remove version that is not required anymore
...
Now bootloader, board name and px4io pass the name directly to the PX4
build system so we don't need to keep the version.
2017-01-30 18:59:34 -08:00
Lucas De Marchi
1a58d3c447
build: px4: pass px4io name directly
2017-01-30 18:59:34 -08:00
Lucas De Marchi
da297d2028
build: px4: pass board name directly
2017-01-30 18:59:34 -08:00
Lucas De Marchi
c81d32a0b2
build: px4: pass bootloader name directly
...
Don't derive the bootloader name from the version. Other boards using
the PX4 layer may not necessarily have "px4fmu" name, let alone the
version.
2017-01-30 18:59:34 -08:00
mirkix
61a88a9b5e
ardupilotwaf: Add BeagleBone Blue
2017-01-26 23:15:52 -08:00
Andrew Tridgell
b7081f42cd
waf: exclude some files from ROMFS
...
no need to include oreoled on FMUv2 as its Solo only
2016-12-19 08:07:13 +11:00
Andrew Tridgell
74a871576c
waf: added FMUv3 to build
2016-12-19 08:07:12 +11:00
Lucas De Marchi
57aec40acb
build: disable O_CLOEXEC for PX4 and VRBRAIN
2016-11-07 12:37:30 -03:00
Lucas De Marchi
217da05c64
build: Add Urus board to waf
2016-10-27 11:53:26 -02:00
Martin Evans
c0b913a975
build: Add Dark board to waf
2016-10-24 10:01:55 -02:00
Lucas De Marchi
95d5752011
build: fix configure check for headers
...
When we are checking if a header is available we can't pass -I argument
to our missing/ directory. Otherwise we would end up telling the build
that a header is available when it actually isn't.
This fixes the build of sitl in MacOS with clang.
2016-09-03 01:19:14 -03:00
José Roberto de Souza
6a9addb2a8
waf: Add Intel Aero to waf build
...
This will be the first board that only build with waf.
2016-09-03 01:03:17 -03:00
Lucas De Marchi
e31a06cfdb
waf: fix programs searches
...
Here we do the following:
1) Move the pkg-config check to boards.py so we only check of it for
linux boards
2) Use cfg.find_toolchain_program() if possible, for example, for AR
2016-08-24 12:15:42 -03:00
Andrew Tridgell
3769e0fc64
waf: build support for Disco
2016-07-20 13:28:28 +10:00
Gustavo Jose de Sousa
9a9b59a97f
waf: boards: fix funny CXXFLAGS typo
2016-07-18 15:26:07 -03:00
Andrew Tridgell
a5adae5fb4
waf: make linux check for libdl
...
needed for libiio
2016-07-13 15:24:42 -03:00
Andrew Tridgell
3322d7c321
waf: don't build bebop static
...
need dynamic for libiio
2016-07-13 15:24:42 -03:00
Lucas De Marchi
ee62b61fc7
waf: use STDC format macros
2016-07-13 14:18:27 +10:00
Siddharth Bharat Purohit
71c2f69a63
waf: add support for sitl build on mac
2016-07-07 11:35:17 -03:00
Lucas De Marchi
3a5bc141bb
build: use format macros in all linux boards
...
This doesn't work for px4 since it manually defines __STDC_FORMAT_MACROS
in some px4 modules, which needs to be updated.
2016-06-25 12:51:55 -03:00