ceedling 0.0.4 → 0.0.5

Sign up to get free protection for your applications and to get access to all the features.
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