Skip to content
This repository
branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 assets
Octocat-spinner-32 bin
Octocat-spinner-32 config
Octocat-spinner-32 docs
Octocat-spinner-32 examples
Octocat-spinner-32 lib
Octocat-spinner-32 plugins
Octocat-spinner-32 release
Octocat-spinner-32 spec
Octocat-spinner-32 test_graveyard
Octocat-spinner-32 vendor
Octocat-spinner-32 .gitignore
Octocat-spinner-32 .gitmodules
Octocat-spinner-32 Gemfile
Octocat-spinner-32 ceedling.gemspec
Octocat-spinner-32 license.txt
Octocat-spinner-32 rakefile.rb

Using Ceedling inside of a project

Ceedling can deploy all of its guts into a folder. This allows it to be used without having to worry about external dependencies.

ceedling new [your new project name]

Using Ceedling outside of a project as a gem

(Note: This is still somewhat experimental.)

Ceedling can also be used as a gem. The following Rakefile is the bare minimum required in order to use Ceedling this way:

require 'ceedling'

Additionally, a project.yml is required. Here is one to get you started:

  :use_exceptions: FALSE
  :use_test_preprocessor: TRUE
  :use_auxiliary_dependencies: TRUE
  :build_root: build
#  :release_build: TRUE
  :test_file_prefix: test_

#  :output: MyApp.out
#  :use_assembly: FALSE


  :executable: .out

    - +:test/**
    - -:test/support
    - src/**
    - test/support

  # in order to add common defines:
  #  1) remove the trailing [] from the :common: section
  #  2) add entries to the :common: section (e.g. :test: has TEST defined)
  :commmon: &common_defines []
    - *common_defines
    - TEST
    - *common_defines
    - TEST

  :when_no_prototypes: :warn
  :enforce_strict_ordering: TRUE
    - :ignore
    uint8:    HEX8
    uint16:   HEX16
    uint32:   UINT32
    int8:     INT8
    bool:     UINT8

# Ceedling defaults to using gcc for compiling, linking, etc.
# As [:tools] is blank, gcc will be used (so long as it's in your system path)
# See documentation to configure a given toolchain for use

    # This is required to use builtin ceedling plugins
    - "#{builtin_ceedling_plugins_path}"
    # Uncomment this and create the directory in order to use your own 
    # custom ceedling plugins
    # - ceedling_plugins
    # These two plugins ship with Ceedling.
    - stdout_pretty_tests_report
    - module_generator

Finally, you'll need to create something like the following directory structure. This one matches the project.yml defined above:

Something went wrong with that request. Please try again.