94 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			94 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| ---
 | |
| 
 | |
| # Notes:
 | |
| # Sample project C code is not presently written to produce a release artifact.
 | |
| # As such, release build options are disabled.
 | |
| # This sample, therefore, only demonstrates running a collection of unit tests.
 | |
| 
 | |
| :project:
 | |
|   :use_exceptions: TRUE
 | |
|   :use_test_preprocessor: TRUE
 | |
|   :use_auxiliary_dependencies: TRUE
 | |
|   :use_deep_dependencies: TRUE
 | |
|   :build_root: _build
 | |
| #  :release_build: TRUE
 | |
|   :test_file_prefix: test_
 | |
|   :which_ceedling: vendor/ceedling
 | |
|   :default_tasks:
 | |
|     - test:all
 | |
| 
 | |
| #:release_build:
 | |
| #  :output: MyApp.out
 | |
| #  :use_assembly: FALSE
 | |
| 
 | |
| :environment:
 | |
| 
 | |
| :extension:
 | |
|   :executable: .out
 | |
| 
 | |
| :paths:
 | |
|   :test:
 | |
|     - +:test/**
 | |
|     - -:test/support
 | |
|   :source:
 | |
|     - ../src/**
 | |
|   :support:
 | |
|     - test/support
 | |
| 
 | |
| :defines:
 | |
|   # 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 []
 | |
|   :test:
 | |
|     - *common_defines
 | |
|     - _TEST_
 | |
|   :test_preprocess:
 | |
|     - *common_defines
 | |
|     - _TEST_
 | |
| 
 | |
| :cmock:
 | |
|   :mock_prefix: mock_
 | |
|   :when_no_prototypes: :warn
 | |
|   :enforce_strict_ordering: TRUE
 | |
|   :plugins:
 | |
|     - :ignore
 | |
|     - :callback
 | |
|     - :array
 | |
|   :treat_as:
 | |
|     uint8:    HEX8
 | |
|     uint16:   HEX16
 | |
|     uint32:   UINT32
 | |
|     int8:     INT8
 | |
|     bool:     UINT8
 | |
| 
 | |
| :gcov:
 | |
|     :html_report_type: basic
 | |
| 
 | |
| #:tools:
 | |
| # 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
 | |
| 
 | |
| # LIBRARIES
 | |
| # These libraries are automatically injected into the build process. Those specified as
 | |
| # common will be used in all types of builds. Otherwise, libraries can be injected in just
 | |
| # tests or releases. These options are MERGED with the options in supplemental yaml files.
 | |
| :libraries:
 | |
|   :placement: :end
 | |
|   :flag: "${1}"  # or "-L ${1}" for example
 | |
|   :common: &common_libraries []
 | |
|   :test:
 | |
|     - *common_libraries
 | |
|   :release:
 | |
|     - *common_libraries
 | |
| 
 | |
| :plugins:
 | |
|   :load_paths:
 | |
|     - vendor/ceedling/plugins
 | |
|   :enabled:
 | |
|     - stdout_pretty_tests_report
 | |
|     - module_generator
 | |
|     - raw_output_report
 | |
| ...
 | 
