- Reviewed for release 2.9.0
- See also:
- Adding Interfaces to Orca
- What is what and where does it live?
All source code is divided into 6 categories, each has a subdirectory in [ORCA_SRC]/src
- Components [components]
- Well-tested and well-documented with staticly-defined provided and required interfaces
- Can be stand-alone executables and/or IceBox services
- Utilities [utils]
- Utility applications. This is a broad category which currently includes
- implementation of global services, e.g. logging, visualization
- debugging tools,
- utilitiies used in the build process, etc.
- Libraries [libs]
- Code which is used by more than one component or utility is put into shared libraries.
- Examples [examples]
- Components intended as examples for developers
- Sandbox [sandbox]
- Experimental and not currently maintained code.
- Compilation is turned off by default
- Adding code to the build system
- Create a new sub-directory in the appropriate place (see above for options)
[ORCA_SRC]/src/components/mymodule for a new component
- Edit files
- Start by copying the directory of a similar module.
- Edit the CMake file
CMakeLists.txt in the new directory
- Edit the component definition file
mymodule.def (does not apply to libraries)
- Edit the documentation file
- Modify the name of module namespace using the name of your module
- Add an entry for the new directory to the build system.
- Edit the file
CMakeLists.txt in the directory containing your new module
[ORCA_SRC]/src/components/CMakeLists.txt for components
- In alphabetical order, add a line "ADD_SUBDIRECTORY ( mymodule )"