Skip to content

bjandre/embedded-software-essentials

Repository files navigation

[//]: # (\mainpage


Ben Andre
ECEN 5013 - Embedded Software Essentials
University of Colorado at Boulder
Spring 2017

Project Repository

Building

Third-party libraries

The third party library cmocka is used a a unit testing framework. The source for cmocka is included in the 3rd-party directory. The unit tests require cmocka be built by running:

```
make cmocka
```

All third party library builds can be deleted with:

```
make clobber
```

Additional details about the 3rd-party libries, including url, version, license can be found in the 3rd-party library directory.

Supported make rules

  • all - Build all libraries and executables.

  • compile-all - Compiles all source, but does not create libraries or executables.

  • build-lib - builds all sources necessary to create libraries or executables.

  • build - builds all sources, create libraries, necessary to link executables.

  • test - Build all, then run all tests.

  • doc - build documentation with doxygen.

  • clean - Removes all build artifacts and editor files.

  • clean-doc - remove doxygen generated documentation.

Supported options

  • platform - The target build platform. Valid value are [ '', host, bbb, frdm ]. platform defaults to host if left unset.

    NOTE: The build system currently uses in-source builds. Switching platforms, e.g. from host to bbb, requires running make clean.

    ```
    
    make clean
    make platform=bbb all
    
    ```
    
  • release - The default build is a debug build because that is the most common use case. Setting release to a non-zero value will produce an optimized release build.

    ```
    
    make clean
    make platform=bbb release=1 all
    
    ```
    
  • project - The controlls the project code build via the preprocessor. The default is the current project. To build another project set project to an integer.

    ```
    
    make clean
    make project=1 all
    
    ```
    
  • debug_rules - Additional output for debugging make rules. Enabled by setting to a non-empty value.

  • Changing into the relevant subdirectory and running make XYZ.i will write the preprocessed version of XYZ.c.

References

TODO

Build system

About

ECEN 5013 - Embedded Software Essentials, University of Colorado at Boulder, Spring 2017

Resources

License

Stars

Watchers

Forks

Packages

No packages published