ceedling 0.0.4 → 0.0.5

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.
data/README.md CHANGED
@@ -30,7 +30,7 @@ Updates an existing project with the newest ceedling code in the gem. To update,
30
30
  List example project
31
31
  --------------------
32
32
 
33
- ceedling example
33
+ ceedling examples
34
34
 
35
35
  List the available example projects.
36
36
 
@@ -42,6 +42,7 @@ Create example project
42
42
  Creates the specified example project in the current directory (or in destination directoy, if specified).
43
43
 
44
44
  Valid PROJECT_NAMEs
45
+
45
46
  * temp_sensor
46
47
 
47
48
  Print ceedling versions
data/Rakefile CHANGED
@@ -35,7 +35,7 @@ task :update_tools do
35
35
  {:src => 'vendor/unity/src/', :dest => 'vendor/unity/'},
36
36
  {:src => 'vendor/c_exception/docs/CExceptionSummary.pdf', :dest => 'docs/', :is_file => true},
37
37
  {:src => 'vendor/cmock/docs/CMock Summary.pdf', :dest => 'docs/', :is_file => true},
38
- {:src => 'docs/Ceedling Packet.pdf', :dest => 'docs/', :is_file => true},
38
+ {:src => 'docs/CeedlingPacket.pdf', :dest => 'docs/', :is_file => true},
39
39
  {:src => 'vendor/unity/docs/Unity Summary.pdf', :dest => 'docs/', :is_file => true},
40
40
  ]
41
41
 
data/bin/ceedling CHANGED
@@ -14,6 +14,7 @@ class CeedlingTasks < Thor
14
14
  desc "new PROJECT_NAME", "create a new ceedling project"
15
15
  def new(name)
16
16
  directory Ceedling::NEW_PROJECT_DIR, name
17
+ puts "Execute 'rake test:delta' to run your tests"
17
18
  end
18
19
 
19
20
  desc "update DIRECTORY", "update the vendor/ceedling directory under the given project root"
@@ -28,20 +29,24 @@ class CeedlingTasks < Thor
28
29
  directory "new_project_template/vendor", "#{project_dir}/vendor"
29
30
  end
30
31
 
31
- desc "example [PROJ_NAME] [DEST]", "create specified example project (in DEST, if specified)"
32
- def example(proj_name=nil, dest=".")
33
- if proj_name.nil?
34
- puts "Available sample projects:"
35
- FileUtils.cd(File.dirname(__FILE__) + "/../examples") do
36
- Dir["*"].each {|proj| puts " #{proj}"}
37
- end
38
- return
32
+ desc "examples", "list available example projects"
33
+ def examples()
34
+ puts "Available sample projects:"
35
+ FileUtils.cd(File.dirname(__FILE__) + "/../examples") do
36
+ Dir["*"].each {|proj| puts " #{proj}"}
39
37
  end
38
+ end
39
+
40
+ desc "example [PROJ_NAME] [DEST]", "create specified example project (in DEST, if specified)"
41
+ def example(proj_name, dest=".")
40
42
  dest = "." if dest.nil?
41
43
  directory Ceedling::NEW_PROJECT_DIR, dest
42
44
  remove_file "#{dest}/project.yml"
43
45
  remove_file "#{dest}/rakefile.rb"
44
46
  directory "examples/#{proj_name}", dest
47
+ puts "\n"
48
+ puts "Example project creation successful"
49
+ puts "Execute 'rake test:delta' to run your tests"
45
50
  end
46
51
 
47
52
  desc "version", "print all ceedling gem and library versions"
@@ -8,73 +8,103 @@
8
8
  "buffers":
9
9
  [
10
10
  {
11
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/bin/ceedling",
11
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/examples/temp_sensor/project.yml",
12
12
  "settings":
13
13
  {
14
- "buffer_size": 1745,
14
+ "buffer_size": 1078,
15
+ "line_ending": "Windows"
16
+ }
17
+ },
18
+ {
19
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/README.md",
20
+ "settings":
21
+ {
22
+ "buffer_size": 1918,
15
23
  "line_ending": "Unix"
16
24
  }
17
25
  },
18
26
  {
19
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/examples/temp_sensor/project.yml",
27
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/ceedling.gemspec",
20
28
  "settings":
21
29
  {
22
- "buffer_size": 1127,
23
- "line_ending": "Windows"
30
+ "buffer_size": 1013,
31
+ "line_ending": "Unix"
24
32
  }
25
33
  },
26
34
  {
27
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/examples/temp_sensor/rakefile.rb",
35
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling/version.rb",
28
36
  "settings":
29
37
  {
30
- "buffer_size": 121,
31
- "line_ending": "Windows"
38
+ "buffer_size": 243,
39
+ "line_ending": "Unix"
32
40
  }
33
41
  },
34
42
  {
35
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/Rakefile",
43
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/bin/ceedling",
36
44
  "settings":
37
45
  {
38
- "buffer_size": 652,
46
+ "buffer_size": 1745,
39
47
  "line_ending": "Unix"
40
48
  }
41
49
  },
42
50
  {
43
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/README.md",
51
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/project.yml",
44
52
  "settings":
45
53
  {
46
- "buffer_size": 1917,
54
+ "buffer_size": 1275,
47
55
  "line_ending": "Unix"
48
56
  }
49
57
  },
50
58
  {
51
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/ceedling.gemspec",
59
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling/version.rb.erb",
52
60
  "settings":
53
61
  {
54
- "buffer_size": 1013,
62
+ "buffer_size": 320,
55
63
  "line_ending": "Unix"
56
64
  }
57
65
  },
58
66
  {
59
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling/version.rb",
67
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling.rb",
60
68
  "settings":
61
69
  {
62
- "buffer_size": 245,
70
+ "buffer_size": 102,
63
71
  "line_ending": "Unix"
64
72
  }
65
73
  },
66
74
  {
67
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/project.yml",
75
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/rakefile.rb",
68
76
  "settings":
69
77
  {
70
- "buffer_size": 1300,
78
+ "buffer_size": 131,
71
79
  "line_ending": "Unix"
72
80
  }
81
+ },
82
+ {
83
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/vendor/ceedling/lib/rakefile.rb",
84
+ "settings":
85
+ {
86
+ "buffer_size": 2353,
87
+ "line_ending": "Windows"
88
+ }
89
+ },
90
+ {
91
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/vendor/ceedling/lib/tasks_base.rake",
92
+ "settings":
93
+ {
94
+ "buffer_size": 2996,
95
+ "line_ending": "Windows"
96
+ }
73
97
  }
74
98
  ],
75
99
  "build_system": "",
76
100
  "file_history":
77
101
  [
102
+ "/Users/greg/git/ceedling-gem/ceedling-gem/Rakefile",
103
+ "/Users/greg/git/ceedling-gem/ceedling-gem/version.info",
104
+ "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/vendor/ceedling/plugins/bullseye/template.erb",
105
+ "/Users/greg/git/ceedling-gem/ceedling-gem/temp/vendor/cmock/release/version.info",
106
+ "/Users/greg/git/ceedling-gem/ceedling-gem/temp/vendor/c_exception/release/version.info",
107
+ "/Users/greg/git/ceedling-gem/ceedling-gem/examples/temp_sensor/rakefile.rb",
78
108
  "/Users/greg/git/ceedling-gem/ceedling-gem/delete.rb",
79
109
  "/Users/greg/git/ceedling-gem/ceedling-gem/temp_sensor_project/rakefile.rb",
80
110
  "/Users/greg/Downloads/BullseyeCoverage-8.0.19/README",
@@ -88,9 +118,11 @@
88
118
  {
89
119
  "include_history":
90
120
  [
121
+ ""
91
122
  ],
92
123
  "location_history":
93
124
  [
125
+ "<open folders>"
94
126
  ]
95
127
  },
96
128
  "find_state":
@@ -98,6 +130,9 @@
98
130
  "case_sensitive": false,
99
131
  "find_history":
100
132
  [
133
+ "test_sensor",
134
+ "task :version",
135
+ "dest",
101
136
  "Dir"
102
137
  ],
103
138
  "highlight": true,
@@ -128,79 +163,79 @@
128
163
  [
129
164
  {
130
165
  "buffer": 0,
131
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/bin/ceedling",
166
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/examples/temp_sensor/project.yml",
132
167
  "settings":
133
168
  {
134
- "buffer_size": 1745,
169
+ "buffer_size": 1078,
135
170
  "regions":
136
171
  {
137
172
  },
138
173
  "selection":
139
174
  [
140
175
  [
141
- 285,
142
- 285
176
+ 371,
177
+ 371
143
178
  ]
144
179
  ],
145
180
  "settings":
146
181
  {
147
- "syntax": "Packages/Ruby/Ruby.tmLanguage",
182
+ "syntax": "Packages/YAML/YAML.tmLanguage",
148
183
  "tab_size": 2,
149
184
  "translate_tabs_to_spaces": true
150
185
  },
151
186
  "translation.x": 0,
152
- "translation.y": 0,
187
+ "translation.y": 211,
153
188
  "zoom_level": 1
154
189
  },
155
190
  "type": "text"
156
191
  },
157
192
  {
158
193
  "buffer": 1,
159
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/examples/temp_sensor/project.yml",
194
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/README.md",
160
195
  "settings":
161
196
  {
162
- "buffer_size": 1127,
197
+ "buffer_size": 1918,
163
198
  "regions":
164
199
  {
165
200
  },
166
201
  "selection":
167
202
  [
168
203
  [
169
- 177,
170
- 177
204
+ 1247,
205
+ 1247
171
206
  ]
172
207
  ],
173
208
  "settings":
174
209
  {
175
- "syntax": "Packages/YAML/YAML.tmLanguage",
176
- "tab_size": 2,
177
- "translate_tabs_to_spaces": true
210
+ "syntax": "Packages/Markdown/Markdown.tmLanguage"
178
211
  },
179
212
  "translation.x": 0,
180
- "translation.y": 0,
213
+ "translation.y": 239,
181
214
  "zoom_level": 1
182
215
  },
183
216
  "type": "text"
184
217
  },
185
218
  {
186
219
  "buffer": 2,
187
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/examples/temp_sensor/rakefile.rb",
220
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/ceedling.gemspec",
188
221
  "settings":
189
222
  {
190
- "buffer_size": 121,
223
+ "buffer_size": 1013,
191
224
  "regions":
192
225
  {
193
226
  },
194
227
  "selection":
195
228
  [
196
229
  [
197
- 80,
198
- 80
230
+ 593,
231
+ 593
199
232
  ]
200
233
  ],
201
234
  "settings":
202
235
  {
203
- "syntax": "Packages/Ruby/Ruby.tmLanguage"
236
+ "syntax": "Packages/Ruby/Ruby.tmLanguage",
237
+ "tab_size": 2,
238
+ "translate_tabs_to_spaces": true
204
239
  },
205
240
  "translation.x": 0,
206
241
  "translation.y": 0,
@@ -210,24 +245,24 @@
210
245
  },
211
246
  {
212
247
  "buffer": 3,
213
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/Rakefile",
248
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling/version.rb",
214
249
  "settings":
215
250
  {
216
- "buffer_size": 652,
251
+ "buffer_size": 243,
217
252
  "regions":
218
253
  {
219
254
  },
220
255
  "selection":
221
256
  [
222
257
  [
223
- 652,
224
- 652
258
+ 0,
259
+ 0
225
260
  ]
226
261
  ],
227
262
  "settings":
228
263
  {
229
264
  "syntax": "Packages/Ruby/Ruby.tmLanguage",
230
- "tab_size": 2,
265
+ "tab_size": 4,
231
266
  "translate_tabs_to_spaces": true
232
267
  },
233
268
  "translation.x": 0,
@@ -238,64 +273,72 @@
238
273
  },
239
274
  {
240
275
  "buffer": 4,
241
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/README.md",
276
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/bin/ceedling",
242
277
  "settings":
243
278
  {
244
- "buffer_size": 1917,
279
+ "buffer_size": 1745,
245
280
  "regions":
246
281
  {
247
282
  },
248
283
  "selection":
249
284
  [
250
285
  [
251
- 1211,
252
- 1211
286
+ 1370,
287
+ 1370
253
288
  ]
254
289
  ],
255
290
  "settings":
256
291
  {
257
- "syntax": "Packages/Markdown/Markdown.tmLanguage"
292
+ "syntax": "Packages/Ruby/Ruby.tmLanguage",
293
+ "tab_size": 2,
294
+ "translate_tabs_to_spaces": true
258
295
  },
259
296
  "translation.x": 0,
260
- "translation.y": 238,
297
+ "translation.y": 0,
261
298
  "zoom_level": 1
262
299
  },
263
300
  "type": "text"
264
301
  },
265
302
  {
266
303
  "buffer": 5,
267
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/ceedling.gemspec",
304
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/project.yml",
268
305
  "settings":
269
306
  {
270
- "buffer_size": 1013,
307
+ "buffer_size": 1275,
271
308
  "regions":
272
309
  {
273
310
  },
274
311
  "selection":
275
312
  [
276
313
  [
277
- 678,
278
- 678
314
+ 860,
315
+ 860
279
316
  ]
280
317
  ],
281
318
  "settings":
282
319
  {
283
- "syntax": "Packages/Ruby/Ruby.tmLanguage",
320
+ "syntax": "Packages/YAML/YAML.tmLanguage",
284
321
  "tab_size": 2,
285
322
  "translate_tabs_to_spaces": true
286
323
  },
287
324
  "translation.x": 0,
288
- "translation.y": 0,
325
+ "translation.y": 127,
289
326
  "zoom_level": 1
290
327
  },
291
328
  "type": "text"
292
- },
329
+ }
330
+ ]
331
+ },
332
+ {
333
+ "selected": 4,
334
+ "sheets":
335
+ [
293
336
  {
294
337
  "buffer": 6,
295
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling/version.rb",
338
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling/version.rb.erb",
296
339
  "settings":
297
340
  {
298
- "buffer_size": 245,
341
+ "buffer_size": 320,
299
342
  "regions":
300
343
  {
301
344
  },
@@ -308,7 +351,7 @@
308
351
  ],
309
352
  "settings":
310
353
  {
311
- "syntax": "Packages/Ruby/Ruby.tmLanguage",
354
+ "syntax": "Packages/Rails/HTML (Rails).tmLanguage",
312
355
  "tab_size": 4,
313
356
  "translate_tabs_to_spaces": true
314
357
  },
@@ -317,37 +360,111 @@
317
360
  "zoom_level": 1
318
361
  },
319
362
  "type": "text"
320
- }
321
- ]
322
- },
323
- {
324
- "selected": 0,
325
- "sheets":
326
- [
363
+ },
327
364
  {
328
365
  "buffer": 7,
329
- "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/project.yml",
366
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/lib/ceedling.rb",
330
367
  "settings":
331
368
  {
332
- "buffer_size": 1300,
369
+ "buffer_size": 102,
333
370
  "regions":
334
371
  {
335
372
  },
336
373
  "selection":
337
374
  [
338
375
  [
339
- 585,
340
- 585
376
+ 0,
377
+ 0
341
378
  ]
342
379
  ],
343
380
  "settings":
344
381
  {
345
- "syntax": "Packages/YAML/YAML.tmLanguage",
382
+ "syntax": "Packages/Ruby/Ruby.tmLanguage"
383
+ },
384
+ "translation.x": 0,
385
+ "translation.y": 0,
386
+ "zoom_level": 1
387
+ },
388
+ "type": "text"
389
+ },
390
+ {
391
+ "buffer": 8,
392
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/rakefile.rb",
393
+ "settings":
394
+ {
395
+ "buffer_size": 131,
396
+ "regions":
397
+ {
398
+ },
399
+ "selection":
400
+ [
401
+ [
402
+ 131,
403
+ 131
404
+ ]
405
+ ],
406
+ "settings":
407
+ {
408
+ "syntax": "Packages/Ruby/Ruby.tmLanguage"
409
+ },
410
+ "translation.x": 0,
411
+ "translation.y": 0,
412
+ "zoom_level": 1
413
+ },
414
+ "type": "text"
415
+ },
416
+ {
417
+ "buffer": 9,
418
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/vendor/ceedling/lib/rakefile.rb",
419
+ "settings":
420
+ {
421
+ "buffer_size": 2353,
422
+ "regions":
423
+ {
424
+ },
425
+ "selection":
426
+ [
427
+ [
428
+ 632,
429
+ 632
430
+ ]
431
+ ],
432
+ "settings":
433
+ {
434
+ "syntax": "Packages/Ruby/Ruby.tmLanguage",
346
435
  "tab_size": 2,
347
436
  "translate_tabs_to_spaces": true
348
437
  },
349
438
  "translation.x": 0,
350
- "translation.y": 127,
439
+ "translation.y": 0,
440
+ "zoom_level": 1
441
+ },
442
+ "type": "text"
443
+ },
444
+ {
445
+ "buffer": 10,
446
+ "file": "/Users/greg/git/ceedling-gem/ceedling-gem/new_project_template/vendor/ceedling/lib/tasks_base.rake",
447
+ "settings":
448
+ {
449
+ "buffer_size": 2996,
450
+ "regions":
451
+ {
452
+ },
453
+ "selection":
454
+ [
455
+ [
456
+ 802,
457
+ 802
458
+ ]
459
+ ],
460
+ "settings":
461
+ {
462
+ "syntax": "Packages/Ruby/Ruby.tmLanguage",
463
+ "tab_size": 2,
464
+ "translate_tabs_to_spaces": true
465
+ },
466
+ "translation.x": 0,
467
+ "translation.y": 0,
351
468
  "zoom_level": 1
352
469
  },
353
470
  "type": "text"
@@ -391,6 +508,26 @@
391
508
  "height": 0,
392
509
  "selected_items":
393
510
  [
511
+ [
512
+ "ceedling",
513
+ "lib/ceedling.rb"
514
+ ],
515
+ [
516
+ "versioerb",
517
+ "lib/ceedling/version.rb.erb"
518
+ ],
519
+ [
520
+ "/plugins",
521
+ "new_project_template/vendor/ceedling/plugins/bullseye/template.erb"
522
+ ],
523
+ [
524
+ "versionin",
525
+ "temp/vendor/cmock/release/version.info"
526
+ ],
527
+ [
528
+ "versinfo",
529
+ "temp/vendor/c_exception/release/version.info"
530
+ ],
394
531
  [
395
532
  "proje",
396
533
  "new_project_template/project.yml"
@@ -418,10 +555,6 @@
418
555
  [
419
556
  "foo",
420
557
  "foo.rb"
421
- ],
422
- [
423
- "ceedling",
424
- "bin/ceedling"
425
558
  ]
426
559
  ],
427
560
  "width": 0
@@ -2,10 +2,10 @@
2
2
  module Ceedling
3
3
  module Version
4
4
  # @private
5
- GEM = "0.0.4"
5
+ GEM = "0.0.5"
6
6
 
7
7
  # @private
8
- CEEDLING = "0.9.172"
8
+ CEEDLING = "0.9.175"
9
9
  # @private
10
10
  CEXCEPTION = "1.2.16"
11
11
  # @private
@@ -2,7 +2,7 @@
2
2
  module Ceedling
3
3
  module Version
4
4
  # @private
5
- GEM = "0.0.4"
5
+ GEM = "0.0.5"
6
6
 
7
7
  # @private
8
8
  CEEDLING = "<%= versions["CEEDLING"] %>"
@@ -184,10 +184,12 @@ class ConfiguratorBuilder
184
184
  return {} if (not in_hash[:project_release_build])
185
185
 
186
186
  release_target_file = ((in_hash[:release_build_output].nil?) ? (DEFAULT_RELEASE_TARGET_NAME.ext(in_hash[:extension_executable])) : in_hash[:release_build_output])
187
+ release_map_file = ((in_hash[:release_build_output].nil?) ? (DEFAULT_RELEASE_TARGET_NAME.ext(in_hash[:extension_map])) : in_hash[:release_build_output].ext(in_hash[:extension_map]))
187
188
 
188
189
  return {
189
190
  # tempted to make a helper method in file_path_utils? stop right there, pal. you'll introduce a cyclical dependency
190
- :project_release_build_target => File.join(in_hash[:project_release_artifacts_path], release_target_file)
191
+ :project_release_build_target => File.join(in_hash[:project_release_artifacts_path], release_target_file),
192
+ :project_release_build_map => File.join(in_hash[:project_release_artifacts_path], release_map_file)
191
193
  }
192
194
  end
193
195
 
@@ -103,7 +103,7 @@ class ConfiguratorValidator
103
103
  exists = false
104
104
 
105
105
  @system_wrapper.search_paths.each do |path|
106
- if (@file_wrapper.exist?(File.join(path, filepath)))
106
+ if (@file_wrapper.exist?( File.join(path, filepath)) )
107
107
  exists = true
108
108
  break
109
109
  end
@@ -111,6 +111,9 @@ class ConfiguratorValidator
111
111
  if (@file_wrapper.exist?( (File.join(path, filepath)).ext( exe_extension ) ))
112
112
  exists = true
113
113
  break
114
+ elsif (@system_wrapper.windows? and @file_wrapper.exist?( (File.join(path, filepath)).ext( EXTENSION_WIN_EXE ) ))
115
+ exists = true
116
+ break
114
117
  end
115
118
  end
116
119
 
@@ -33,6 +33,10 @@ class BackgroundExec
33
33
  end
34
34
 
35
35
 
36
+ EXTENSION_WIN_EXE = '.exe'
37
+ EXTENSION_NONWIN_EXE = '.out'
38
+
39
+
36
40
  CEXCEPTION_ROOT_PATH = 'c_exception'
37
41
  CEXCEPTION_LIB_PATH = "#{CEXCEPTION_ROOT_PATH}/lib"
38
42
  CEXCEPTION_C_FILE = 'CException.c'
@@ -254,7 +254,8 @@ DEFAULT_CEEDLING_CONFIG = {
254
254
  :source => '.c',
255
255
  :assembly => '.s',
256
256
  :object => '.o',
257
- :executable => ( SystemWrapper.windows? ? '.exe' : '.out' ),
257
+ :executable => ( SystemWrapper.windows? ? EXTENSION_WIN_EXE : EXTENSION_NONWIN_EXE ),
258
+ :map => '.map',
258
259
  :testpass => '.pass',
259
260
  :testfail => '.fail',
260
261
  :dependencies => '.d',
@@ -145,6 +145,10 @@ class FilePathUtils
145
145
  return File.join( @configurator.project_test_build_output_path, File.basename(filepath).ext(@configurator.extension_executable) )
146
146
  end
147
147
 
148
+ def form_test_build_map_filepath(filepath)
149
+ return File.join( @configurator.project_test_build_output_path, File.basename(filepath).ext(@configurator.extension_map) )
150
+ end
151
+
148
152
  def form_preprocessed_file_filepath(filepath)
149
153
  return File.join( @configurator.project_test_preprocess_files_path, File.basename(filepath) )
150
154
  end
@@ -74,15 +74,15 @@ class Generator
74
74
  @plugin_manager.post_compile_execute(arg_hash)
75
75
  end
76
76
 
77
- def generate_executable_file(tool, context, objects, executable)
77
+ def generate_executable_file(tool, context, objects, executable, map='')
78
78
  shell_result = {}
79
- arg_hash = {:tool => tool, :context => context, :objects => objects, :executable => executable}
79
+ arg_hash = {:tool => tool, :context => context, :objects => objects, :executable => executable, :map => map}
80
80
  @plugin_manager.pre_link_execute(arg_hash)
81
81
 
82
82
  @streaminator.stdout_puts("Linking #{File.basename(arg_hash[:executable])}...", Verbosity::NORMAL)
83
83
 
84
84
  begin
85
- command = @tool_executor.build_command_line(arg_hash[:tool], arg_hash[:objects], arg_hash[:executable])
85
+ command = @tool_executor.build_command_line(arg_hash[:tool], arg_hash[:objects], arg_hash[:executable], arg_hash[:map])
86
86
  shell_result = @tool_executor.exec( command[:line], command[:options] )
87
87
  rescue
88
88
  notice = "\n" +
@@ -24,7 +24,12 @@ end
24
24
 
25
25
 
26
26
  rule(/#{PROJECT_RELEASE_BUILD_TARGET}/) do |bin_file|
27
- @ceedling[:generator].generate_executable_file(TOOLS_RELEASE_LINKER, RELEASE_SYM, bin_file.prerequisites, bin_file.name)
27
+ @ceedling[:generator].generate_executable_file(
28
+ TOOLS_RELEASE_LINKER,
29
+ RELEASE_SYM,
30
+ bin_file.prerequisites,
31
+ bin_file.name,
32
+ @ceedling[:configurator].project_release_build_map)
28
33
  end
29
34
 
30
35
 
@@ -19,7 +19,12 @@ end
19
19
 
20
20
 
21
21
  rule(/#{PROJECT_TEST_BUILD_OUTPUT_PATH}\/#{'.+\\'+EXTENSION_EXECUTABLE}$/) do |bin_file|
22
- @ceedling[:generator].generate_executable_file(TOOLS_TEST_LINKER, TEST_SYM, bin_file.prerequisites, bin_file.name)
22
+ @ceedling[:generator].generate_executable_file(
23
+ TOOLS_TEST_LINKER,
24
+ TEST_SYM,
25
+ bin_file.prerequisites,
26
+ bin_file.name,
27
+ @ceedling[:file_path_utils].form_test_build_map_filepath(bin_file.name))
23
28
  end
24
29
 
25
30
 
@@ -31,7 +31,7 @@ class TestInvokerHelper
31
31
  def process_exception(exception)
32
32
  if (exception.message =~ /Don't know how to build task '(.+)'/i)
33
33
  @streaminator.stderr_puts("ERROR: Rake could not find file referenced in source or test: '#{$1}'.")
34
- @streaminator.stderr_puts("Possible stale dependency due to a file name change, etc. Execute 'clean' task and try again.") if (@configurator.project_use_auxiliary_dependencies)
34
+ @streaminator.stderr_puts("Possible stale dependency due to a file name change, etc. Maybe 'clean' task and try again.") if (@configurator.project_use_auxiliary_dependencies)
35
35
  raise ''
36
36
  else
37
37
  raise exception
@@ -26,7 +26,12 @@ rule(/#{BULLSEYE_BUILD_OUTPUT_PATH}\/#{'.+\\'+EXTENSION_OBJECT}$/ => [
26
26
  end
27
27
 
28
28
  rule(/#{BULLSEYE_BUILD_OUTPUT_PATH}\/#{'.+\\'+EXTENSION_EXECUTABLE}$/) do |bin_file|
29
- @ceedling[:generator].generate_executable_file(TOOLS_BULLSEYE_LINKER, BULLSEYE_CONTEXT, bin_file.prerequisites, bin_file.name)
29
+ @ceedling[:generator].generate_executable_file(
30
+ TOOLS_BULLSEYE_LINKER,
31
+ BULLSEYE_CONTEXT,
32
+ bin_file.prerequisites,
33
+ bin_file.name,
34
+ @ceedling[:file_path_utils].form_test_build_map_filepath(bin_file.name))
30
35
  end
31
36
 
32
37
  rule(/#{BULLSEYE_RESULTS_PATH}\/#{'.+\\'+EXTENSION_TESTPASS}$/ => [
@@ -26,7 +26,12 @@ rule(/#{GCOV_BUILD_OUTPUT_PATH}\/#{'.+\\'+EXTENSION_OBJECT}$/ => [
26
26
  end
27
27
 
28
28
  rule(/#{GCOV_BUILD_OUTPUT_PATH}\/#{'.+\\'+EXTENSION_EXECUTABLE}$/) do |bin_file|
29
- @ceedling[:generator].generate_executable_file(TOOLS_GCOV_LINKER, GCOV_CONTEXT, bin_file.prerequisites, bin_file.name)
29
+ @ceedling[:generator].generate_executable_file(
30
+ TOOLS_GCOV_LINKER,
31
+ GCOV_CONTEXT,
32
+ bin_file.prerequisites,
33
+ bin_file.name,
34
+ @ceedling[:file_path_utils].form_test_build_map_filepath(bin_file.name))
30
35
  end
31
36
 
32
37
  rule(/#{GCOV_RESULTS_PATH}\/#{'.+\\'+EXTENSION_TESTPASS}$/ => [
@@ -1 +1 @@
1
- 172
1
+ 175
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ceedling
3
3
  version: !ruby/object:Gem::Version
4
- hash: 23
4
+ hash: 21
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 4
10
- version: 0.0.4
9
+ - 5
10
+ version: 0.0.5
11
11
  platform: ruby
12
12
  authors:
13
13
  - Mike Karlesky, Mark VanderVoord
@@ -17,7 +17,7 @@ autorequire:
17
17
  bindir: bin
18
18
  cert_chain: []
19
19
 
20
- date: 2011-04-05 00:00:00 -04:00
20
+ date: 2011-04-06 00:00:00 -04:00
21
21
  default_executable:
22
22
  dependencies:
23
23
  - !ruby/object:Gem::Dependency