Commit Graph

434 Commits

Author SHA1 Message Date
Mark Charlebois 19162ba5be Posix: Changed PreflightCheck to read Vdev
PreflightCheck was failing because it was trying to read actual
devices instad of virtual devices.

ADCSIM had a LINUXTEST ifdef that was removed.

posix_run.sh was using the wrong path

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-21 17:14:52 -07:00
Mark Charlebois f3b5076d70 Linux to posix conversion
Changed "linux" target to "posix". Most of the changes are shared with
QuRT and with OSX. The Linux specific parts are in for i2c which uses
<linux/i2c.h> and <linux/i2c-dev.h>.

There is also a check for __PX4_LINUX in mavlink for a tty ioctl that is
not supported.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-21 09:53:09 -07:00
Mark Charlebois 6ce0b7b753 QuRT: added missing make pieces
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:37:51 -07:00
Mark Charlebois cf71db74d7 Support to specify build time OS target
Now run:

make PX4_TARGET_OS=nuttx

or

make PX4_TARGET_OS=linux

To test the linux build and make sure that the required directories
exist, run:

make linuxrun

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:16:26 -07:00
Mark Charlebois 2cd44a24ea Linux: Added linker script support for param and added mc_att_control
Added linker script to resolve __param_start and __param_end.

Added mc_att_control to list of supported builtins.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 11:16:26 -07:00
Mark Charlebois 51a71d54c6 checksubmodules target needed for Linux build
Moved checksubmodules target back to Makefile.
NuttX download still done for Linux as it would require
too much surgery to remove it.

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:46:44 -07:00
Mark Charlebois 838e9fc769 Refactoring for multiplatform support
Moved the NuttX specific board files to makefiles/nuttx and added
a makfiles/linux directory with sample config and board files.

Created a makefiles/toolchain_native.mk file for building for Linux
with the native system compiler. GCC or clang can be used by setting
a flag in the file.

The Linux build creates an archive file and will build the tasks as
threads. Other code changes are required to support both task based
and thread based builds.

The NuttX source should not be required for the Linux build. The
target OS (NuttX or Linux) is selected by commenting out the desired
line in setup.mk

Signed-off-by: Mark Charlebois <charlebm@gmail.com>
2015-04-20 10:46:43 -07:00
Daniel Agar b1dcb10f25 add make check_format to check astyle code formatting 2015-03-02 12:48:19 -05:00
Lorenz Meier 100fb07142 Fix ordering of check submodule execution 2015-03-01 18:06:00 +01:00
Lorenz Meier 2b71bff858 Generate messages first, then check submodules 2015-03-01 11:38:53 +01:00
Andrew Tridgell 91aab00fa0 build: avoid wiping an existing PYTHONPATH variable 2015-02-16 22:54:32 +01:00
Lorenz Meier eeb192730f Revert "include default PYTHONPATH in call to uorb header generation script"
This reverts commit 7e6198b3dd.
2015-02-12 13:29:08 +01:00
Thomas Gubler 7e6198b3dd include default PYTHONPATH in call to uorb header generation script 2015-02-05 19:44:30 +01:00
Lorenz Meier 37ec1ec8de Improve submodule checking 2015-02-03 20:27:51 +01:00
Thomas Gubler 2728889f78 Merge remote-tracking branch 'upstream/master' into ros_messagelayer_merge_attctlposctl 2015-01-28 16:29:14 +01:00
James Goppert a3b2c99801 A huge developer time saver, J="" make archives
This gives warnings about -j1 being forced some places, but
it still successfully builds all archvies in parallel. The
resulting archives have been tested on the board. It is
disabled by default so no functional change unless someone
adds J="" or J=8 in front of the make archvies.
2015-01-28 10:20:20 +01:00
Thomas Gubler d7e57061c9 generate message wrapper headers on ros 2015-01-23 11:58:24 +01:00
Thomas Gubler 738f65a705 generate wrapper headers for uorb 2015-01-23 10:34:04 +01:00
Thomas Gubler 143ff444e4 fix merge error of tests target change 2015-01-07 17:28:56 +01:00
Thomas Gubler 154111d4c0 move checksubmodules and generateuorbtopicheaders dependency 2015-01-07 17:01:03 +01:00
Thomas Gubler fe279d340d Merge remote-tracking branch 'upstream/master' into dev_ros
Conflicts:
	Makefile
2015-01-07 16:00:59 +01:00
Thomas Gubler 213f08ee07 generate uorb topic headers for tests make target 2015-01-06 23:52:04 +01:00
Thomas Gubler ee561947e9 makefile: fix order 2015-01-06 19:14:57 +01:00
Daniel Agar bd130ec397 move sf0x_test to cmake and remove unittests/Makefile 2015-01-05 18:55:38 -05:00
Thomas Gubler f4e0dc2857 Merge remote-tracking branch 'upstream/master' into dev_ros
Conflicts:
	.gitmodules
2014-12-29 08:00:12 +01:00
Lorenz Meier d04f1fde50 Suppress nothing to do messages from make for clean targets 2014-12-26 17:37:36 +01:00
Thomas Gubler 25af4b266c Merge remote-tracking branch 'upstream/master' into dev_ros
Conflicts:
	.gitignore
	src/lib/uavcan
2014-12-25 09:48:15 +01:00
Lorenz Meier 032b25c81b Creating Firmware ZIP file and ignoring it in GIT 2014-12-21 12:09:16 +01:00
Lorenz Meier a4606dc270 Add make tests to Makefile 2014-12-20 18:50:51 +01:00
Thomas Gubler 9520983e08 lots' of header juggling and small changes to make mc att control compile for NuttX and ROS 2014-12-16 08:24:51 +01:00
Thomas Gubler 6f9cbd9751 add genmsg and gencpp python modules, ros not required anymore for message generation 2014-12-04 16:40:46 +01:00
Thomas Gubler 8e8f84bde0 uorb topic header generator: only create new files if the file content really changed 2014-12-04 10:39:24 +01:00
Thomas Gubler 8b5bc703a1 initial version of msg to uorb script
Standard and embedded types work, may need small refinements for some
types
2014-12-01 16:39:27 +01:00
Lorenz Meier 086fc7f758 Merge pull request #1128 from PX4/uavcan
Basic UAVCAN support
2014-07-22 06:48:49 +02:00
Pavel Kirienko 6814ddccff UAVCAN as a submodule 2014-07-08 20:19:17 +04:00
Andrew Tridgell ee92334512 build: fixed running build from external directory 2014-07-08 15:34:47 +02:00
Lorenz Meier 2eb018b273 bugfixes for checks and tools 2014-07-07 22:20:55 +02:00
Lorenz Meier cd9f4f33a5 Turn instructions into a makefile command, allowing Windows GUI kids to create a make target in Eclipse just for this 2014-07-07 17:51:30 +02:00
Lorenz Meier 72ccbe9c4e Fixed check tools 2014-07-07 17:35:47 +02:00
Lorenz Meier 4c2cc65ca6 Cleaning up sub modules 2014-07-07 17:18:54 +02:00
tstellanova 23a355644b grab the git hash and inject it into every log file header 2013-09-06 10:18:08 -07:00
px4dev 07f7fd1585 Fix the firmware build rules so that we always know how to build all the firmwares and thus we can have dependencies between FMU and IO firmware handled a little more sensibly. 2013-08-25 22:26:47 -07:00
px4dev 54711bbcfe In order to save people from themselves, force a given FMU version to depend on the corresponding _default IO version. This avoids the risk of building a new FMU ROMFS with an old IO firmware, at the cost of the sanity of anyone reading this. 2013-08-23 00:23:32 -07:00
px4dev f70a4b3b70 Add support for adding extra files to the ROMFS from the config.
If there is an IO firmware image already built when we build the corresponding FMU ROMFS, copy it into the ROMFS. Note - due to there being no fixed build ordering, to be certain that you have the most current IO firmware, you must build the IO firmware explicitly first.
2013-08-22 23:47:55 -07:00
px4dev 33863165b2 Merge commit 'de749a3602423f5ee6ca56f3cf2dfff04e31ec6d' (kconfig-cleanup) into fmuv2_bringup 2013-08-14 21:23:00 -07:00
px4dev b6676f6cb8 NuttX is confused when it doesn't know what board it's building for - since we don't tell it in the config anymore, we need to pass it a hint. 2013-08-12 23:54:35 -07:00
px4dev c4498ce9a3 Add a 'menuconfig' target that makes it possible to use the NuttX menuconfig tool on the PX4 config files. 2013-08-12 21:56:20 -07:00
px4dev f36a2ff45a Add a 'menuconfig' target that makes it possible to use the NuttX menuconfig tool on the PX4 config files. 2013-08-11 14:00:09 -07:00
px4dev f8951759f8 Add a top-level Makefile rule for building "everything" as a test. 2013-08-04 19:50:23 -07:00
px4dev 64e856276e Merge branch 'fmuv2_bringup' of https://github.com/cvg/Firmware_Private into fmuv2_bringup 2013-08-04 15:01:11 -07:00
px4dev c14a71c095 Move NuttX configurations out of the NuttX tree proper. This reduces the diffs we have to carry against the NuttX upstream repo to just our local patches to the NuttX code itself. 2013-08-03 10:06:10 -07:00
px4dev ecc7bc5bca Clean out unused trash from the NuttX configs. 2013-08-02 23:11:04 -07:00
px4dev 9d6ec6b365 Restructure things so that the PX4 configs move out of the NuttX tree, and most of the PX4-specific board configuration data moves out of the config and into the board driver.
Rename some directories that got left behind in the great board renaming.
2013-08-02 22:34:55 -07:00
Julian Oes a19e0f2f9c Small fix for make distclean, Linux find doesn't seem to know the -depth n argument 2013-07-18 09:45:27 +02:00
px4dev b4029dd824 Pull v2 pieces up to build with the merge 2013-07-07 17:53:55 -07:00
px4dev d178276438 All NuttX configs are called 'nsh' now, stop trying to guess based on the board name. 2013-06-12 23:58:22 -07:00
px4dev 504b6d1256 Hotfix: install the firmware .bin files as well as the .px4 bundles until we have a chance to fix the px4io uploader. 2013-05-17 01:55:02 -07:00
px4dev edb0e01dfd HOTFIX: simplify symbol names going into the ROMFS object, hopefully this avoids inconsistent symbol naming on Windows. 2013-05-12 14:04:57 -07:00
Lorenz Meier 13110e0a1f ROMFS wide quad mixer addition and cleanup 2013-05-05 11:35:56 +02:00
px4dev 01e427b17c Merge working changes into export-build branch. 2013-04-26 16:14:32 -07:00
px4dev 335a645330 Add some help text. 2013-03-31 15:46:07 -07:00
Thomas Gubler e0376fc375 archlinux compatibility 2013-03-09 15:22:24 +01:00
px4dev b6218794c6 Stick copyrights on the major moving parts of the build system 2013-02-23 22:01:00 -08:00
px4dev d24599931a APP -> MODULE
remove as many duplicate slashes, etc. as seems practical
2013-02-23 22:01:00 -08:00
px4dev 8d7621079a Checkpoint: application framework makefile done 2013-02-23 22:00:59 -08:00
px4dev 50739c1843 platform -> board 2013-02-23 22:00:59 -08:00
px4dev abe48bd714 Auto-generate builtin command prototypes.
Tidy up path configuration, etc.
2013-02-23 22:00:59 -08:00
px4dev a7a1cc4625 Add support for per-config ROMFS generation. 2013-02-23 22:00:59 -08:00
px4dev 963621c1f3 Rename makefiles to help categorise them. 2013-02-23 22:00:59 -08:00
px4dev 8440e4f709 Simplify the PLATFORM/CONFIG handling a little. 2013-02-23 22:00:59 -08:00
px4dev e9f2197bfa Move upload functionality out into a separate makefile. 2013-02-23 22:00:59 -08:00
px4dev e692ccc44e Move more functionality into firmware.mk. Now we build the px4 bundles in a way that will let external builders generate them too.
Pass the platform define into the firmware builder.
2013-02-23 22:00:59 -08:00
px4dev d2d9800c2e Recover commits lost in the previous merge. Syllableise PX4_BASE like its peers. 2013-02-23 22:00:58 -08:00
px4dev 919d53766a Less noisy build again. 2013-01-11 02:31:30 -08:00
px4dev f127495caa Manually fixup merge botches via direct comparison with NuttX r5447. 2013-01-11 02:14:43 -08:00
px4dev e7723e0d52 Force a configure before compiling in order to work around more NuttX/config dependency issues. 2013-01-02 22:13:30 -08:00
px4dev 3f42006696 Don't re-run the configuration phase every time we build; NuttX will re-build just about everything if you do. 2013-01-01 20:35:43 -08:00
Lorenz Meier d16d66f990 Enabled UART3, added JTAG make target for IO, removed potentially problematic usleep 2012-11-30 10:42:27 +01:00
Julian Oes c2a2eb1a1a Raised COM port number for windows from 18 to 32 2012-11-27 10:45:11 -08:00
Lorenz Meier 1b3ab2f18d Pull JTAG config from bootloader dir 2012-10-24 08:34:58 +02:00
tnaegeli c9f27cbdc9 f 2012-09-24 18:23:00 +02:00
px4dev 99515fc1dd 'make clean' at the top level should 'distclean' in NuttX, as it's not obvious otherwise how to get NuttX to clean out its dependencies and app configuration. 2012-08-18 20:37:53 -07:00
Lorenz Meier 4eef4e1864 Ensured startup of USB link, updated port ids to read from 2012-08-10 16:18:45 +02:00
px4dev 8a365179ea Fresh import of the PX4 firmware sources. 2012-08-04 15:12:36 -07:00