2 @mainpage Eurobot Software Documentation
4 This document contains programmer documentation of some parts of
5 software developed by Eurobot team at Department of Control
6 Engineering, FEE, Czech Technical University. .
8 Currently, there is documentation to these parts:
15 - carousel.c TODO - convert to module
17 To regenerate this documentation, run @c doxygen in @c
18 soft/src directory. The result can be found in @c
19 soft/src/doc/html/index.html.
22 Common files for all supported targets (CAN message IDs etc.).
25 Demo application to test compilation and demonstrate OMK usage.
28 Matlab/Simulink tests for localization and trajectory generation.
31 Main robot-control application(s) and support files.
33 \page compilation How to compile it
35 Before first compilation, you should execute
36 <tt>build/prepare_infrastructure script</tt>.
39 ./prepare_infrastructure script
41 It downloads repository
42 for @c h8s processors and configures sources. Then, it should be
43 sufficient to go to the <tt>build/<em><target></em></tt> directory and
50 \section cflags Custom compilation flags
52 To compile the project with debugging flags, put them to
53 config.omk.local. Don't modify config.omk, because this will influence
56 cat <<EOF >> config.omk.local
57 CFLAGS = -O0 -g -Wall -fno-strict-aliasing
58 CXXFLAGS = -O0 -g -Wall -fno-strict-aliasing
65 \section config Using multiple software configurations
67 OMK build system allows to configure compilation process so that we
68 can have multiple configurations of software (e.g.: with odometry
69 feedback or without). On the OMK side, the configuration is done by
70 setting make variables, from which headers files can be automatically
71 generated. In sources <tt>##ifdef</tt> can be used to compile
72 differently under different configuration.
79 produces list of all possible configuration variables in
80 <tt>config.omk-default</tt> (note, that this is also run by
81 <tt>prepare_infrastructure</tt>).
83 To use different value than the default one, put the variable
84 assignment to <tt>config.omk</tt> or (preferably) to
85 <tt>config.omk.local</tt>.
88 echo CONFIG_OPEN_LOOP = y >> config.omk.local
92 If you want to compile other configuration only temporarily you can
96 touch config.omk # make OMK notice a change
97 make CONFIG_OPEN_LOOP=y
100 or a more permanent way:
104 export CONFIG_OPEN_LOOP=y
105 make -e # the -e option is important!