* NuttX cmake
* px4_macros:Pass the stringified predicate as second arg to static assert
CC_ASSERT mapes to the c++ static_assert or provides the same
funtionality for c via the other macros. The c++ static assert
takes 2 argumants the prdicate and a message. This fixes the
lacking second argument.
* Updated nuttx and apps submodule to upstream nuttx 7.21+==master
This is the latest uptake of upstream nuttx and apps.
* ROMFS generate with xxd instead of objcopy
* delete nuttx-patches
* NuttX update submodules to latest px4_nuttx-master
* fix nuttx apps and board dependency
* docker_run update to latest container 2017-08-29
* cmake ROMFS portable sed usage
* NuttX update submodules to latest px4_nuttx-master
app.h, generated from app.h_in, has unnecessary code duplication
and isn't a header file (it defines globals, static functions
and doesn't have a header guard, moreover, it has a 'using namespace
std;'). Because of this, a real headerfile that declares the stuff
defined in apps.h was missing leading to even more code duplication:
scattered forward declarations in .cpp files and an often repeated
type of std::map<std::string, px4_main_t>.
This patch moves cmake/qurt/apps.h_in to src/platforms/apps.cpp.in
(with some changes) and removes cmake/posix/apps.h_in.
Then src/platforms/apps.cpp.in is split into src/platforms/apps.cpp.in
and src/platforms/apps.h.in, splitting declarations from definitions.
A typedef is defined for the map (apps_map_type).
The main difference between cmake/posix/apps.h_in and
cmake/qurt/apps.h_in was that the first defined a global 'apps',
while qurt stores the apps in QShell. I opted to get rid of
the global variable (which are in general evil for various reasons)
and used the API of cmake/qurt/apps.h_in where a provided 'apps'
map is initialized with a call to init_app_map. Thus removing
the existing code duplication.
* Low impact changes from path_cleanup branch.
This is a step towards minimizing the diff with path_cleanup branch.
* Update ecl.
* Revert matrix update.
* Revert ecl and matrix.
* Update sitl gazebo.
* Revert sitl_gazebo and matrix changes.
The FC_ADDON drivers are shared libraries that have PX4 wrappers.
The wrappers are built as modules which are static libraries and
cannot have shared library dependencies.
The shared libraries are required to resolve the symbols at runtime
and need to be linked with the libmainapp shared library.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
* Use DriverFramework as a PX4 module
Targets wanting to use DriverFramework must add
lib/DriverFramework/framework
to their config file.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
* Removed spurious code
No need to add if check before for loop
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
* Added DriverFramework to NuttX configs
Added lib/DriverFramework/firmware to nuttx configs
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
* Updated src/lib/DriverFramework
* Removed DF_TARGET and __DF_${OS} defines
These are now handled inside DriverFramework
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
* Updated DriverFramework
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
* Restored __DF_${OS}
The include files in DriverFramwork need to know the target OS.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
This adds a a target `make eagle_default` to build both the POSIX and
the QURT side in one command. Also, it adds an upload target for both to
push the files over adb to the device. This doesn't just push the
executables and lib files, but also the startup config files.
Added px4_parameters.c to nuttx executable src list.
Minor syntax fix in Tools/px_generate_params.py for semicolon.
Added handling of PX4_MAIN which was not yet supoprted in the
cmake build.
Fixed include quotes in muorb_test_example.cpp
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Fixed CMakeLists.txt to be consistent with module.mk
Converted PX4_TICKS_PER_SEC to define for QURT to get around relocation error
Added stubs for QURT so building a full executable can be tested. This will
enable CI testing without the full Hexagon SDK.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>