ceedling 0.15.1 → 0.15.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/Gemfile.lock +9 -13
  4. data/README.md +21 -3
  5. data/{rakefile.rb → Rakefile} +0 -0
  6. data/lib/ceedling/version.rb +4 -4
  7. data/lib/ceedling/version.rb.erb +1 -1
  8. data/release/version.info +1 -1
  9. data/vendor/c_exception/Gemfile +1 -1
  10. data/vendor/c_exception/Gemfile.lock +12 -0
  11. data/vendor/c_exception/{docs/license.txt → LICENSE.txt} +9 -9
  12. data/vendor/c_exception/README.md +146 -0
  13. data/vendor/c_exception/{rakefile.rb → Rakefile} +6 -5
  14. data/vendor/c_exception/lib/CException.c +9 -6
  15. data/vendor/c_exception/release/build.info +1 -1
  16. data/vendor/c_exception/release/version.info +1 -1
  17. data/vendor/c_exception/test/CExceptionConfig.h +2 -0
  18. data/vendor/c_exception/test/TestException.c +4 -1
  19. data/vendor/cmock/README.md +24 -0
  20. data/vendor/cmock/{rakefile.rb → Rakefile} +12 -12
  21. data/vendor/cmock/docs/CMock Summary.odt +0 -0
  22. data/vendor/cmock/docs/CMock Summary.pdf +0 -0
  23. data/vendor/cmock/docs/CMock_Summary.md +130 -111
  24. data/vendor/cmock/docs/license.txt +1 -1
  25. data/vendor/cmock/lib/cmock.rb +36 -12
  26. data/vendor/cmock/lib/cmock_config.rb +39 -36
  27. data/vendor/cmock/lib/cmock_generator.rb +33 -25
  28. data/vendor/cmock/lib/cmock_generator_plugin_expect_any_args.rb +68 -0
  29. data/vendor/cmock/lib/cmock_generator_plugin_ignore.rb +18 -42
  30. data/vendor/cmock/lib/cmock_generator_plugin_return_thru_ptr.rb +2 -2
  31. data/vendor/cmock/lib/cmock_generator_utils.rb +39 -29
  32. data/vendor/cmock/lib/cmock_header_parser.rb +46 -39
  33. data/vendor/cmock/rakefile_helper.rb +38 -38
  34. data/vendor/cmock/src/cmock.c +20 -4
  35. data/vendor/cmock/src/cmock.h +6 -1
  36. data/vendor/cmock/src/cmock_internals.h +26 -3
  37. data/vendor/cmock/targets/clang_strict.yml +85 -0
  38. data/vendor/cmock/targets/gcc.yml +4 -2
  39. data/vendor/cmock/targets/gcc_64.yml +55 -0
  40. data/vendor/cmock/test/c/TestCMockC.c +3 -3
  41. data/vendor/cmock/test/c/TestCMockCDynamic.c +11 -11
  42. data/vendor/cmock/test/c/TestCMockCDynamic_Runner.c +4 -2
  43. data/vendor/cmock/test/c/TestCMockC_Runner.c +1 -1
  44. data/vendor/cmock/test/system/systest_generator.rb +38 -26
  45. data/vendor/cmock/test/system/test_compilation/const.h +8 -3
  46. data/vendor/cmock/test/system/test_interactions/all_plugins_but_other_limits.yml +92 -58
  47. data/vendor/cmock/test/system/test_interactions/all_plugins_coexist.yml +53 -48
  48. data/vendor/cmock/test/system/test_interactions/array_and_pointer_handling.yml +58 -56
  49. data/vendor/cmock/test/system/test_interactions/basic_expect_and_return.yml +19 -18
  50. data/vendor/cmock/test/system/test_interactions/expect_and_return_custom_types.yml +13 -13
  51. data/vendor/cmock/test/system/test_interactions/expect_and_return_treat_as.yml +20 -20
  52. data/vendor/cmock/test/system/test_interactions/expect_any_args.yml +238 -0
  53. data/vendor/cmock/test/system/test_interactions/fancy_pointer_handling.yml +36 -34
  54. data/vendor/cmock/test/system/test_interactions/ignore_and_return.yml +24 -15
  55. data/vendor/cmock/test/system/test_interactions/nonstandard_parsed_stuff_2.yml +11 -11
  56. data/vendor/cmock/test/system/test_interactions/return_thru_ptr_and_expect_any_args.yml +235 -0
  57. data/vendor/cmock/test/system/test_interactions/return_thru_ptr_ignore_arg.yml +22 -26
  58. data/vendor/cmock/test/system/test_interactions/stubs_with_callbacks.yml +31 -31
  59. data/vendor/cmock/test/unit/cmock_generator_main_test.rb +141 -109
  60. data/vendor/cmock/test/unit/cmock_generator_plugin_expect_any_args_test.rb +82 -0
  61. data/vendor/cmock/test/unit/cmock_generator_plugin_ignore_test.rb +17 -81
  62. data/vendor/cmock/test/unit/cmock_generator_plugin_return_thru_ptr_test.rb +10 -10
  63. data/vendor/cmock/test/unit/cmock_generator_utils_test.rb +47 -41
  64. data/vendor/cmock/test/unit/cmock_header_parser_test.rb +290 -227
  65. data/vendor/unity/{rakefile.rb → Rakefile} +13 -6
  66. data/vendor/unity/auto/colour_prompt.rb +33 -12
  67. data/vendor/unity/auto/generate_test_runner.rb +67 -63
  68. data/vendor/unity/auto/parseOutput.rb +189 -0
  69. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/makefile +41 -40
  70. data/vendor/unity/examples/example_1/readme.txt +5 -0
  71. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode.c +24 -24
  72. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode.h +3 -3
  73. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode2.c +9 -9
  74. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_1}/src/ProductionCode2.h +2 -2
  75. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_1}/test/TestProductionCode.c +62 -62
  76. data/vendor/unity/examples/{test → example_1/test}/TestProductionCode2.c +31 -31
  77. data/vendor/unity/examples/{test/no_ruby → example_1/test/test_runners}/TestProductionCode2_Runner.c +46 -46
  78. data/vendor/unity/examples/{test/no_ruby → example_1/test/test_runners}/TestProductionCode_Runner.c +50 -50
  79. data/vendor/unity/examples/example_2/makefile +45 -0
  80. data/vendor/unity/examples/example_2/readme.txt +5 -0
  81. data/vendor/unity/examples/{src → example_2/src}/ProductionCode.c +24 -24
  82. data/vendor/unity/examples/{src → example_2/src}/ProductionCode.h +3 -3
  83. data/vendor/unity/examples/{src → example_2/src}/ProductionCode2.c +9 -9
  84. data/vendor/unity/examples/{src → example_2/src}/ProductionCode2.h +2 -2
  85. data/vendor/unity/examples/{test → example_2/test}/TestProductionCode.c +64 -62
  86. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_2}/test/TestProductionCode2.c +33 -31
  87. data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode2_Runner.c +9 -0
  88. data/vendor/unity/examples/example_2/test/test_runners/TestProductionCode_Runner.c +11 -0
  89. data/vendor/unity/examples/example_2/test/test_runners/all_tests.c +12 -0
  90. data/vendor/unity/examples/{helper → example_3/helper}/UnityHelper.c +10 -10
  91. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/helper/UnityHelper.h +12 -12
  92. data/vendor/unity/examples/{makefile → example_3/makefile} +41 -40
  93. data/vendor/unity/examples/{rakefile.rb → example_3/rakefile.rb} +44 -43
  94. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/rakefile_helper.rb +256 -256
  95. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/readme.txt +18 -17
  96. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode.c +24 -24
  97. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode.h +3 -3
  98. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode2.c +9 -9
  99. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/src/ProductionCode2.h +2 -2
  100. data/vendor/{c_exception/vendor/unity/targets/gcc_64.yml → unity/examples/example_3/target_gcc_32.yml} +46 -44
  101. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/TestProductionCode.c +62 -62
  102. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/TestProductionCode2.c +31 -31
  103. data/vendor/{c_exception/vendor/unity/examples → unity/examples/example_3}/test/no_ruby/TestProductionCode2_Runner.c +46 -46
  104. data/vendor/{cmock/vendor/unity/examples → unity/examples/example_3}/test/no_ruby/TestProductionCode_Runner.c +50 -50
  105. data/vendor/unity/extras/eclipse/error_parsers.txt +26 -0
  106. data/vendor/unity/extras/fixture/src/unity_fixture.c +4 -1
  107. data/vendor/unity/extras/fixture/src/unity_fixture.h +17 -16
  108. data/vendor/unity/extras/fixture/src/unity_fixture_internals.h +7 -7
  109. data/vendor/unity/extras/fixture/test/unity_fixture_Test.c +17 -0
  110. data/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +1 -0
  111. data/vendor/unity/makefile +6 -4
  112. data/vendor/unity/rakefile_helper.rb +36 -27
  113. data/vendor/unity/src/unity.c +180 -181
  114. data/vendor/unity/src/unity.h +64 -2
  115. data/vendor/unity/src/unity_internals.h +188 -102
  116. data/vendor/unity/targets/clang_strict.yml +83 -0
  117. data/vendor/unity/targets/gcc_32.yml +5 -0
  118. data/vendor/unity/targets/gcc_64.yml +5 -0
  119. data/vendor/{c_exception/vendor/unity/targets/gcc.yml → unity/targets/gcc_auto_limits.yml} +5 -2
  120. data/vendor/{cmock/vendor/unity/targets/gcc_64.yml → unity/targets/gcc_auto_sizeof.yml} +6 -3
  121. data/vendor/{cmock/vendor/unity/targets/gcc.yml → unity/targets/gcc_auto_stdint.yml} +4 -2
  122. data/vendor/unity/test/expectdata/testsample_cmd.c +57 -54
  123. data/vendor/unity/test/expectdata/testsample_def.c +53 -50
  124. data/vendor/unity/test/expectdata/testsample_mock_cmd.c +79 -76
  125. data/vendor/unity/test/expectdata/testsample_mock_def.c +75 -72
  126. data/vendor/unity/test/expectdata/testsample_mock_new1.c +88 -85
  127. data/vendor/unity/test/expectdata/testsample_mock_new2.c +88 -85
  128. data/vendor/unity/test/expectdata/testsample_mock_param.c +76 -73
  129. data/vendor/unity/test/expectdata/testsample_mock_run1.c +88 -85
  130. data/vendor/unity/test/expectdata/testsample_mock_run2.c +88 -85
  131. data/vendor/unity/test/expectdata/testsample_mock_yaml.c +89 -86
  132. data/vendor/unity/test/expectdata/testsample_new1.c +63 -60
  133. data/vendor/unity/test/expectdata/testsample_new2.c +66 -63
  134. data/vendor/unity/test/expectdata/testsample_param.c +54 -51
  135. data/vendor/unity/test/expectdata/testsample_run1.c +63 -60
  136. data/vendor/unity/test/expectdata/testsample_run2.c +66 -63
  137. data/vendor/unity/test/expectdata/testsample_yaml.c +67 -64
  138. data/vendor/unity/test/test_generate_test_runner.rb +66 -72
  139. data/vendor/unity/test/testunity.c +591 -111
  140. metadata +58 -195
  141. data/vendor/c_exception/vendor/unity/auto/colour_prompt.rb +0 -94
  142. data/vendor/c_exception/vendor/unity/auto/colour_reporter.rb +0 -39
  143. data/vendor/c_exception/vendor/unity/auto/generate_config.yml +0 -36
  144. data/vendor/c_exception/vendor/unity/auto/generate_module.rb +0 -202
  145. data/vendor/c_exception/vendor/unity/auto/generate_test_runner.rb +0 -313
  146. data/vendor/c_exception/vendor/unity/auto/test_file_filter.rb +0 -23
  147. data/vendor/c_exception/vendor/unity/auto/unity_test_summary.rb +0 -139
  148. data/vendor/c_exception/vendor/unity/docs/Unity Summary.odt +0 -0
  149. data/vendor/c_exception/vendor/unity/docs/Unity Summary.pdf +0 -0
  150. data/vendor/c_exception/vendor/unity/docs/Unity Summary.txt +0 -217
  151. data/vendor/c_exception/vendor/unity/docs/license.txt +0 -31
  152. data/vendor/c_exception/vendor/unity/examples/helper/UnityHelper.c +0 -10
  153. data/vendor/c_exception/vendor/unity/examples/helper/UnityHelper.h +0 -12
  154. data/vendor/c_exception/vendor/unity/examples/makefile +0 -40
  155. data/vendor/c_exception/vendor/unity/examples/rakefile.rb +0 -32
  156. data/vendor/c_exception/vendor/unity/examples/rakefile_helper.rb +0 -256
  157. data/vendor/c_exception/vendor/unity/examples/test/no_ruby/TestProductionCode_Runner.c +0 -50
  158. data/vendor/c_exception/vendor/unity/extras/fixture/build/MakefileWorker.mk +0 -331
  159. data/vendor/c_exception/vendor/unity/extras/fixture/build/filterGcov.sh +0 -61
  160. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile.rb +0 -37
  161. data/vendor/c_exception/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
  162. data/vendor/c_exception/vendor/unity/extras/fixture/readme.txt +0 -9
  163. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.c +0 -381
  164. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture.h +0 -81
  165. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -44
  166. data/vendor/c_exception/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -16
  167. data/vendor/c_exception/vendor/unity/extras/fixture/test/main/AllTests.c +0 -21
  168. data/vendor/c_exception/vendor/unity/extras/fixture/test/testunity_fixture.c +0 -39
  169. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -321
  170. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -40
  171. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -56
  172. data/vendor/c_exception/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
  173. data/vendor/c_exception/vendor/unity/makefile +0 -35
  174. data/vendor/c_exception/vendor/unity/rakefile.rb +0 -59
  175. data/vendor/c_exception/vendor/unity/rakefile_helper.rb +0 -240
  176. data/vendor/c_exception/vendor/unity/release/build.info +0 -2
  177. data/vendor/c_exception/vendor/unity/release/version.info +0 -2
  178. data/vendor/c_exception/vendor/unity/src/unity.c +0 -979
  179. data/vendor/c_exception/vendor/unity/src/unity.h +0 -232
  180. data/vendor/c_exception/vendor/unity/src/unity_internals.h +0 -424
  181. data/vendor/c_exception/vendor/unity/targets/hitech_picc18.yml +0 -101
  182. data/vendor/c_exception/vendor/unity/targets/iar_arm_v4.yml +0 -89
  183. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5.yml +0 -79
  184. data/vendor/c_exception/vendor/unity/targets/iar_arm_v5_3.yml +0 -79
  185. data/vendor/c_exception/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -93
  186. data/vendor/c_exception/vendor/unity/targets/iar_cortexm3_v5.yml +0 -83
  187. data/vendor/c_exception/vendor/unity/targets/iar_msp430.yml +0 -94
  188. data/vendor/c_exception/vendor/unity/targets/iar_sh2a_v6.yml +0 -85
  189. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_cmd.c +0 -54
  190. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_def.c +0 -50
  191. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -76
  192. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_def.c +0 -72
  193. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -85
  194. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -85
  195. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_param.c +0 -73
  196. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -85
  197. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -85
  198. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -86
  199. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new1.c +0 -60
  200. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_new2.c +0 -63
  201. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_param.c +0 -51
  202. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run1.c +0 -60
  203. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_run2.c +0 -63
  204. data/vendor/c_exception/vendor/unity/test/expectdata/testsample_yaml.c +0 -64
  205. data/vendor/c_exception/vendor/unity/test/test_generate_test_runner.rb +0 -94
  206. data/vendor/c_exception/vendor/unity/test/testdata/mocksample.c +0 -51
  207. data/vendor/c_exception/vendor/unity/test/testdata/sample.yml +0 -9
  208. data/vendor/c_exception/vendor/unity/test/testdata/testsample.c +0 -51
  209. data/vendor/c_exception/vendor/unity/test/testparameterized.c +0 -101
  210. data/vendor/c_exception/vendor/unity/test/testunity.c +0 -2024
  211. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.odt +0 -0
  212. data/vendor/cmock/vendor/c_exception/docs/CExceptionSummary.pdf +0 -0
  213. data/vendor/cmock/vendor/c_exception/docs/license.txt +0 -30
  214. data/vendor/cmock/vendor/c_exception/docs/readme.txt +0 -236
  215. data/vendor/cmock/vendor/c_exception/lib/CException.c +0 -39
  216. data/vendor/cmock/vendor/c_exception/lib/CException.h +0 -70
  217. data/vendor/cmock/vendor/c_exception/makefile +0 -24
  218. data/vendor/cmock/vendor/c_exception/rakefile.rb +0 -41
  219. data/vendor/cmock/vendor/c_exception/release/build.info +0 -2
  220. data/vendor/cmock/vendor/c_exception/release/version.info +0 -2
  221. data/vendor/cmock/vendor/c_exception/test/CExceptionConfig.h +0 -27
  222. data/vendor/cmock/vendor/c_exception/test/TestException.c +0 -291
  223. data/vendor/cmock/vendor/c_exception/test/TestException_Runner.c +0 -62
  224. data/vendor/cmock/vendor/unity/auto/colour_prompt.rb +0 -94
  225. data/vendor/cmock/vendor/unity/auto/colour_reporter.rb +0 -39
  226. data/vendor/cmock/vendor/unity/auto/generate_config.yml +0 -36
  227. data/vendor/cmock/vendor/unity/auto/generate_module.rb +0 -202
  228. data/vendor/cmock/vendor/unity/auto/generate_test_runner.rb +0 -313
  229. data/vendor/cmock/vendor/unity/auto/test_file_filter.rb +0 -23
  230. data/vendor/cmock/vendor/unity/auto/unity_test_summary.rb +0 -139
  231. data/vendor/cmock/vendor/unity/docs/Unity Summary.odt +0 -0
  232. data/vendor/cmock/vendor/unity/docs/Unity Summary.pdf +0 -0
  233. data/vendor/cmock/vendor/unity/docs/Unity Summary.txt +0 -217
  234. data/vendor/cmock/vendor/unity/docs/license.txt +0 -31
  235. data/vendor/cmock/vendor/unity/examples/helper/UnityHelper.c +0 -10
  236. data/vendor/cmock/vendor/unity/examples/rakefile.rb +0 -32
  237. data/vendor/cmock/vendor/unity/examples/readme.txt +0 -18
  238. data/vendor/cmock/vendor/unity/examples/test/no_ruby/TestProductionCode2_Runner.c +0 -46
  239. data/vendor/cmock/vendor/unity/extras/fixture/build/MakefileWorker.mk +0 -331
  240. data/vendor/cmock/vendor/unity/extras/fixture/build/filterGcov.sh +0 -61
  241. data/vendor/cmock/vendor/unity/extras/fixture/rakefile.rb +0 -37
  242. data/vendor/cmock/vendor/unity/extras/fixture/rakefile_helper.rb +0 -178
  243. data/vendor/cmock/vendor/unity/extras/fixture/readme.txt +0 -9
  244. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.c +0 -381
  245. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture.h +0 -81
  246. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_internals.h +0 -44
  247. data/vendor/cmock/vendor/unity/extras/fixture/src/unity_fixture_malloc_overrides.h +0 -16
  248. data/vendor/cmock/vendor/unity/extras/fixture/test/main/AllTests.c +0 -21
  249. data/vendor/cmock/vendor/unity/extras/fixture/test/testunity_fixture.c +0 -39
  250. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_Test.c +0 -321
  251. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_fixture_TestRunner.c +0 -40
  252. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.c +0 -56
  253. data/vendor/cmock/vendor/unity/extras/fixture/test/unity_output_Spy.h +0 -17
  254. data/vendor/cmock/vendor/unity/makefile +0 -35
  255. data/vendor/cmock/vendor/unity/rakefile.rb +0 -48
  256. data/vendor/cmock/vendor/unity/rakefile_helper.rb +0 -240
  257. data/vendor/cmock/vendor/unity/release/build.info +0 -2
  258. data/vendor/cmock/vendor/unity/release/version.info +0 -2
  259. data/vendor/cmock/vendor/unity/src/unity.c +0 -979
  260. data/vendor/cmock/vendor/unity/src/unity.h +0 -232
  261. data/vendor/cmock/vendor/unity/src/unity_internals.h +0 -424
  262. data/vendor/cmock/vendor/unity/targets/hitech_picc18.yml +0 -101
  263. data/vendor/cmock/vendor/unity/targets/iar_arm_v4.yml +0 -89
  264. data/vendor/cmock/vendor/unity/targets/iar_arm_v5.yml +0 -79
  265. data/vendor/cmock/vendor/unity/targets/iar_arm_v5_3.yml +0 -79
  266. data/vendor/cmock/vendor/unity/targets/iar_armcortex_LM3S9B92_v5_4.yml +0 -93
  267. data/vendor/cmock/vendor/unity/targets/iar_cortexm3_v5.yml +0 -83
  268. data/vendor/cmock/vendor/unity/targets/iar_msp430.yml +0 -94
  269. data/vendor/cmock/vendor/unity/targets/iar_sh2a_v6.yml +0 -85
  270. data/vendor/cmock/vendor/unity/test/expectdata/testsample_cmd.c +0 -54
  271. data/vendor/cmock/vendor/unity/test/expectdata/testsample_def.c +0 -50
  272. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_cmd.c +0 -76
  273. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_def.c +0 -72
  274. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new1.c +0 -85
  275. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_new2.c +0 -85
  276. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_param.c +0 -73
  277. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run1.c +0 -85
  278. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_run2.c +0 -85
  279. data/vendor/cmock/vendor/unity/test/expectdata/testsample_mock_yaml.c +0 -86
  280. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new1.c +0 -60
  281. data/vendor/cmock/vendor/unity/test/expectdata/testsample_new2.c +0 -63
  282. data/vendor/cmock/vendor/unity/test/expectdata/testsample_param.c +0 -51
  283. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run1.c +0 -60
  284. data/vendor/cmock/vendor/unity/test/expectdata/testsample_run2.c +0 -63
  285. data/vendor/cmock/vendor/unity/test/expectdata/testsample_yaml.c +0 -64
  286. data/vendor/cmock/vendor/unity/test/test_generate_test_runner.rb +0 -94
  287. data/vendor/cmock/vendor/unity/test/testdata/mocksample.c +0 -51
  288. data/vendor/cmock/vendor/unity/test/testdata/sample.yml +0 -9
  289. data/vendor/cmock/vendor/unity/test/testdata/testsample.c +0 -51
  290. data/vendor/cmock/vendor/unity/test/testparameterized.c +0 -101
  291. data/vendor/cmock/vendor/unity/test/testunity.c +0 -2024
  292. data/vendor/unity/Gemfile +0 -4
  293. data/vendor/unity/examples/helper/UnityHelper.h +0 -12
  294. data/vendor/unity/examples/rakefile_helper.rb +0 -256
  295. data/vendor/unity/examples/readme.txt +0 -18
@@ -1,32 +0,0 @@
1
- HERE = File.expand_path(File.dirname(__FILE__)) + '/'
2
-
3
- require 'rake'
4
- require 'rake/clean'
5
- require 'rake/testtask'
6
- require HERE+'rakefile_helper'
7
-
8
- include RakefileHelpers
9
-
10
- # Load default configuration, for now
11
- DEFAULT_CONFIG_FILE = 'gcc.yml'
12
- configure_toolchain(DEFAULT_CONFIG_FILE)
13
-
14
- task :unit do
15
- run_tests get_unit_test_files
16
- end
17
-
18
- desc "Generate test summary"
19
- task :summary do
20
- report_summary
21
- end
22
-
23
- desc "Build and test Unity"
24
- task :all => [:clean, :unit, :summary]
25
- task :default => [:clobber, :all]
26
- task :ci => [:default]
27
- task :cruise => [:default]
28
-
29
- desc "Load configuration"
30
- task :config, :config_file do |t, args|
31
- configure_toolchain(args[:config_file])
32
- end
@@ -1,256 +0,0 @@
1
- require 'yaml'
2
- require 'fileutils'
3
- require HERE+'../auto/unity_test_summary'
4
- require HERE+'../auto/generate_test_runner'
5
- require HERE+'../auto/colour_reporter'
6
-
7
- module RakefileHelpers
8
-
9
- C_EXTENSION = '.c'
10
-
11
- def load_configuration(config_file)
12
- $cfg_file = "../targets/#{config_file}"
13
- $cfg = YAML.load(File.read($cfg_file))
14
- end
15
-
16
- def configure_clean
17
- CLEAN.include($cfg['compiler']['build_path'] + '*.*') unless $cfg['compiler']['build_path'].nil?
18
- end
19
-
20
- def configure_toolchain(config_file=DEFAULT_CONFIG_FILE)
21
- config_file += '.yml' unless config_file =~ /\.yml$/
22
- load_configuration('../targets/'+config_file)
23
- configure_clean
24
- end
25
-
26
- def get_unit_test_files
27
- path = $cfg['compiler']['unit_tests_path'] + 'Test*' + C_EXTENSION
28
- path.gsub!(/\\/, '/')
29
- FileList.new(path)
30
- end
31
-
32
- def get_local_include_dirs
33
- include_dirs = $cfg['compiler']['includes']['items'].dup
34
- include_dirs.delete_if {|dir| dir.is_a?(Array)}
35
- return include_dirs
36
- end
37
-
38
- def extract_headers(filename)
39
- includes = []
40
- lines = File.readlines(filename)
41
- lines.each do |line|
42
- m = line.match(/^\s*#include\s+\"\s*(.+\.[hH])\s*\"/)
43
- if not m.nil?
44
- includes << m[1]
45
- end
46
- end
47
- return includes
48
- end
49
-
50
- def find_source_file(header, paths)
51
- paths.each do |dir|
52
- src_file = dir + header.ext(C_EXTENSION)
53
- if (File.exists?(src_file))
54
- return src_file
55
- end
56
- end
57
- return nil
58
- end
59
-
60
- def tackit(strings)
61
- if strings.is_a?(Array)
62
- result = "\"#{strings.join}\""
63
- else
64
- result = strings
65
- end
66
- return result
67
- end
68
-
69
- def squash(prefix, items)
70
- result = ''
71
- items.each { |item| result += " #{prefix}#{tackit(item)}" }
72
- return result
73
- end
74
-
75
- def build_compiler_fields
76
- command = tackit($cfg['compiler']['path'])
77
- if $cfg['compiler']['defines']['items'].nil?
78
- defines = ''
79
- else
80
- defines = squash($cfg['compiler']['defines']['prefix'], $cfg['compiler']['defines']['items'])
81
- end
82
- options = squash('', $cfg['compiler']['options'])
83
- includes = squash($cfg['compiler']['includes']['prefix'], $cfg['compiler']['includes']['items'])
84
- includes = includes.gsub(/\\ /, ' ').gsub(/\\\"/, '"').gsub(/\\$/, '') # Remove trailing slashes (for IAR)
85
- return {:command => command, :defines => defines, :options => options, :includes => includes}
86
- end
87
-
88
- def compile(file, defines=[])
89
- compiler = build_compiler_fields
90
- cmd_str = "#{compiler[:command]}#{compiler[:defines]}#{compiler[:options]}#{compiler[:includes]} #{file} " +
91
- "#{$cfg['compiler']['object_files']['prefix']}#{$cfg['compiler']['object_files']['destination']}"
92
- obj_file = "#{File.basename(file, C_EXTENSION)}#{$cfg['compiler']['object_files']['extension']}"
93
- execute(cmd_str + obj_file)
94
- return obj_file
95
- end
96
-
97
- def build_linker_fields
98
- command = tackit($cfg['linker']['path'])
99
- if $cfg['linker']['options'].nil?
100
- options = ''
101
- else
102
- options = squash('', $cfg['linker']['options'])
103
- end
104
- if ($cfg['linker']['includes'].nil? || $cfg['linker']['includes']['items'].nil?)
105
- includes = ''
106
- else
107
- includes = squash($cfg['linker']['includes']['prefix'], $cfg['linker']['includes']['items'])
108
- end
109
- includes = includes.gsub(/\\ /, ' ').gsub(/\\\"/, '"').gsub(/\\$/, '') # Remove trailing slashes (for IAR)
110
- return {:command => command, :options => options, :includes => includes}
111
- end
112
-
113
- def link_it(exe_name, obj_list)
114
- linker = build_linker_fields
115
- cmd_str = "#{linker[:command]}#{linker[:options]}#{linker[:includes]} " +
116
- (obj_list.map{|obj|"#{$cfg['linker']['object_files']['path']}#{obj} "}).join +
117
- $cfg['linker']['bin_files']['prefix'] + ' ' +
118
- $cfg['linker']['bin_files']['destination'] +
119
- exe_name + $cfg['linker']['bin_files']['extension']
120
- execute(cmd_str)
121
- end
122
-
123
- def build_simulator_fields
124
- return nil if $cfg['simulator'].nil?
125
- if $cfg['simulator']['path'].nil?
126
- command = ''
127
- else
128
- command = (tackit($cfg['simulator']['path']) + ' ')
129
- end
130
- if $cfg['simulator']['pre_support'].nil?
131
- pre_support = ''
132
- else
133
- pre_support = squash('', $cfg['simulator']['pre_support'])
134
- end
135
- if $cfg['simulator']['post_support'].nil?
136
- post_support = ''
137
- else
138
- post_support = squash('', $cfg['simulator']['post_support'])
139
- end
140
- return {:command => command, :pre_support => pre_support, :post_support => post_support}
141
- end
142
-
143
- def execute(command_string, verbose=true, raise_on_fail=true)
144
- report command_string
145
- output = `#{command_string}`.chomp
146
- report(output) if (verbose && !output.nil? && (output.length > 0))
147
- if (($?.exitstatus != 0) and (raise_on_fail))
148
- raise "Command failed. (Returned #{$?.exitstatus})"
149
- end
150
- return output
151
- end
152
-
153
- def report_summary
154
- summary = UnityTestSummary.new
155
- summary.set_root_path(HERE)
156
- results_glob = "#{$cfg['compiler']['build_path']}*.test*"
157
- results_glob.gsub!(/\\/, '/')
158
- results = Dir[results_glob]
159
- summary.set_targets(results)
160
- summary.run
161
- fail_out "FAIL: There were failures" if (summary.failures > 0)
162
- end
163
-
164
- def run_tests(test_files)
165
-
166
- report 'Running system tests...'
167
-
168
- # Tack on TEST define for compiling unit tests
169
- load_configuration($cfg_file)
170
- test_defines = ['TEST']
171
- $cfg['compiler']['defines']['items'] = [] if $cfg['compiler']['defines']['items'].nil?
172
- $cfg['compiler']['defines']['items'] << 'TEST'
173
-
174
- include_dirs = get_local_include_dirs
175
-
176
- # Build and execute each unit test
177
- test_files.each do |test|
178
- obj_list = []
179
-
180
- # Detect dependencies and build required required modules
181
- extract_headers(test).each do |header|
182
- # Compile corresponding source file if it exists
183
- src_file = find_source_file(header, include_dirs)
184
- if !src_file.nil?
185
- obj_list << compile(src_file, test_defines)
186
- end
187
- end
188
-
189
- # Build the test runner (generate if configured to do so)
190
- test_base = File.basename(test, C_EXTENSION)
191
- runner_name = test_base + '_Runner.c'
192
- if $cfg['compiler']['runner_path'].nil?
193
- runner_path = $cfg['compiler']['build_path'] + runner_name
194
- test_gen = UnityTestRunnerGenerator.new($cfg_file)
195
- test_gen.run(test, runner_path)
196
- else
197
- runner_path = $cfg['compiler']['runner_path'] + runner_name
198
- end
199
-
200
- obj_list << compile(runner_path, test_defines)
201
-
202
- # Build the test module
203
- obj_list << compile(test, test_defines)
204
-
205
- # Link the test executable
206
- link_it(test_base, obj_list)
207
-
208
- # Execute unit test and generate results file
209
- simulator = build_simulator_fields
210
- executable = $cfg['linker']['bin_files']['destination'] + test_base + $cfg['linker']['bin_files']['extension']
211
- if simulator.nil?
212
- cmd_str = executable
213
- else
214
- cmd_str = "#{simulator[:command]} #{simulator[:pre_support]} #{executable} #{simulator[:post_support]}"
215
- end
216
- output = execute(cmd_str, true, false)
217
- test_results = $cfg['compiler']['build_path'] + test_base
218
- if output.match(/OK$/m).nil?
219
- test_results += '.testfail'
220
- else
221
- test_results += '.testpass'
222
- end
223
- File.open(test_results, 'w') { |f| f.print output }
224
- end
225
- end
226
-
227
- def build_application(main)
228
-
229
- report "Building application..."
230
-
231
- obj_list = []
232
- load_configuration($cfg_file)
233
- main_path = $cfg['compiler']['source_path'] + main + C_EXTENSION
234
-
235
- # Detect dependencies and build required required modules
236
- include_dirs = get_local_include_dirs
237
- extract_headers(main_path).each do |header|
238
- src_file = find_source_file(header, include_dirs)
239
- if !src_file.nil?
240
- obj_list << compile(src_file)
241
- end
242
- end
243
-
244
- # Build the main source file
245
- main_base = File.basename(main_path, C_EXTENSION)
246
- obj_list << compile(main_path)
247
-
248
- # Create the executable
249
- link_it(main_base, obj_list)
250
- end
251
-
252
- def fail_out(msg)
253
- puts msg
254
- exit(-1)
255
- end
256
- end
@@ -1,50 +0,0 @@
1
- /* AUTOGENERATED FILE. DO NOT EDIT. */
2
- #include "unity.h"
3
- #include <setjmp.h>
4
- #include <stdio.h>
5
-
6
- char MessageBuffer[50];
7
-
8
- extern void setUp(void);
9
- extern void tearDown(void);
10
-
11
- extern void test_FindFunction_WhichIsBroken_ShouldReturnZeroIfItemIsNotInList_WhichWorksEvenInOurBrokenCode(void);
12
- extern void test_FindFunction_WhichIsBroken_ShouldReturnTheIndexForItemsInList_WhichWillFailBecauseOurFunctionUnderTestIsBroken(void);
13
- extern void test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValue(void);
14
- extern void test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValueAgain(void);
15
- extern void test_FunctionWhichReturnsLocalVariable_ShouldReturnCurrentCounter_ButFailsBecauseThisTestIsActuallyFlawed(void);
16
-
17
- static void runTest(UnityTestFunction test)
18
- {
19
- if (TEST_PROTECT())
20
- {
21
- setUp();
22
- test();
23
- }
24
- if (TEST_PROTECT() && !TEST_IS_IGNORED)
25
- {
26
- tearDown();
27
- }
28
- }
29
- void resetTest()
30
- {
31
- tearDown();
32
- setUp();
33
- }
34
-
35
-
36
- int main(void)
37
- {
38
- Unity.TestFile = "test/TestProductionCode.c";
39
- UnityBegin();
40
-
41
- // RUN_TEST calls runTest
42
- RUN_TEST(test_FindFunction_WhichIsBroken_ShouldReturnZeroIfItemIsNotInList_WhichWorksEvenInOurBrokenCode, 20);
43
- RUN_TEST(test_FindFunction_WhichIsBroken_ShouldReturnTheIndexForItemsInList_WhichWillFailBecauseOurFunctionUnderTestIsBroken, 30);
44
- RUN_TEST(test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValue, 41);
45
- RUN_TEST(test_FunctionWhichReturnsLocalVariable_ShouldReturnTheCurrentCounterValueAgain, 51);
46
- RUN_TEST(test_FunctionWhichReturnsLocalVariable_ShouldReturnCurrentCounter_ButFailsBecauseThisTestIsActuallyFlawed, 57);
47
-
48
- UnityEnd();
49
- return 0;
50
- }
@@ -1,331 +0,0 @@
1
- #---------
2
- #
3
- # MakefileWorker.mk
4
- #
5
- # Include this helper file in your makefile
6
- # It makes
7
- # A static library holding the application objs
8
- # A test executable
9
- #
10
- # See this example for parameter settings
11
- # examples/Makefile
12
- #
13
- #----------
14
- # Inputs - these variables describe what to build
15
- #
16
- # INCLUDE_DIRS - Directories used to search for include files.
17
- # This generates a -I for each directory
18
- # SRC_DIRS - Directories containing source file to built into the library
19
- # SRC_FILES - Specific source files to build into library. Helpful when not all code
20
- # in a directory can be built for test (hopefully a temporary situation)
21
- # TEST_SRC_DIRS - Directories containing unit test code build into the unit test runner
22
- # These do not go in a library. They are explicitly included in the test runner
23
- # MOCKS_SRC_DIRS - Directories containing mock source files to build into the test runner
24
- # These do not go in a library. They are explicitly included in the test runner
25
- #----------
26
- # You can adjust these variables to influence how to build the test target
27
- # and where to put and name outputs
28
- # See below to determine defaults
29
- # COMPONENT_NAME - the name of the thing being built
30
- # UNITY_HOME - where Unity home dir found
31
- # UNITY_BUILD_HOME - place for scripts
32
- # UNITY_OBJS_DIR - a directory where o and d files go
33
- # UNITY_LIB_DIR - a directory where libs go
34
- # UNITY_ENABLE_DEBUG - build for debug
35
- # UNITY_USE_MEM_LEAK_DETECTION - Links with overridden new and delete
36
- # UNITY_USE_STD_CPP_LIB - Set to N to keep the standard C++ library out
37
- # of the test harness
38
- # UNITY_USE_GCOV - Turn on coverage analysis
39
- # Clean then build with this flag set to Y, then 'make gcov'
40
- # UNITY_TEST_RUNNER_FLAGS
41
- # None by default
42
- # UNITY_MAPFILE - generate a map file
43
- # UNITY_WARNINGFLAGS - overly picky by default
44
- # OTHER_MAKEFILE_TO_INCLUDE - a hook to use this makefile to make
45
- # other targets. Like CSlim, which is part of fitnesse
46
- #----------
47
- #
48
- # Other flags users can initialize to sneak in their settings
49
- # UNITY_CFLAGS - C complier
50
- # UNITY_LDFLAGS - Linker flags
51
- #----------
52
-
53
-
54
- ifndef COMPONENT_NAME
55
- COMPONENT_NAME = name_this_in_the_makefile
56
- endif
57
-
58
- # Debug on by default
59
- ifndef UNITY_ENABLE_DEBUG
60
- UNITY_ENABLE_DEBUG = Y
61
- endif
62
-
63
- # new and delete for memory leak detection on by default
64
- ifndef UNITY_USE_MEM_LEAK_DETECTION
65
- UNITY_USE_MEM_LEAK_DETECTION = Y
66
- endif
67
-
68
- # Use gcov, off by default
69
- ifndef UNITY_USE_GCOV
70
- UNITY_USE_GCOV = N
71
- endif
72
-
73
- # Default warnings
74
- ifndef UNITY_WARNINGFLAGS
75
- UNITY_WARNINGFLAGS = -Wall -Werror -Wshadow -Wswitch-default
76
- endif
77
-
78
- # Default dir for temporary files (d, o)
79
- ifndef UNITY_OBJS_DIR
80
- UNITY_OBJS_DIR = objs
81
- endif
82
-
83
- # Default dir for the outout library
84
- ifndef UNITY_LIB_DIR
85
- UNITY_LIB_DIR = lib
86
- endif
87
-
88
- # No map by default
89
- ifndef UNITY_MAP_FILE
90
- UNITY_MAP_FILE = N
91
- endif
92
-
93
- #Not verbose by deafult
94
- ifdef VERBOSE
95
- UNITY_TEST_RUNNER_FLAGS += -v
96
- endif
97
-
98
- ifdef GROUP
99
- UNITY_TEST_RUNNER_FLAGS += -g $(GROUP)
100
- endif
101
-
102
- ifdef NAME
103
- UNITY_TEST_RUNNER_FLAGS += -n $(NAME)
104
- endif
105
-
106
- ifdef REPEAT
107
- UNITY_TEST_RUNNER_FLAGS += -r $(REPEAT)
108
- endif
109
-
110
-
111
- # --------------------------------------
112
- # derived flags in the following area
113
- # --------------------------------------
114
- ifeq ($(UNITY_USE_MEM_LEAK_DETECTION), N)
115
- UNITY_CFLAGS += -DUNITY_MEM_LEAK_DETECTION_DISABLED
116
- else
117
- UNITY_MEMLEAK_DETECTOR_MALLOC_MACRO_FILE = -include $(UNITY_HOME)/extras/fixture/src/unity_fixture_malloc_overrides.h
118
- endif
119
-
120
- ifeq ($(UNITY_ENABLE_DEBUG), Y)
121
- UNITY_CFLAGS += -g
122
- endif
123
-
124
- ifeq ($(UNITY_USE_GCOV), Y)
125
- UNITY_CFLAGS += -fprofile-arcs -ftest-coverage
126
- endif
127
-
128
- UNITY_CFLAGS += $(UNITY_MEMLEAK_DETECTOR_MALLOC_MACRO_FILE)
129
-
130
- TARGET_MAP = $(COMPONENT_NAME).map.txt
131
- ifeq ($(UNITY_MAP_FILE), Y)
132
- UNITY_LDFLAGS += -Wl,-map,$(TARGET_MAP)
133
- endif
134
-
135
- LD_LIBRARIES += -lgcov
136
-
137
- TARGET_LIB = \
138
- $(UNITY_LIB_DIR)/lib$(COMPONENT_NAME).a
139
-
140
- TEST_TARGET = \
141
- $(COMPONENT_NAME)_tests
142
-
143
- #Helper Functions
144
- get_src_from_dir = $(wildcard $1/*.cpp) $(wildcard $1/*.c)
145
- get_dirs_from_dirspec = $(wildcard $1)
146
- get_src_from_dir_list = $(foreach dir, $1, $(call get_src_from_dir,$(dir)))
147
- __src_to = $(subst .c,$1, $(subst .cpp,$1,$2))
148
- src_to = $(addprefix $(UNITY_OBJS_DIR)/,$(call __src_to,$1,$2))
149
- src_to_o = $(call src_to,.o,$1)
150
- src_to_d = $(call src_to,.d,$1)
151
- src_to_gcda = $(call src_to,.gcda,$1)
152
- src_to_gcno = $(call src_to,.gcno,$1)
153
- make_dotdot_a_subdir = $(subst ..,_dot_dot, $1)
154
- time = $(shell date +%s)
155
- delta_t = $(eval minus, $1, $2)
156
- debug_print_list = $(foreach word,$1,echo " $(word)";) echo;
157
-
158
- #Derived
159
- STUFF_TO_CLEAN += $(TEST_TARGET) $(TEST_TARGET).exe $(TARGET_LIB) $(TARGET_MAP)
160
-
161
- SRC += $(call get_src_from_dir_list, $(SRC_DIRS)) $(SRC_FILES)
162
- OBJ = $(call src_to_o,$(SRC))
163
- OBJ2 = $(call make_dotdot_a_subdir. $(OBJ))
164
-
165
- STUFF_TO_CLEAN += $(OBJ)
166
-
167
- TEST_SRC = $(call get_src_from_dir_list, $(TEST_SRC_DIRS))
168
- TEST_OBJS = $(call src_to_o,$(TEST_SRC))
169
- STUFF_TO_CLEAN += $(TEST_OBJS)
170
-
171
-
172
- MOCKS_SRC = $(call get_src_from_dir_list, $(MOCKS_SRC_DIRS))
173
- MOCKS_OBJS = $(call src_to_o,$(MOCKS_SRC))
174
- STUFF_TO_CLEAN += $(MOCKS_OBJS)
175
-
176
- ALL_SRC = $(SRC) $(TEST_SRC) $(MOCKS_SRC)
177
-
178
- #Test coverage with gcov
179
- GCOV_OUTPUT = gcov_output.txt
180
- GCOV_REPORT = gcov_report.txt
181
- GCOV_ERROR = gcov_error.txt
182
- GCOV_GCDA_FILES = $(call src_to_gcda, $(ALL_SRC))
183
- GCOV_GCNO_FILES = $(call src_to_gcno, $(ALL_SRC))
184
- TEST_OUTPUT = $(TEST_TARGET).txt
185
- STUFF_TO_CLEAN += \
186
- $(GCOV_OUTPUT)\
187
- $(GCOV_REPORT)\
188
- $(GCOV_REPORT).html\
189
- $(GCOV_ERROR)\
190
- $(GCOV_GCDA_FILES)\
191
- $(GCOV_GCNO_FILES)\
192
- $(TEST_OUTPUT)
193
-
194
-
195
- #The gcda files for gcov need to be deleted before each run
196
- #To avoid annoying messages.
197
- GCOV_CLEAN = $(SILENCE)rm -f $(GCOV_GCDA_FILES) $(GCOV_OUTPUT) $(GCOV_REPORT) $(GCOV_ERROR)
198
- RUN_TEST_TARGET = $(SILENCE) $(GCOV_CLEAN) ; echo "Running $(TEST_TARGET)"; ./$(TEST_TARGET) $(UNITY_TEST_RUNNER_FLAGS)
199
-
200
- INCLUDES_DIRS_EXPANDED = $(call get_dirs_from_dirspec, $(INCLUDE_DIRS))
201
- INCLUDES += $(foreach dir, $(INCLUDES_DIRS_EXPANDED), -I$(dir))
202
- MOCK_DIRS_EXPANDED = $(call get_dirs_from_dirspec, $(MOCKS_SRC_DIRS))
203
- INCLUDES += $(foreach dir, $(MOCK_DIRS_EXPANDED), -I$(dir))
204
-
205
-
206
- DEP_FILES = $(call src_to_d, $(ALL_SRC))
207
- STUFF_TO_CLEAN += $(DEP_FILES) $(PRODUCTION_CODE_START) $(PRODUCTION_CODE_END)
208
- STUFF_TO_CLEAN += $(STDLIB_CODE_START) $(MAP_FILE) cpputest_*.xml junit_run_output
209
-
210
- # We'll use the UNITY_CFLAGS etc so that you can override AND add to the CppUTest flags
211
- CFLAGS = $(UNITY_CFLAGS) $(UNITY_ADDITIONAL_CFLAGS) $(INCLUDES) $(UNITY_WARNINGFLAGS)
212
- LDFLAGS = $(UNITY_LDFLAGS) $(UNITY_ADDITIONAL_LDFLAGS)
213
-
214
- # Targets
215
-
216
- .PHONY: all
217
- all: start $(TEST_TARGET)
218
- $(RUN_TEST_TARGET)
219
-
220
- .PHONY: start
221
- start: $(TEST_TARGET)
222
- $(SILENCE)START_TIME=$(call time)
223
-
224
- .PHONY: all_no_tests
225
- all_no_tests: $(TEST_TARGET)
226
-
227
- .PHONY: flags
228
- flags:
229
- @echo
230
- @echo "Compile C source with CFLAGS:"
231
- @$(call debug_print_list,$(CFLAGS))
232
- @echo "Link with LDFLAGS:"
233
- @$(call debug_print_list,$(LDFLAGS))
234
- @echo "Link with LD_LIBRARIES:"
235
- @$(call debug_print_list,$(LD_LIBRARIES))
236
- @echo "Create libraries with ARFLAGS:"
237
- @$(call debug_print_list,$(ARFLAGS))
238
- @echo "OBJ files:"
239
- @$(call debug_print_list,$(OBJ2))
240
-
241
-
242
- $(TEST_TARGET): $(TEST_OBJS) $(MOCKS_OBJS) $(PRODUCTION_CODE_START) $(TARGET_LIB) $(USER_LIBS) $(PRODUCTION_CODE_END) $(STDLIB_CODE_START)
243
- $(SILENCE)echo Linking $@
244
- $(SILENCE)$(LINK.o) -o $@ $^ $(LD_LIBRARIES)
245
-
246
- $(TARGET_LIB): $(OBJ)
247
- $(SILENCE)echo Building archive $@
248
- $(SILENCE)mkdir -p lib
249
- $(SILENCE)$(AR) $(ARFLAGS) $@ $^
250
- $(SILENCE)ranlib $@
251
-
252
- test: $(TEST_TARGET)
253
- $(RUN_TEST_TARGET) | tee $(TEST_OUTPUT)
254
-
255
- vtest: $(TEST_TARGET)
256
- $(RUN_TEST_TARGET) -v | tee $(TEST_OUTPUT)
257
-
258
- $(UNITY_OBJS_DIR)/%.o: %.cpp
259
- @echo compiling $(notdir $<)
260
- $(SILENCE)mkdir -p $(dir $@)
261
- $(SILENCE)$(COMPILE.cpp) -MMD -MP $(OUTPUT_OPTION) $<
262
-
263
- $(UNITY_OBJS_DIR)/%.o: %.c
264
- @echo compiling $(notdir $<)
265
- $(SILENCE)mkdir -p $(dir $@)
266
- $(SILENCE)$(COMPILE.c) -MMD -MP $(OUTPUT_OPTION) $<
267
-
268
- ifneq "$(MAKECMDGOALS)" "clean"
269
- -include $(DEP_FILES)
270
- endif
271
-
272
- .PHONY: clean
273
- clean:
274
- $(SILENCE)echo Making clean
275
- $(SILENCE)$(RM) $(STUFF_TO_CLEAN)
276
- $(SILENCE)rm -rf gcov $(UNITY_OBJS_DIR)
277
- $(SILENCE)find . -name "*.gcno" | xargs rm -f
278
- $(SILENCE)find . -name "*.gcda" | xargs rm -f
279
-
280
- #realclean gets rid of all gcov, o and d files in the directory tree
281
- #not just the ones made by this makefile
282
- .PHONY: realclean
283
- realclean: clean
284
- $(SILENCE)rm -rf gcov
285
- $(SILENCE)find . -name "*.gdcno" | xargs rm -f
286
- $(SILENCE)find . -name "*.[do]" | xargs rm -f
287
-
288
- gcov: test
289
- $(SILENCE)for d in $(SRC_DIRS) ; do \
290
- gcov --object-directory $(UNITY_OBJS_DIR)/$$d $$d/*.c $$d/*.cpp >> $(GCOV_OUTPUT) 2>>$(GCOV_ERROR) ; \
291
- done
292
- $(SILENCE)for f in $(SRC_FILES) ; do \
293
- gcov --object-directory $(UNITY_OBJS_DIR)/$$f $$f >> $(GCOV_OUTPUT) 2>>$(GCOV_ERROR) ; \
294
- done
295
- $(UNITY_BUILD_HOME)/filterGcov.sh $(GCOV_OUTPUT) $(GCOV_ERROR) $(GCOV_REPORT) $(TEST_OUTPUT)
296
- $(SILENCE)cat $(GCOV_REPORT)
297
- $(SILENCE)mkdir -p gcov
298
- $(SILENCE)mv *.gcov gcov
299
- $(SILENCE)mv gcov_* gcov
300
- $(SILENCE)echo "See gcov directory for details"
301
-
302
- debug:
303
- @echo
304
- @echo "Target Source files:"
305
- @$(call debug_print_list,$(SRC))
306
- @echo "Target Object files:"
307
- @$(call debug_print_list,$(OBJ))
308
- @echo "Test Source files:"
309
- @$(call debug_print_list,$(TEST_SRC))
310
- @echo "Test Object files:"
311
- @$(call debug_print_list,$(TEST_OBJS))
312
- @echo "Mock Source files:"
313
- @$(call debug_print_list,$(MOCKS_SRC))
314
- @echo "Mock Object files:"
315
- @$(call debug_print_list,$(MOCKS_OBJS))
316
- @echo "All Input Dependency files:"
317
- @$(call debug_print_list,$(DEP_FILES))
318
- @echo Stuff to clean:
319
- @$(call debug_print_list,$(STUFF_TO_CLEAN))
320
- @echo Includes:
321
- @$(call debug_print_list,$(INCLUDES))
322
-
323
- ifneq "$(OTHER_MAKEFILE_TO_INCLUDE)" ""
324
- -include $(OTHER_MAKEFILE_TO_INCLUDE)
325
- endif
326
-
327
-
328
-
329
- st,$(TEST_SRC))
330
- @echo "Test Object files:"
331
- @$(call debug_print