* 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>
The _skel lib created for the qurt build was failaing because
the loader could not find the un-exported global symbol because
default visibility was set to hidden. The define is used to
explicitly export the QAIC function needed bu the loader.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Nuttx now gets to link phase. But there are two unresolved symbols:
arm-none-eabi/include/c++/4.7.4/bits/basic_string.h:1128: undefined reference to `std::string::assign(char const*, unsigned int)'
arm-none-eabi/include/c++/4.7.4/bits/stl_list.h:1534: undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)'
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
I am unable to get the nuttx build dependencies set up so that
it builds the export dir before it builds df_driver_framework.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Moved definitions of parameters into *params.c in each module.
This is used by the cmake file as a pattern for dependencies when
generating the parameters.xml file.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
The latest version of Eigen is required to build with the Hexagon
7.4 toolchain. Only certain C++11 features are supported and the
latest version if Eigen provides these tests. A patch is required
to add support for the Hexagon compiler.
These changes force the sync and then update of eigen and allow it
to be patched for qurt.
The eigen-3.2 submodule was removed as it is no longer needed by the
qurt build with the updated toolchain.
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>
Added generation of build_git_version.h
Added separate src/lib/eigen-3.2 dir for qurt (new submodule)
Added patching of eigen-3.2 for qurt (compiler has issue with Complex)
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
Managed to get the deps set up to build the qurt modules using a
config file for the list of modules.
NuttX link options are being set somewhere that break the qurt build
Signed-off-by: Mark Charlebois <charlebm@gmail.com>
The current approach of distributing submodule inclusion logic makes
evert parent dir need to know about all build targets.
This approach goes back to the previous way of centralizing the build
dirs in a single file.
Signed-off-by: Mark Charlebois <charlebm@gmail.com>