Commit Graph

57 Commits

Author SHA1 Message Date
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
Michal Ulianko 631e518c45 BIN_TO_OBJ: Change NM radix back to hex so multiple leading zeros in NM output won't generate octal constant in C. 2015-03-21 00:31:52 +01:00
Michal Ulianko 354809bff4 BIN_TO_OBJ: Switch egrep and cut to $(GREP). Use posix format and decimal radix with $(NM). 2015-03-20 23:22:42 +01:00
Michal Ulianko c5ae02deda Fix generating $3_len in BIN_TO_OBJ makefile function 2015-03-19 19:50:05 +01:00
Lorenz Meier 769df2ff47 Toolchain: Add more compiler options, add note about -Wfloat-conversion warning (available with GCC 4.9). Needs work. 2015-02-08 12:17:35 +01:00
Thomas Gubler 2728889f78 Merge remote-tracking branch 'upstream/master' into ros_messagelayer_merge_attctlposctl 2015-01-28 16:29:14 +01:00
Thomas Gubler 1ad6e00234 re-enable warnings/errors 2015-01-23 07:16:07 +01:00
Thomas Gubler 8c4fce3654 multiplatform: better publisher base class 2015-01-22 09:30:43 +01:00
David Sidrane 517e1e8d48 Fixed permissions 2015-01-21 14:54:25 +01:00
David Sidrane 4b8feb03cf Match the OS build's CONFIG_ARMV7M_STACKCHECK setting by using actual setting in the exported nuttx config.h file to control each board build setting of ENABLE_STACK_CHECKS in toolchain_gnu-arm-eabi.mk 2015-01-21 14:54:24 +01:00
Pavel Kirienko f6786d0be9 Removing -ffixed-r10 when stack checks aren't enabled 2015-01-21 14:54:24 +01:00
Pavel Kirienko 2ebd7099de Globally configurable stack checks, R10 is always fixed 2015-01-21 14:54:24 +01:00
Pavel Kirienko 4b1782174c INSTRUMENTATIONDEFINES assignment made non-optional 2015-01-21 14:54:24 +01:00
Pavel Kirienko 1d13edcf92 Stack checks made optional: ENABLE_STACK_CHECKS 2015-01-21 14:54:24 +01:00
Pavel Kirienko c2bc298409 Disable instrumentation for the uavcan module 2015-01-21 14:54:24 +01:00
Pavel Kirienko 569c3b7d37 Using -g3 flag instead of -g 2015-01-21 14:54:23 +01:00
Pavel Kirienko d87bb4dfcb Revert "Intrusive changes made for UAVCAN profiling. Will be reverted in the next commit (this one is needed to keep the changes in history)"
This reverts commit 4c301d9dcf180e39186fa6753c7a3d3215b3cfa7.
2015-01-21 14:54:23 +01:00
Pavel Kirienko 6bbacc4271 Intrusive changes made for UAVCAN profiling. Will be reverted in the next commit (this one is needed to keep the changes in history) 2015-01-21 14:54:23 +01:00
Thomas Gubler dcdde8ea88 Merge remote-tracking branch 'upstream/master' into ros_messagelayer_merge
Conflicts:
	src/modules/attitude_estimator_ekf/attitude_estimator_ekf_main.cpp
	src/modules/uORB/topics/vehicle_attitude.h
2015-01-21 14:41:03 +01:00
Lorenz Meier e8e4a3b5da Allow GCC 4.9.3 2015-01-21 11:04:56 +01:00
Thomas Gubler 87650e49e1 Revert "turn off werror for now"
This reverts commit 1fe70a845d.
2015-01-05 16:50:14 +01:00
Thomas Gubler 1fe70a845d turn off werror for now 2015-01-05 15:22:43 +01:00
Thomas Gubler 16b9f666e7 Merge remote-tracking branch 'upstream/master' into dev_ros
Conflicts:
	src/lib/mathlib/math/Matrix.hpp
	src/modules/mc_att_control/mc_att_control_main.cpp
	src/modules/uORB/topics/vehicle_status.h
	src/platforms/px4_includes.h
2015-01-05 10:02:07 +01:00
Andrew Tridgell c9e795156f makefiles: make it easier to use ccache for build on windows 2014-12-31 11:43:32 +01:00
Andrew Tridgell 6bc6739676 makefiles: removed stray spaces 2014-12-31 11:43:21 +01:00
Thomas Gubler f4e0dc2857 Merge remote-tracking branch 'upstream/master' into dev_ros
Conflicts:
	.gitmodules
2014-12-29 08:00:12 +01:00
Daniel Agar d511e39ea7 turn on -Werror and fix resulting errors 2014-12-22 17:56:59 -05:00
Thomas Gubler 52c35a8e20 solve conflict for definiton of FILE 2014-12-06 15:36:58 +01:00
Lorenz Meier 97a1410ec9 Toolchain: Allow GCC 4.7 and 4.8 variants 2014-11-17 15:14:17 +01:00
Pavel Kirienko 56649bd10a Merge branch 'master' into uavcan 2014-07-08 19:51:19 +04:00
Don Gagne 680ebf29c3 Fix compiler warnings 2014-07-07 15:11:46 -07:00
Lorenz Meier 1492323f03 Merged master into uavcan 2014-07-06 15:47:34 +02:00
Lorenz Meier e710e2a2d1 Allow any GCC 4.7 subversion 2014-05-23 12:38:29 +02:00
Julian Oes 04a25fcf14 makefiles: check for correct arm-none-eabi-gcc version 2014-05-22 13:58:12 +02:00
Pavel Kirienko 7813566e66 Initial UAVCAN integration. The library compiles successfully, CAN driver appears to be working properly. There is one hardcoded path in the module makefile that needs to be fixed; plus the compilation will likely fail unless arch/math.h contains log2l() 2014-05-06 19:30:45 +04:00
Lorenz Meier eb520e7dcd Merge pull request #849 from PX4/compile_pedantic
Compile pedantic
2014-04-26 12:22:13 +02:00
Julian Oes dcf1dbb7f4 warnings: don't spam with warning for missing field initializer 2014-04-26 11:48:43 +02:00
Lorenz Meier 27755806d5 More pedantic warnings 2014-04-21 21:30:57 +02:00
Lorenz Meier ba4f881f80 Do not require suffixed constants 2014-01-05 01:49:54 +01:00
px4dev 56d355414c Fix handling of board config files. Treat CONFIG_BOARD like CONFIG_ARCH in the toolchain configuration. 2013-08-13 00:34:11 -07:00
Lorenz Meier 66879e6ff6 Hotfix: Make maxoptimization configurable from the shell via MAXOPTIMIZATION=-O0 V=1 make archives 2013-06-07 21:16:31 +02:00
Lorenz Meier 2aa16dc447 Hotfix: Disable instrumentation on IO 2013-06-06 19:12:10 +02:00
px4dev eab01a2efd Hotfix: Generate map files for modules as well for more in-depth memory-use debugging. 2013-05-26 20:51:20 +02:00
px4dev f30695e1df Hotfix: fix section attribute for the ROMFS, moving it back into .rodata where it belongs. 2013-05-23 23:58:59 +02:00
px4dev 318d2baba0 Reinstate mapfile generation. 2013-05-23 23:58:25 +02: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
px4dev 3b65281f00 Remove EXTRAFLAGS compatibility hack. 2013-05-05 17:19:23 -07:00
px4dev 3bf26ac51f Obsolete bogus EXTRAFLAGS, add language-specific flags overrides. 2013-05-05 16:48:05 -07:00
Andrew Tridgell aa9275c29c build: allow additional flags to be passed via EXTRAFLAGS
this allows for flags needed for the APM build
2013-05-04 11:44:38 +10:00
px4dev 01e427b17c Merge working changes into export-build branch. 2013-04-26 16:14:32 -07:00