bake-toolkit 2.16.1 → 2.17.1
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.
- checksums.yaml +4 -4
- data/documentation/_build/html/_images/debug_app.png +0 -0
- data/documentation/_build/html/_images/debug_debug.png +0 -0
- data/documentation/_build/html/_images/debug_flag.png +0 -0
- data/documentation/_build/html/_images/debug_map.png +0 -0
- data/documentation/_build/html/_images/debug_path.png +0 -0
- data/documentation/_build/html/_sources/changelog.txt +13 -1
- data/documentation/_build/html/_sources/ide/eclipse/eclipse.txt +1 -0
- data/documentation/_build/html/_sources/ide/eclipse/how_to_debug_in_eclipse.txt +38 -0
- data/documentation/_build/html/_sources/index.txt +1 -1
- data/documentation/_build/html/_static/debugEclipse/app.png +0 -0
- data/documentation/_build/html/_static/debugEclipse/debug.png +0 -0
- data/documentation/_build/html/_static/debugEclipse/flag.png +0 -0
- data/documentation/_build/html/_static/debugEclipse/map.png +0 -0
- data/documentation/_build/html/_static/debugEclipse/path.png +0 -0
- data/documentation/_build/html/_static/debug_app.png +0 -0
- data/documentation/_build/html/_static/debug_debug.png +0 -0
- data/documentation/_build/html/_static/debug_flag.png +0 -0
- data/documentation/_build/html/_static/debug_map.png +0 -0
- data/documentation/_build/html/_static/debug_path.png +0 -0
- data/documentation/_build/html/changelog.html +20 -4
- data/documentation/_build/html/commandline/commandline.html +3 -3
- data/documentation/_build/html/concepts/build_hierarchy.html +3 -3
- data/documentation/_build/html/concepts/concepts.html +3 -3
- data/documentation/_build/html/concepts/the_main_project.html +3 -3
- data/documentation/_build/html/concepts/the_project_meta_file.html +3 -3
- data/documentation/_build/html/genindex.html +3 -3
- data/documentation/_build/html/ide/eclipse/eclipse.html +4 -3
- data/documentation/_build/html/ide/eclipse/how_to_convert_existing_cdt_workspace.html +3 -3
- data/documentation/_build/html/ide/eclipse/how_to_create_a_new_project_in_eclipse.html +5 -5
- data/documentation/_build/html/ide/eclipse/how_to_create_a_workspace_in_eclipse.html +3 -3
- data/documentation/_build/html/ide/eclipse/how_to_debug_in_eclipse.html +199 -0
- data/documentation/_build/html/ide/eclipse/how_to_install_eclipse_plugin.html +3 -3
- data/documentation/_build/html/ide/eclipse/how_to_use_bake_in_eclipse.html +3 -3
- data/documentation/_build/html/ide/ide_integrations.html +4 -3
- data/documentation/_build/html/ide/vs/how_to_create_vs_projects.html +3 -3
- data/documentation/_build/html/ide/vs/how_to_debug_in_vs.html +3 -3
- data/documentation/_build/html/ide/vs/how_to_used_bake_in_vs.html +3 -3
- data/documentation/_build/html/ide/vs/vs.html +5 -5
- data/documentation/_build/html/ide/vs/vs_install.html +3 -3
- data/documentation/_build/html/index.html +6 -6
- data/documentation/_build/html/install/install_bake.html +3 -3
- data/documentation/_build/html/internal.html +3 -3
- data/documentation/_build/html/known_issues.html +3 -3
- data/documentation/_build/html/license.html +3 -3
- data/documentation/_build/html/performance/performance.html +3 -3
- data/documentation/_build/html/quickstart/quickstart.html +3 -3
- data/documentation/_build/html/search.html +3 -3
- data/documentation/_build/html/searchindex.js +1 -1
- data/documentation/_build/html/syntax/adapt_configs.html +3 -3
- data/documentation/_build/html/syntax/derive_configs.html +3 -3
- data/documentation/_build/html/syntax/project_meta_syntax.html +3 -3
- data/documentation/_build/html/syntax/syntax.html +3 -3
- data/documentation/_build/html/syntax/variable_substitutions.html +3 -3
- data/documentation/_build/html/tips_and_tricks/bundle.html +3 -3
- data/documentation/_build/html/tips_and_tricks/how_to_use_bake_with_cygwin.html +3 -3
- data/documentation/_build/html/tips_and_tricks/static_code_analysis.html +3 -3
- data/documentation/_build/html/tips_and_tricks/the_bakery.html +3 -3
- data/documentation/_build/html/tips_and_tricks/the_clang.html +3 -3
- data/documentation/_build/html/tips_and_tricks/tips_and_tricks.html +3 -3
- data/documentation/_build/html/why_bake/why_bake.html +5 -5
- data/lib/bake/config/loader.rb +60 -32
- data/lib/bake/libElement.rb +1 -1
- data/lib/bake/options/options.rb +1 -4
- data/lib/blocks/block.rb +5 -2
- data/lib/blocks/blockBase.rb +15 -1
- data/lib/blocks/compile.rb +3 -17
- data/lib/blocks/executable.rb +16 -15
- data/lib/common/exit_helper.rb +11 -1
- data/lib/common/version.rb +1 -1
- metadata +47 -3
- data/lib/bake/options/showConfigNames.rb +0 -41
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<head>
|
|
6
6
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
7
7
|
|
|
8
|
-
<title>The Bakery — bake 2.
|
|
8
|
+
<title>The Bakery — bake 2.17.1 documentation</title>
|
|
9
9
|
|
|
10
10
|
<link rel="stylesheet" href="../_static/basic.css" type="text/css" />
|
|
11
11
|
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<script type="text/javascript">
|
|
16
16
|
var DOCUMENTATION_OPTIONS = {
|
|
17
17
|
URL_ROOT: '../',
|
|
18
|
-
VERSION: '2.
|
|
18
|
+
VERSION: '2.17.1',
|
|
19
19
|
COLLAPSE_INDEX: false,
|
|
20
20
|
FILE_SUFFIX: '.html',
|
|
21
21
|
HAS_SOURCE: true
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
<script type="text/javascript" src="../_static/bootstrap-3.3.4/js/bootstrap.min.js"></script>
|
|
30
30
|
<script type="text/javascript" src="../_static/bootstrap-sphinx.js"></script>
|
|
31
31
|
<link rel="shortcut icon" href="../_static/logo_tiny_32.ico"/>
|
|
32
|
-
<link rel="top" title="bake 2.
|
|
32
|
+
<link rel="top" title="bake 2.17.1 documentation" href="../index.html" />
|
|
33
33
|
<link rel="up" title="Tips and Tricks" href="tips_and_tricks.html" />
|
|
34
34
|
<link rel="next" title="Static Code Analysis" href="static_code_analysis.html" />
|
|
35
35
|
<link rel="prev" title="Tips and Tricks" href="tips_and_tricks.html" />
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<head>
|
|
6
6
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
7
7
|
|
|
8
|
-
<title>Clang Analyze — bake 2.
|
|
8
|
+
<title>Clang Analyze — bake 2.17.1 documentation</title>
|
|
9
9
|
|
|
10
10
|
<link rel="stylesheet" href="../_static/basic.css" type="text/css" />
|
|
11
11
|
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<script type="text/javascript">
|
|
16
16
|
var DOCUMENTATION_OPTIONS = {
|
|
17
17
|
URL_ROOT: '../',
|
|
18
|
-
VERSION: '2.
|
|
18
|
+
VERSION: '2.17.1',
|
|
19
19
|
COLLAPSE_INDEX: false,
|
|
20
20
|
FILE_SUFFIX: '.html',
|
|
21
21
|
HAS_SOURCE: true
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
<script type="text/javascript" src="../_static/bootstrap-3.3.4/js/bootstrap.min.js"></script>
|
|
30
30
|
<script type="text/javascript" src="../_static/bootstrap-sphinx.js"></script>
|
|
31
31
|
<link rel="shortcut icon" href="../_static/logo_tiny_32.ico"/>
|
|
32
|
-
<link rel="top" title="bake 2.
|
|
32
|
+
<link rel="top" title="bake 2.17.1 documentation" href="../index.html" />
|
|
33
33
|
<link rel="up" title="Tips and Tricks" href="tips_and_tricks.html" />
|
|
34
34
|
<link rel="next" title="Bundle projects" href="bundle.html" />
|
|
35
35
|
<link rel="prev" title="How to use bake with cygwin" href="how_to_use_bake_with_cygwin.html" />
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<head>
|
|
6
6
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
7
7
|
|
|
8
|
-
<title>Tips and Tricks — bake 2.
|
|
8
|
+
<title>Tips and Tricks — bake 2.17.1 documentation</title>
|
|
9
9
|
|
|
10
10
|
<link rel="stylesheet" href="../_static/basic.css" type="text/css" />
|
|
11
11
|
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<script type="text/javascript">
|
|
16
16
|
var DOCUMENTATION_OPTIONS = {
|
|
17
17
|
URL_ROOT: '../',
|
|
18
|
-
VERSION: '2.
|
|
18
|
+
VERSION: '2.17.1',
|
|
19
19
|
COLLAPSE_INDEX: false,
|
|
20
20
|
FILE_SUFFIX: '.html',
|
|
21
21
|
HAS_SOURCE: true
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
<script type="text/javascript" src="../_static/bootstrap-3.3.4/js/bootstrap.min.js"></script>
|
|
30
30
|
<script type="text/javascript" src="../_static/bootstrap-sphinx.js"></script>
|
|
31
31
|
<link rel="shortcut icon" href="../_static/logo_tiny_32.ico"/>
|
|
32
|
-
<link rel="top" title="bake 2.
|
|
32
|
+
<link rel="top" title="bake 2.17.1 documentation" href="../index.html" />
|
|
33
33
|
<link rel="next" title="The Bakery" href="the_bakery.html" />
|
|
34
34
|
<link rel="prev" title="How to Debug in Visual Studio" href="../ide/vs/how_to_debug_in_vs.html" />
|
|
35
35
|
<meta charset='utf-8'>
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<head>
|
|
6
6
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
7
7
|
|
|
8
|
-
<title>Why you should use bake — bake 2.
|
|
8
|
+
<title>Why you should use bake — bake 2.17.1 documentation</title>
|
|
9
9
|
|
|
10
10
|
<link rel="stylesheet" href="../_static/basic.css" type="text/css" />
|
|
11
11
|
<link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
<script type="text/javascript">
|
|
16
16
|
var DOCUMENTATION_OPTIONS = {
|
|
17
17
|
URL_ROOT: '../',
|
|
18
|
-
VERSION: '2.
|
|
18
|
+
VERSION: '2.17.1',
|
|
19
19
|
COLLAPSE_INDEX: false,
|
|
20
20
|
FILE_SUFFIX: '.html',
|
|
21
21
|
HAS_SOURCE: true
|
|
@@ -29,9 +29,9 @@
|
|
|
29
29
|
<script type="text/javascript" src="../_static/bootstrap-3.3.4/js/bootstrap.min.js"></script>
|
|
30
30
|
<script type="text/javascript" src="../_static/bootstrap-sphinx.js"></script>
|
|
31
31
|
<link rel="shortcut icon" href="../_static/logo_tiny_32.ico"/>
|
|
32
|
-
<link rel="top" title="bake 2.
|
|
32
|
+
<link rel="top" title="bake 2.17.1 documentation" href="../index.html" />
|
|
33
33
|
<link rel="next" title="Install bake" href="../install/install_bake.html" />
|
|
34
|
-
<link rel="prev" title="bake 2.
|
|
34
|
+
<link rel="prev" title="bake 2.17.1" href="../index.html" />
|
|
35
35
|
<meta charset='utf-8'>
|
|
36
36
|
<meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
|
|
37
37
|
<meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1'>
|
|
@@ -108,7 +108,7 @@
|
|
|
108
108
|
|
|
109
109
|
|
|
110
110
|
<li>
|
|
111
|
-
<a href="../index.html" title="Previous Chapter: bake 2.
|
|
111
|
+
<a href="../index.html" title="Previous Chapter: bake 2.17.1"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">« bake 2.17.1</span>
|
|
112
112
|
</a>
|
|
113
113
|
</li>
|
|
114
114
|
<li>
|
data/lib/bake/config/loader.rb
CHANGED
|
@@ -231,26 +231,24 @@ module Bake
|
|
|
231
231
|
end
|
|
232
232
|
|
|
233
233
|
@project_files = []
|
|
234
|
-
|
|
235
234
|
configs = loadProjMeta(mainMeta)
|
|
236
235
|
@loadedConfigs = {}
|
|
237
236
|
@loadedConfigs[Bake.options.main_project_name] = configs
|
|
238
|
-
|
|
239
|
-
if
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
config, Bake.options.build_config = getFullProject(configs,Bake.options.build_config, true)
|
|
244
|
-
@referencedConfigs = {}
|
|
245
|
-
@referencedConfigs[Bake.options.main_project_name] = [config]
|
|
237
|
+
|
|
238
|
+
if not showConfigNames?
|
|
239
|
+
config, Bake.options.build_config = getFullProject(configs,Bake.options.build_config, true)
|
|
240
|
+
@referencedConfigs = {}
|
|
241
|
+
@referencedConfigs[Bake.options.main_project_name] = [config]
|
|
246
242
|
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
243
|
+
validateDependencies(config)
|
|
244
|
+
@depsPending = config.dependency
|
|
245
|
+
|
|
246
|
+
if Bake.options.build_config != "" and config.defaultToolchain == nil
|
|
247
|
+
Bake.formatter.printError("Main project configuration must contain DefaultToolchain", config)
|
|
248
|
+
ExitHelper.exit(1)
|
|
249
|
+
end
|
|
250
250
|
end
|
|
251
251
|
|
|
252
|
-
validateDependencies(config)
|
|
253
|
-
@depsPending = config.dependency
|
|
254
252
|
end
|
|
255
253
|
|
|
256
254
|
def checkRoots()
|
|
@@ -300,29 +298,59 @@ module Bake
|
|
|
300
298
|
end
|
|
301
299
|
end
|
|
302
300
|
|
|
301
|
+
def defaultConfigName
|
|
302
|
+
@loadedConfigs[Bake.options.main_project_name].first.parent.default
|
|
303
|
+
end
|
|
304
|
+
|
|
305
|
+
def showConfigNames?
|
|
306
|
+
Bake.options.showConfigs or (Bake.options.build_config == "" and defaultConfigName == "")
|
|
307
|
+
end
|
|
308
|
+
|
|
309
|
+
def printConfigNames
|
|
310
|
+
mainConfigName = Bake.options.build_config != "" ? Bake.options.build_config : defaultConfigName
|
|
311
|
+
configs = @loadedConfigs[Bake.options.main_project_name]
|
|
312
|
+
foundValidConfig = false
|
|
313
|
+
configs.each do |c|
|
|
314
|
+
config, tmp = getFullProject(configs, c.name, c.name == mainConfigName)
|
|
315
|
+
next if config.defaultToolchain.nil?
|
|
316
|
+
Kernel.print "* #{config.name}"
|
|
317
|
+
Kernel.print " (default)" if config.name == defaultConfigName
|
|
318
|
+
Kernel.print ": #{config.description.text}" if config.description
|
|
319
|
+
Kernel.print "\n"
|
|
320
|
+
foundValidConfig = true
|
|
321
|
+
end
|
|
322
|
+
|
|
323
|
+
Bake.formatter.printWarning("No configuration with a DefaultToolchain found", Bake.options.main_dir+"/Project.meta") unless foundValidConfig
|
|
324
|
+
ExitHelper.exit(0)
|
|
325
|
+
end
|
|
326
|
+
|
|
303
327
|
def load(adaptConfigs)
|
|
304
328
|
@adaptConfigs = adaptConfigs
|
|
305
|
-
|
|
306
329
|
@loader = Loader.new
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
330
|
+
if not Bake.options.showConfigs
|
|
331
|
+
cache = CacheAccess.new()
|
|
332
|
+
@referencedConfigs = cache.load_cache unless Bake.options.nocache
|
|
333
|
+
# cache invalid or forced to reload
|
|
334
|
+
if @referencedConfigs.nil?
|
|
335
|
+
loadMainMeta
|
|
336
|
+
printConfigNames if showConfigNames? # if neither config name nor default is set, list the configs with DefaultToolchain
|
|
337
|
+
checkRoots
|
|
338
|
+
while dep = @depsPending.shift
|
|
339
|
+
loadMeta(dep)
|
|
340
|
+
end
|
|
341
|
+
filterSteps
|
|
342
|
+
cache.write_cache(@project_files, @referencedConfigs)
|
|
343
|
+
else
|
|
344
|
+
if showConfigNames?
|
|
345
|
+
loadMainMeta # needed because in cache only needed configs are stored
|
|
346
|
+
printConfigNames
|
|
347
|
+
end
|
|
316
348
|
end
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
end
|
|
322
|
-
|
|
349
|
+
else
|
|
350
|
+
loadMainMeta # "--list" specified
|
|
351
|
+
printConfigNames
|
|
352
|
+
end
|
|
323
353
|
end
|
|
324
354
|
|
|
325
|
-
|
|
326
355
|
end
|
|
327
|
-
|
|
328
356
|
end
|
data/lib/bake/libElement.rb
CHANGED
|
@@ -52,7 +52,7 @@ module Bake
|
|
|
52
52
|
prefix = nil
|
|
53
53
|
|
|
54
54
|
if block.library
|
|
55
|
-
if (not block.library.compileBlock.objects.empty?) or block.library.compileBlock.calcSources(true)
|
|
55
|
+
if (not block.library.compileBlock.objects.empty?) or not block.library.compileBlock.calcSources(true, true).empty?
|
|
56
56
|
adaptedPath, prefix = adaptPath(block.library.archive_name, block, prefix)
|
|
57
57
|
@@linker_libs_array << adaptedPath
|
|
58
58
|
@@source_libraries << adaptedPath
|
data/lib/bake/options/options.rb
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
require 'bake/toolchain/colorizing_formatter'
|
|
2
2
|
require 'common/options/parser'
|
|
3
3
|
require 'bake/options/showToolchains'
|
|
4
|
-
require 'bake/options/showConfigNames'
|
|
5
4
|
require 'bake/options/showLicense'
|
|
6
5
|
require 'bake/options/showDoc'
|
|
7
6
|
require 'bake/options/usage'
|
|
@@ -18,7 +17,7 @@ module Bake
|
|
|
18
17
|
end
|
|
19
18
|
|
|
20
19
|
class Options < Parser
|
|
21
|
-
attr_accessor :build_config, :nocache, :analyze, :eclipseOrder, :envToolchain
|
|
20
|
+
attr_accessor :build_config, :nocache, :analyze, :eclipseOrder, :envToolchain, :showConfigs
|
|
22
21
|
attr_reader :main_dir, :project, :filename, :main_project_name, :cc2j_filename, :bundleDir # String
|
|
23
22
|
attr_reader :roots, :include_filter, :exclude_filter, :adapt # String List
|
|
24
23
|
attr_reader :conversion_info, :stopOnFirstError, :clean, :rebuild, :show_includes, :show_includes_and_defines, :linkOnly, :no_autodir, :clobber, :lint, :docu, :debug, :prepro # Boolean
|
|
@@ -206,8 +205,6 @@ module Bake
|
|
|
206
205
|
Bake.formatter.printError("Error: --lint and --docu not allowed at the same time")
|
|
207
206
|
ExitHelper.exit(1)
|
|
208
207
|
end
|
|
209
|
-
|
|
210
|
-
ConfigNames.show if @showConfigs
|
|
211
208
|
end
|
|
212
209
|
|
|
213
210
|
def check_valid_dir(dir)
|
data/lib/blocks/block.rb
CHANGED
|
@@ -16,7 +16,7 @@ module Bake
|
|
|
16
16
|
class Block
|
|
17
17
|
|
|
18
18
|
attr_reader :lib_elements, :projectDir, :library, :config, :projectName, :warnConvValid
|
|
19
|
-
attr_accessor :visited, :inDeps, :result
|
|
19
|
+
attr_accessor :visited, :inDeps, :result
|
|
20
20
|
|
|
21
21
|
def startupSteps
|
|
22
22
|
@startupSteps ||= []
|
|
@@ -56,7 +56,6 @@ module Bake
|
|
|
56
56
|
|
|
57
57
|
def initialize(config, referencedConfigs)
|
|
58
58
|
@inDeps = false
|
|
59
|
-
@circularCheck
|
|
60
59
|
@visited = false
|
|
61
60
|
@library = nil
|
|
62
61
|
@config = config
|
|
@@ -70,6 +69,10 @@ module Bake
|
|
|
70
69
|
@lib_elements = Bake::LibElements.calcLibElements(self)
|
|
71
70
|
end
|
|
72
71
|
|
|
72
|
+
def getCompileBlocks()
|
|
73
|
+
mainSteps.select { |m| Compile === m }
|
|
74
|
+
end
|
|
75
|
+
|
|
73
76
|
def convPath(dir, elem=nil, warnIfLocal=false)
|
|
74
77
|
if dir.respond_to?("name")
|
|
75
78
|
d = dir.name
|
data/lib/blocks/blockBase.rb
CHANGED
|
@@ -198,8 +198,22 @@ module Bake
|
|
|
198
198
|
end
|
|
199
199
|
incList
|
|
200
200
|
end
|
|
201
|
+
|
|
202
|
+
def getSubBlocks(b, method)
|
|
203
|
+
b.send(method).each do |child_b|
|
|
204
|
+
if not @otherBlocks.include?child_b
|
|
205
|
+
@otherBlocks << child_b
|
|
206
|
+
getSubBlocks(child_b, method)
|
|
207
|
+
end
|
|
208
|
+
end
|
|
209
|
+
end
|
|
201
210
|
|
|
211
|
+
def getBlocks(method)
|
|
212
|
+
@otherBlocks = []
|
|
213
|
+
getSubBlocks(@block, method)
|
|
214
|
+
return @otherBlocks
|
|
215
|
+
end
|
|
216
|
+
|
|
202
217
|
end
|
|
203
|
-
|
|
204
218
|
end
|
|
205
219
|
end
|
data/lib/blocks/compile.rb
CHANGED
|
@@ -347,7 +347,8 @@ module Bake
|
|
|
347
347
|
end
|
|
348
348
|
end
|
|
349
349
|
|
|
350
|
-
def calcSources(cleaning = false)
|
|
350
|
+
def calcSources(cleaning = false, keep = false)
|
|
351
|
+
return @source_files if @source_files and not @source_files.empty?
|
|
351
352
|
Dir.chdir(@projectDir) do
|
|
352
353
|
@source_files = []
|
|
353
354
|
|
|
@@ -405,24 +406,9 @@ module Bake
|
|
|
405
406
|
end
|
|
406
407
|
end
|
|
407
408
|
end
|
|
408
|
-
|
|
409
|
+
@source_files
|
|
409
410
|
end
|
|
410
411
|
|
|
411
|
-
def getSubBlocks(b, method)
|
|
412
|
-
b.send(method).each do |child_b|
|
|
413
|
-
if not @otherBlocks.include?child_b
|
|
414
|
-
@otherBlocks << child_b
|
|
415
|
-
getSubBlocks(child_b, method)
|
|
416
|
-
end
|
|
417
|
-
end
|
|
418
|
-
end
|
|
419
|
-
|
|
420
|
-
def getBlocks(method)
|
|
421
|
-
@otherBlocks = []
|
|
422
|
-
getSubBlocks(@block, method)
|
|
423
|
-
return @otherBlocks
|
|
424
|
-
end
|
|
425
|
-
|
|
426
412
|
def mapInclude(inc, orgBlock)
|
|
427
413
|
|
|
428
414
|
if inc.name == "___ROOTS___"
|
data/lib/blocks/executable.rb
CHANGED
|
@@ -44,18 +44,6 @@ module Bake
|
|
|
44
44
|
end
|
|
45
45
|
end
|
|
46
46
|
|
|
47
|
-
def depHasError(block)
|
|
48
|
-
return false if block.circularCheck
|
|
49
|
-
block.circularCheck = true
|
|
50
|
-
block.dependencies.each do |dep|
|
|
51
|
-
subBlock, name = Blocks::ALL_BLOCKS[dep]
|
|
52
|
-
return true unless subBlock.result
|
|
53
|
-
return true if depHasError(subBlock)
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
return false
|
|
57
|
-
end
|
|
58
|
-
|
|
59
47
|
def ignore?
|
|
60
48
|
Bake.options.prepro
|
|
61
49
|
end
|
|
@@ -90,9 +78,22 @@ module Bake
|
|
|
90
78
|
|
|
91
79
|
def execute
|
|
92
80
|
Dir.chdir(@projectDir) do
|
|
93
|
-
|
|
94
|
-
return false if
|
|
95
|
-
|
|
81
|
+
childs = getBlocks(:childs)
|
|
82
|
+
return false if childs.any? { |b| b.result == false }
|
|
83
|
+
|
|
84
|
+
allSources = []
|
|
85
|
+
(childs + [@block]).each do |b|
|
|
86
|
+
Dir.chdir(b.projectDir) do
|
|
87
|
+
b.getCompileBlocks.each do |c|
|
|
88
|
+
allSources += c.calcSources(true, true).map { |s| File.expand_path(s) }
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
duplicateSources = allSources.group_by{ |e| e }.select { |k, v| v.size > 1 }.map(&:first)
|
|
93
|
+
duplicateSources.each do |d|
|
|
94
|
+
Bake.formatter.printWarning("Source compiled more than once: #{d}")
|
|
95
|
+
end
|
|
96
|
+
|
|
96
97
|
libs, linker_libs_array = LibElements.calc_linker_lib_string(@block, @tcs)
|
|
97
98
|
|
|
98
99
|
cmdLineCheck = false
|
data/lib/common/exit_helper.rb
CHANGED
|
@@ -24,5 +24,15 @@ module Bake
|
|
|
24
24
|
end
|
|
25
25
|
|
|
26
26
|
at_exit do
|
|
27
|
-
|
|
27
|
+
if Bake::ExitHelper.exit_code != 0
|
|
28
|
+
exit(Bake::ExitHelper.exit_code)
|
|
29
|
+
elsif not $!.nil?
|
|
30
|
+
if $!.respond_to?("success")
|
|
31
|
+
exit($!.success? ? 0 : 1)
|
|
32
|
+
else
|
|
33
|
+
exit(1)
|
|
34
|
+
end
|
|
35
|
+
else
|
|
36
|
+
exit(0)
|
|
37
|
+
end
|
|
28
38
|
end
|
data/lib/common/version.rb
CHANGED
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: bake-toolkit
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.17.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Alexander Schaal
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2016-
|
|
11
|
+
date: 2016-03-15 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: rtext
|
|
@@ -66,6 +66,34 @@ dependencies:
|
|
|
66
66
|
- - '>='
|
|
67
67
|
- !ruby/object:Gem::Version
|
|
68
68
|
version: '0'
|
|
69
|
+
- !ruby/object:Gem::Dependency
|
|
70
|
+
name: simplecov
|
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
|
72
|
+
requirements:
|
|
73
|
+
- - '>='
|
|
74
|
+
- !ruby/object:Gem::Version
|
|
75
|
+
version: '0'
|
|
76
|
+
type: :development
|
|
77
|
+
prerelease: false
|
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
79
|
+
requirements:
|
|
80
|
+
- - '>='
|
|
81
|
+
- !ruby/object:Gem::Version
|
|
82
|
+
version: '0'
|
|
83
|
+
- !ruby/object:Gem::Dependency
|
|
84
|
+
name: coveralls
|
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
|
86
|
+
requirements:
|
|
87
|
+
- - '>='
|
|
88
|
+
- !ruby/object:Gem::Version
|
|
89
|
+
version: '0'
|
|
90
|
+
type: :development
|
|
91
|
+
prerelease: false
|
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
93
|
+
requirements:
|
|
94
|
+
- - '>='
|
|
95
|
+
- !ruby/object:Gem::Version
|
|
96
|
+
version: '0'
|
|
69
97
|
description: See documentation for more details
|
|
70
98
|
email: alexander.schaal@esrlabs.com
|
|
71
99
|
executables:
|
|
@@ -89,7 +117,6 @@ files:
|
|
|
89
117
|
- lib/bake/model/metamodel_ext.rb
|
|
90
118
|
- lib/bake/options/create.rb
|
|
91
119
|
- lib/bake/options/options.rb
|
|
92
|
-
- lib/bake/options/showConfigNames.rb
|
|
93
120
|
- lib/bake/options/showDoc.rb
|
|
94
121
|
- lib/bake/options/showLicense.rb
|
|
95
122
|
- lib/bake/options/showToolchains.rb
|
|
@@ -181,6 +208,11 @@ files:
|
|
|
181
208
|
- documentation/_build/html/_images/cygwin_mount.png
|
|
182
209
|
- documentation/_build/html/_images/cygwin_ruby.png
|
|
183
210
|
- documentation/_build/html/_images/cygwin_tty.png
|
|
211
|
+
- documentation/_build/html/_images/debug_app.png
|
|
212
|
+
- documentation/_build/html/_images/debug_debug.png
|
|
213
|
+
- documentation/_build/html/_images/debug_flag.png
|
|
214
|
+
- documentation/_build/html/_images/debug_map.png
|
|
215
|
+
- documentation/_build/html/_images/debug_path.png
|
|
184
216
|
- documentation/_build/html/_images/keys.png
|
|
185
217
|
- documentation/_build/html/_images/logo_conformant_1024.png
|
|
186
218
|
- documentation/_build/html/_images/logo_conformant_48.png
|
|
@@ -206,6 +238,7 @@ files:
|
|
|
206
238
|
- documentation/_build/html/_sources/ide/eclipse/how_to_convert_existing_cdt_workspace.txt
|
|
207
239
|
- documentation/_build/html/_sources/ide/eclipse/how_to_create_a_new_project_in_eclipse.txt
|
|
208
240
|
- documentation/_build/html/_sources/ide/eclipse/how_to_create_a_workspace_in_eclipse.txt
|
|
241
|
+
- documentation/_build/html/_sources/ide/eclipse/how_to_debug_in_eclipse.txt
|
|
209
242
|
- documentation/_build/html/_sources/ide/eclipse/how_to_install_eclipse_plugin.txt
|
|
210
243
|
- documentation/_build/html/_sources/ide/eclipse/how_to_use_bake_in_eclipse.txt
|
|
211
244
|
- documentation/_build/html/_sources/ide/ide_integrations.txt
|
|
@@ -339,6 +372,16 @@ files:
|
|
|
339
372
|
- documentation/_build/html/_static/cygwin_mount.png
|
|
340
373
|
- documentation/_build/html/_static/cygwin_ruby.png
|
|
341
374
|
- documentation/_build/html/_static/cygwin_tty.png
|
|
375
|
+
- documentation/_build/html/_static/debugEclipse/app.png
|
|
376
|
+
- documentation/_build/html/_static/debugEclipse/debug.png
|
|
377
|
+
- documentation/_build/html/_static/debugEclipse/flag.png
|
|
378
|
+
- documentation/_build/html/_static/debugEclipse/map.png
|
|
379
|
+
- documentation/_build/html/_static/debugEclipse/path.png
|
|
380
|
+
- documentation/_build/html/_static/debug_app.png
|
|
381
|
+
- documentation/_build/html/_static/debug_debug.png
|
|
382
|
+
- documentation/_build/html/_static/debug_flag.png
|
|
383
|
+
- documentation/_build/html/_static/debug_map.png
|
|
384
|
+
- documentation/_build/html/_static/debug_path.png
|
|
342
385
|
- documentation/_build/html/_static/doctools.js
|
|
343
386
|
- documentation/_build/html/_static/down-pressed.png
|
|
344
387
|
- documentation/_build/html/_static/down.png
|
|
@@ -400,6 +443,7 @@ files:
|
|
|
400
443
|
- documentation/_build/html/ide/eclipse/how_to_convert_existing_cdt_workspace.html
|
|
401
444
|
- documentation/_build/html/ide/eclipse/how_to_create_a_new_project_in_eclipse.html
|
|
402
445
|
- documentation/_build/html/ide/eclipse/how_to_create_a_workspace_in_eclipse.html
|
|
446
|
+
- documentation/_build/html/ide/eclipse/how_to_debug_in_eclipse.html
|
|
403
447
|
- documentation/_build/html/ide/eclipse/how_to_install_eclipse_plugin.html
|
|
404
448
|
- documentation/_build/html/ide/eclipse/how_to_use_bake_in_eclipse.html
|
|
405
449
|
- documentation/_build/html/ide/ide_integrations.html
|