px4-firmware/makefiles
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
..
README.txt Change the way modules are built so that object paths are relative and use vpath for locating sources (so source paths are also shorter). 2013-05-11 11:32:05 -07:00
board_aerocore.mk Add Gumstix AeroCore device 2014-05-13 09:41:41 -07:00
board_px4fmu-v1.mk Remove our depdenency on CONFIG_ARCH_BOARD_* coming from <nuttx/config.h> 2013-08-12 21:57:11 -07:00
board_px4fmu-v2.mk Merge commit 'de749a3602423f5ee6ca56f3cf2dfff04e31ec6d' (kconfig-cleanup) into fmuv2_bringup 2013-08-14 21:23:00 -07:00
board_px4io-v1.mk Remove our depdenency on CONFIG_ARCH_BOARD_* coming from <nuttx/config.h> 2013-08-12 21:57:11 -07:00
board_px4io-v2.mk Merge commit 'de749a3602423f5ee6ca56f3cf2dfff04e31ec6d' (kconfig-cleanup) into fmuv2_bringup 2013-08-14 21:23:00 -07:00
config_aerocore_default.mk Revert "Remove old TECS implementation - we can really only decently flight-test and support one." 2014-07-29 11:24:11 +02:00
config_px4fmu-v1_default.mk Added TeraRanger one sensor 2014-11-26 07:56:54 +01:00
config_px4fmu-v2_default.mk 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
config_px4fmu-v2_test.mk enable systemcmds in test build 2014-11-28 11:34:52 +01:00
config_px4io-v1_default.mk 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. 2013-08-02 22:34:55 -07:00
config_px4io-v2_default.mk 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. 2013-08-02 22:34:55 -07:00
firmware.mk Parameter xml metadata in .px4 2014-11-18 17:20:50 -08:00
library.mk Teach the PX4 build system how to handle pre-built libraries. 2013-05-20 00:26:41 +02:00
module.mk Fix handling of board config files. Treat CONFIG_BOARD like CONFIG_ARCH in the toolchain configuration. 2013-08-13 00:34:11 -07:00
nuttx.mk Fixed hardcoded include path 2014-05-06 19:42:40 +04:00
setup.mk make param wrapper macros compatible for px4 and ros, needs cleanup 2014-12-03 17:04:15 +01:00
toolchain_gnu-arm-eabi.mk solve conflict for definiton of FILE 2014-12-06 15:36:58 +01:00
upload.mk make upload on Linux much more reliable 2013-09-12 00:47:08 +02:00

README.txt

PX4 Build System
================

The files in this directory implement the PX4 runtime firmware build system
and configuration for the standard PX4 boards and software, in conjunction
with Makefile in the parent directory.

../Makefile

	Top-level makefile for the PX4 build system. This makefile supports
	building NuttX archives, as well as supervising the building of all
	of the defined PX4 firmware configurations.

	Try 'make help' in the parent directory for documentation.

firmware.mk

	Manages the build for one specific firmware configuration. 
	See the comments at the top of this file for detailed documentation.

	Builds modules, builtin command lists and the ROMFS (if configured).

	This is the makefile directly used by external build systems; it can
	be configured to compile modules both inside and outside the PX4
	source tree. When used in this mode, at least BOARD, MODULES and 
	CONFIG_FILE must be set.

module.mk

	Called by firmware.mk to build individual modules.
	See the comments at the top of this file for detailed documentation.

	Not normally used other than by firmware.mk.

nuttx.mk

	Called by ../Makefile to build or download the NuttX archives.

upload.mk

	Called by ../Makefile to upload files to a target board. Can be used
	by external build systems as well.

setup.mk

	Provides common path and tool definitions. Implements host system-specific
	compatibility hacks.

board_<boardname>.mk

	Board-specific configuration for <boardname>. Typically sets CONFIG_ARCH
	and then includes the toolchain definition for the board.

config_<boardname>_<configname>.mk

	Parameters for a specific configuration on a specific board.
	The board name is derived from the filename.  Sets MODULES to select
	source modules to be included in the configuration, may also set
	ROMFS_ROOT to build a ROMFS and BUILTIN_COMMANDS to include non-module
	commands (e.g. from NuttX)

toolchain_<toolchainname>.mk

	Provides macros used to compile and link source files.
	Accepts EXTRADEFINES to add additional pre-processor symbol definitions,
	EXTRACFLAGS, EXTRACXXFLAGS, EXTRAAFLAGS and EXTRALDFLAGS to pass
	additional flags to the C compiler, C++ compiler, assembler and linker
	respectively.

	Defines the COMPILE, COMPILEXX, ASSEMBLE, PRELINK, ARCHIVE and LINK
	macros that are used elsewhere in the build system.