bake-toolkit 2.19.2 → 2.20.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/documentation/_build/html/_images/dot.png +0 -0
  3. data/documentation/_build/html/_images/dotP.png +0 -0
  4. data/documentation/_build/html/_images/dotPC.png +0 -0
  5. data/documentation/_build/html/_sources/changelog.txt +12 -0
  6. data/documentation/_build/html/_sources/concepts/concepts.txt +2 -0
  7. data/documentation/_build/html/_sources/concepts/inject.txt +65 -0
  8. data/documentation/_build/html/_sources/concepts/prebuild.txt +56 -0
  9. data/documentation/_build/html/_sources/index.txt +1 -1
  10. data/documentation/_build/html/_sources/syntax/auto_adjustment.txt +43 -0
  11. data/documentation/_build/html/_sources/syntax/syntax.txt +1 -1
  12. data/documentation/_build/html/_sources/syntax/variable_substitutions.txt +41 -68
  13. data/documentation/_build/html/_sources/tips_and_tricks/dot.txt +34 -0
  14. data/documentation/_build/html/_sources/tips_and_tricks/tips_and_tricks.txt +1 -1
  15. data/documentation/_build/html/_static/dot.png +0 -0
  16. data/documentation/_build/html/_static/dotP.png +0 -0
  17. data/documentation/_build/html/_static/dotPC.png +0 -0
  18. data/documentation/_build/html/_static/syntax.html +20 -0
  19. data/documentation/_build/html/changelog.html +17 -3
  20. data/documentation/_build/html/commandline/commandline.html +3 -3
  21. data/documentation/_build/html/concepts/build_hierarchy.html +3 -3
  22. data/documentation/_build/html/concepts/concepts.html +13 -3
  23. data/documentation/_build/html/concepts/inject.html +217 -0
  24. data/documentation/_build/html/concepts/link_order.html +3 -3
  25. data/documentation/_build/html/concepts/prebuild.html +205 -0
  26. data/documentation/_build/html/concepts/the_main_project.html +3 -3
  27. data/documentation/_build/html/concepts/the_project_meta_file.html +3 -3
  28. data/documentation/_build/html/genindex.html +3 -3
  29. data/documentation/_build/html/ide/eclipse/eclipse.html +3 -3
  30. data/documentation/_build/html/ide/eclipse/how_to_convert_existing_cdt_workspace.html +3 -3
  31. data/documentation/_build/html/ide/eclipse/how_to_create_a_new_project_in_eclipse.html +3 -3
  32. data/documentation/_build/html/ide/eclipse/how_to_create_a_workspace_in_eclipse.html +3 -3
  33. data/documentation/_build/html/ide/eclipse/how_to_debug_in_eclipse.html +3 -3
  34. data/documentation/_build/html/ide/eclipse/how_to_install_eclipse_plugin.html +3 -3
  35. data/documentation/_build/html/ide/eclipse/how_to_use_bake_in_eclipse.html +3 -3
  36. data/documentation/_build/html/ide/ide_integrations.html +3 -3
  37. data/documentation/_build/html/ide/vs/how_to_create_vs_projects.html +3 -3
  38. data/documentation/_build/html/ide/vs/how_to_debug_in_vs.html +3 -3
  39. data/documentation/_build/html/ide/vs/how_to_used_bake_in_vs.html +3 -3
  40. data/documentation/_build/html/ide/vs/vs.html +3 -3
  41. data/documentation/_build/html/ide/vs/vs_install.html +3 -3
  42. data/documentation/_build/html/index.html +10 -7
  43. data/documentation/_build/html/install/install_bake.html +3 -3
  44. data/documentation/_build/html/internal.html +3 -3
  45. data/documentation/_build/html/known_issues.html +3 -3
  46. data/documentation/_build/html/license.html +3 -3
  47. data/documentation/_build/html/performance/performance.html +5 -5
  48. data/documentation/_build/html/quickstart/quickstart.html +3 -3
  49. data/documentation/_build/html/search.html +3 -3
  50. data/documentation/_build/html/searchindex.js +1 -1
  51. data/documentation/_build/html/syntax/adapt_configs.html +3 -3
  52. data/documentation/_build/html/syntax/auto_adjustment.html +190 -0
  53. data/documentation/_build/html/syntax/derive_configs.html +3 -3
  54. data/documentation/_build/html/syntax/project_meta_syntax.html +23 -3
  55. data/documentation/_build/html/syntax/syntax.html +11 -7
  56. data/documentation/_build/html/syntax/variable_substitutions.html +54 -67
  57. data/documentation/_build/html/tips_and_tricks/{bundle.html → dot.html} +25 -19
  58. data/documentation/_build/html/tips_and_tricks/how_to_use_bake_with_cygwin.html +3 -3
  59. data/documentation/_build/html/tips_and_tricks/static_code_analysis.html +3 -3
  60. data/documentation/_build/html/tips_and_tricks/the_bakery.html +3 -3
  61. data/documentation/_build/html/tips_and_tricks/the_clang.html +5 -5
  62. data/documentation/_build/html/tips_and_tricks/tips_and_tricks.html +4 -4
  63. data/documentation/_build/html/why_bake/why_bake.html +5 -5
  64. data/lib/adapt/config/loader.rb +37 -35
  65. data/lib/bake/config/checks.rb +19 -11
  66. data/lib/bake/config/loader.rb +67 -60
  67. data/lib/bake/model/metamodel.rb +56 -30
  68. data/lib/bake/options/options.rb +37 -3
  69. data/lib/bake/options/usage.rb +12 -3
  70. data/lib/bake/subst.rb +5 -2
  71. data/lib/blocks/block.rb +27 -6
  72. data/lib/blocks/blockBase.rb +2 -17
  73. data/lib/blocks/compile.rb +91 -91
  74. data/lib/blocks/executable.rb +41 -41
  75. data/lib/common/version.rb +1 -1
  76. data/lib/tocxx.rb +212 -55
  77. metadata +16 -4
  78. data/documentation/_build/html/_sources/tips_and_tricks/bundle.txt +0 -24
@@ -5,7 +5,7 @@
5
5
  <head>
6
6
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
7
 
8
- <title>Changelog &mdash; bake 2.19.2 documentation</title>
8
+ <title>Changelog &mdash; bake 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.19.2',
18
+ VERSION: '',
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.19.2 documentation" href="index.html" />
32
+ <link rel="top" title="bake documentation" href="index.html" />
33
33
  <link rel="next" title="License" href="license.html" />
34
34
  <link rel="prev" title="Known Issues" href="known_issues.html" />
35
35
  <meta charset='utf-8'>
@@ -140,6 +140,20 @@
140
140
  <div class="section" id="changelog">
141
141
  <h1>Changelog<a class="headerlink" href="#changelog" title="Permalink to this headline">¶</a></h1>
142
142
  <dl class="docutils">
143
+ <dt>September 5, 2016 - bake-toolkit 2.20.1</dt>
144
+ <dd><ul class="first last simple">
145
+ <li>Added: inject feature for dependencies</li>
146
+ <li>Added: option to generate a dot graph file</li>
147
+ <li>Added: <em>prebuild</em> feature for distribution builds</li>
148
+ <li>Added: commandline option <em>&#8211;build_</em> to enable the old outputdir behaviour: <em>build_</em> instead of <em>build/</em></li>
149
+ <li>Added: printing out more information when loading Project.metas in verbosity level 3</li>
150
+ <li>Changed: circular dependency warning moved from verbosity level 1 to 3</li>
151
+ <li>Added: ToolchainName is now a predefined variable for Project.meta</li>
152
+ <li>Added: &#8211;compile-only option (which is equal to the workaround -f &#8221;.&#8221;)</li>
153
+ <li>Bugfix: &#8211;adapt commandline option accepts absolute paths now</li>
154
+ <li>Changed: removed the <em>bundle</em> feature</li>
155
+ </ul>
156
+ </dd>
143
157
  <dt>August 12, 2016 - bake-toolkit 2.19.2</dt>
144
158
  <dd><ul class="first last simple">
145
159
  <li>Bugfix: fixed TI linker error parser</li>
@@ -5,7 +5,7 @@
5
5
  <head>
6
6
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
7
 
8
- <title>Commandline &mdash; bake 2.19.2 documentation</title>
8
+ <title>Commandline &mdash; bake 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.19.2',
18
+ VERSION: '',
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.19.2 documentation" href="../index.html" />
32
+ <link rel="top" title="bake documentation" href="../index.html" />
33
33
  <link rel="next" title="IDE Support" href="../ide/ide_integrations.html" />
34
34
  <link rel="prev" title="Adapt configs" href="../syntax/adapt_configs.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>The build hierarchy &mdash; bake 2.19.2 documentation</title>
8
+ <title>The build hierarchy &mdash; bake 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.19.2',
18
+ VERSION: '',
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.19.2 documentation" href="../index.html" />
32
+ <link rel="top" title="bake documentation" href="../index.html" />
33
33
  <link rel="up" title="Concepts" href="concepts.html" />
34
34
  <link rel="next" title="The link order" href="link_order.html" />
35
35
  <link rel="prev" title="The main project" href="the_main_project.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>Concepts &mdash; bake 2.19.2 documentation</title>
8
+ <title>Concepts &mdash; bake 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.19.2',
18
+ VERSION: '',
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.19.2 documentation" href="../index.html" />
32
+ <link rel="top" title="bake documentation" href="../index.html" />
33
33
  <link rel="next" title="The Project.meta file" href="the_project_meta_file.html" />
34
34
  <link rel="prev" title="Quickstart" href="../quickstart/quickstart.html" />
35
35
  <meta charset='utf-8'>
@@ -162,6 +162,16 @@
162
162
  <li class="toctree-l2"><a class="reference internal" href="link_order.html#same-example-but-with-external-libraries">Same example but with external libraries:</a></li>
163
163
  </ul>
164
164
  </li>
165
+ <li class="toctree-l1"><a class="reference internal" href="prebuild.html">Prebuild configurations for distributions</a><ul>
166
+ <li class="toctree-l2"><a class="reference internal" href="prebuild.html#typical-workflow">Typical workflow</a></li>
167
+ </ul>
168
+ </li>
169
+ <li class="toctree-l1"><a class="reference internal" href="inject.html">Injection and inheritance of IncludeDir and Dependency</a><ul>
170
+ <li class="toctree-l2"><a class="reference internal" href="inject.html#inherit-includedir">Inherit IncludeDir</a></li>
171
+ <li class="toctree-l2"><a class="reference internal" href="inject.html#inject-includedir">Inject IncludeDir</a></li>
172
+ <li class="toctree-l2"><a class="reference internal" href="inject.html#inject-dependency">Inject Dependency</a></li>
173
+ </ul>
174
+ </li>
165
175
  </ul>
166
176
  </div>
167
177
  </div>
@@ -0,0 +1,217 @@
1
+ <!DOCTYPE html>
2
+
3
+
4
+ <html xmlns="http://www.w3.org/1999/xhtml">
5
+ <head>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+
8
+ <title>Injection and inheritance of IncludeDir and Dependency &mdash; bake documentation</title>
9
+
10
+ <link rel="stylesheet" href="../_static/basic.css" type="text/css" />
11
+ <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
12
+ <link rel="stylesheet" href="../_static/bootswatch-3.3.4/sandstone/bootstrap.min.css" type="text/css" />
13
+ <link rel="stylesheet" href="../_static/bootstrap-sphinx.css" type="text/css" />
14
+
15
+ <script type="text/javascript">
16
+ var DOCUMENTATION_OPTIONS = {
17
+ URL_ROOT: '../',
18
+ VERSION: '',
19
+ COLLAPSE_INDEX: false,
20
+ FILE_SUFFIX: '.html',
21
+ HAS_SOURCE: true
22
+ };
23
+ </script>
24
+ <script type="text/javascript" src="../_static/jquery.js"></script>
25
+ <script type="text/javascript" src="../_static/underscore.js"></script>
26
+ <script type="text/javascript" src="../_static/doctools.js"></script>
27
+ <script type="text/javascript" src="../_static/js/jquery-1.11.0.min.js"></script>
28
+ <script type="text/javascript" src="../_static/js/jquery-fix.js"></script>
29
+ <script type="text/javascript" src="../_static/bootstrap-3.3.4/js/bootstrap.min.js"></script>
30
+ <script type="text/javascript" src="../_static/bootstrap-sphinx.js"></script>
31
+ <link rel="shortcut icon" href="../_static/logo_tiny_32.ico"/>
32
+ <link rel="top" title="bake documentation" href="../index.html" />
33
+ <link rel="up" title="Concepts" href="concepts.html" />
34
+ <link rel="next" title="Syntax" href="../syntax/syntax.html" />
35
+ <link rel="prev" title="Prebuild configurations for distributions" href="prebuild.html" />
36
+ <meta charset='utf-8'>
37
+ <meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
38
+ <meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1'>
39
+ <meta name="apple-mobile-web-app-capable" content="yes">
40
+
41
+ </head>
42
+ <body role="document">
43
+
44
+ <div id="navbar" class="navbar navbar-default navbar-fixed-top">
45
+ <div class="container">
46
+ <div class="navbar-header">
47
+ <!-- .btn-navbar is used as the toggle for collapsed navbar content -->
48
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-collapse">
49
+ <span class="icon-bar"></span>
50
+ <span class="icon-bar"></span>
51
+ <span class="icon-bar"></span>
52
+ </button>
53
+ <a class="navbar-brand" href="../index.html"><img src="../_static/logo_conformant_48.png">
54
+ </a>
55
+ <span class="navbar-text navbar-version pull-left"><b></b></span>
56
+ </div>
57
+
58
+ <div class="collapse navbar-collapse nav-collapse">
59
+ <ul class="nav navbar-nav">
60
+
61
+
62
+ <li class="dropdown globaltoc-container">
63
+ <a role="button"
64
+ id="dLabelGlobalToc"
65
+ data-toggle="dropdown"
66
+ data-target="#"
67
+ href="../index.html">Section <b class="caret"></b></a>
68
+ <ul class="dropdown-menu globaltoc"
69
+ role="menu"
70
+ aria-labelledby="dLabelGlobalToc"><ul class="current">
71
+ <li class="toctree-l1"><a class="reference internal" href="../why_bake/why_bake.html">Why you should use bake</a></li>
72
+ <li class="toctree-l1"><a class="reference internal" href="../install/install_bake.html">Install bake</a></li>
73
+ <li class="toctree-l1"><a class="reference internal" href="../quickstart/quickstart.html">Quickstart</a></li>
74
+ <li class="toctree-l1 current"><a class="reference internal" href="concepts.html">Concepts</a></li>
75
+ <li class="toctree-l1"><a class="reference internal" href="../syntax/syntax.html">Syntax</a></li>
76
+ <li class="toctree-l1"><a class="reference internal" href="../commandline/commandline.html">Commandline</a></li>
77
+ <li class="toctree-l1"><a class="reference internal" href="../ide/ide_integrations.html">IDE Support</a></li>
78
+ <li class="toctree-l1"><a class="reference internal" href="../tips_and_tricks/tips_and_tricks.html">Tips and Tricks</a></li>
79
+ <li class="toctree-l1"><a class="reference internal" href="../performance/performance.html">Performance</a></li>
80
+ <li class="toctree-l1"><a class="reference internal" href="../known_issues.html">Known Issues</a></li>
81
+ <li class="toctree-l1"><a class="reference internal" href="../changelog.html">Changelog</a></li>
82
+ <li class="toctree-l1"><a class="reference internal" href="../license.html">License</a></li>
83
+ </ul>
84
+ <ul>
85
+ <li class="toctree-l1"><a class="reference internal" href="../internal.html">Internal developing notes</a></li>
86
+ </ul>
87
+ </ul>
88
+ </li>
89
+
90
+ <li class="dropdown">
91
+ <a role="button"
92
+ id="dLabelLocalToc"
93
+ data-toggle="dropdown"
94
+ data-target="#"
95
+ href="#">SubSections <b class="caret"></b></a>
96
+ <ul class="dropdown-menu localtoc"
97
+ role="menu"
98
+ aria-labelledby="dLabelLocalToc"><ul>
99
+ <li><a class="reference internal" href="#">Injection and inheritance of IncludeDir and Dependency</a><ul>
100
+ <li><a class="reference internal" href="#inherit-includedir">Inherit IncludeDir</a></li>
101
+ <li><a class="reference internal" href="#inject-includedir">Inject IncludeDir</a></li>
102
+ <li><a class="reference internal" href="#inject-dependency">Inject Dependency</a></li>
103
+ </ul>
104
+ </li>
105
+ </ul>
106
+ </ul>
107
+ </li>
108
+
109
+
110
+
111
+
112
+
113
+ <li>
114
+ <a href="prebuild.html" title="Previous Chapter: Prebuild configurations for distributions"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">&laquo; Prebuild conf...</span>
115
+ </a>
116
+ </li>
117
+ <li>
118
+ <a href="../syntax/syntax.html" title="Next Chapter: Syntax"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">Syntax &raquo;</span>
119
+ </a>
120
+ </li>
121
+
122
+
123
+
124
+
125
+
126
+ </ul>
127
+
128
+
129
+
130
+ <form class="navbar-form navbar-right" action="../search.html" method="get">
131
+ <div class="form-group">
132
+ <input type="text" name="q" class="form-control" placeholder="Search" />
133
+ </div>
134
+ <input type="hidden" name="check_keywords" value="yes" />
135
+ <input type="hidden" name="area" value="default" />
136
+ </form>
137
+
138
+ </div>
139
+ </div>
140
+ </div>
141
+
142
+ <div class="container">
143
+ <div class="row">
144
+ <div class="col-md-12">
145
+
146
+ <div class="section" id="injection-and-inheritance-of-includedir-and-dependency">
147
+ <h1>Injection and inheritance of IncludeDir and Dependency<a class="headerlink" href="#injection-and-inheritance-of-includedir-and-dependency" title="Permalink to this headline">¶</a></h1>
148
+ <p>It is possible to inject and inherit &#8220;includes&#8221; and inject &#8220;dependencies&#8221;.</p>
149
+ <div class="section" id="inherit-includedir">
150
+ <h2>Inherit IncludeDir<a class="headerlink" href="#inherit-includedir" title="Permalink to this headline">¶</a></h2>
151
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">IncludeDir include, inherit: true</span>
152
+ </pre></div>
153
+ </div>
154
+ <p>This is typically used to make include directories available to upper levels, e.g.:</p>
155
+ <div class="highlight-console"><div class="highlight"><pre><span class="gp">#</span> in MyLib/Project.meta
156
+ <span class="go">LibraryConfig Lib {</span>
157
+ <span class="go"> ...</span>
158
+ <span class="go"> IncludeDir include, inherit: true</span>
159
+ <span class="go">}</span>
160
+
161
+ <span class="gp">#</span> in main/Project.meta
162
+ <span class="go">ExecutableConfig Debug {</span>
163
+ <span class="go"> ...</span>
164
+ <span class="go"> Dependency MyLib, config: Lib</span>
165
+ <span class="go"> # IncludeDir &quot;MyLib/include&quot; - not needed because this IncludeDir is inherited</span>
166
+ <span class="go">}</span>
167
+ </pre></div>
168
+ </div>
169
+ </div>
170
+ <div class="section" id="inject-includedir">
171
+ <h2>Inject IncludeDir<a class="headerlink" href="#inject-includedir" title="Permalink to this headline">¶</a></h2>
172
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">IncludeDir &quot;mock/include&quot;, inject: front</span>
173
+ </pre></div>
174
+ </div>
175
+ <p>&#8220;front&#8221; is used for mocking IncludeDirs, e.g. if a library shall include a mocked class instead of the original one in UnitTest context.</p>
176
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">IncludeDir include, inject: back</span>
177
+ </pre></div>
178
+ </div>
179
+ <p>&#8220;back&#8221; is used if the lower levels do not know by themselves what to include. So this has to be configured from the outside, typically in the main project.</p>
180
+ </div>
181
+ <div class="section" id="inject-dependency">
182
+ <h2>Inject Dependency<a class="headerlink" href="#inject-dependency" title="Permalink to this headline">¶</a></h2>
183
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Dependency MyLib, inject: front # or back</span>
184
+ </pre></div>
185
+ </div>
186
+ <p>This is used if a component cannot have this dependency hard coded, because it shall not know the concrete implementation or the dependency is only used for unittesting.</p>
187
+ <p>Example:</p>
188
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">ExecutableConfig UnitTest {</span>
189
+ <span class="go"> ...</span>
190
+ <span class="go"> Dependency config: Lib</span>
191
+ <span class="go"> Dependency googleTest, inject: front</span>
192
+ <span class="go">}</span>
193
+ </pre></div>
194
+ </div>
195
+ <p>In this example the config Lib depends on googleTest. If googleTest inherits an IncludeDir, this would be known by Lib.</p>
196
+ </div>
197
+ </div>
198
+
199
+
200
+ </div>
201
+
202
+ </div>
203
+ </div>
204
+ <footer class="footer">
205
+ <div class="container">
206
+ <p class="pull-right">
207
+ <a href="#">Back to top</a>
208
+
209
+ </p>
210
+ <p>
211
+ &copy; Copyright 2016, E.S.R.Labs AG.<br/>
212
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.3.1.<br/>
213
+ </p>
214
+ </div>
215
+ </footer>
216
+ </body>
217
+ </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>The link order &mdash; bake 2.19.2 documentation</title>
8
+ <title>The link order &mdash; bake 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.19.2',
18
+ VERSION: '',
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.19.2 documentation" href="../index.html" />
32
+ <link rel="top" title="bake documentation" href="../index.html" />
33
33
  <link rel="up" title="Concepts" href="concepts.html" />
34
34
  <link rel="next" title="Syntax" href="../syntax/syntax.html" />
35
35
  <link rel="prev" title="The build hierarchy" href="build_hierarchy.html" />
@@ -0,0 +1,205 @@
1
+ <!DOCTYPE html>
2
+
3
+
4
+ <html xmlns="http://www.w3.org/1999/xhtml">
5
+ <head>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
7
+
8
+ <title>Prebuild configurations for distributions &mdash; bake documentation</title>
9
+
10
+ <link rel="stylesheet" href="../_static/basic.css" type="text/css" />
11
+ <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
12
+ <link rel="stylesheet" href="../_static/bootswatch-3.3.4/sandstone/bootstrap.min.css" type="text/css" />
13
+ <link rel="stylesheet" href="../_static/bootstrap-sphinx.css" type="text/css" />
14
+
15
+ <script type="text/javascript">
16
+ var DOCUMENTATION_OPTIONS = {
17
+ URL_ROOT: '../',
18
+ VERSION: '',
19
+ COLLAPSE_INDEX: false,
20
+ FILE_SUFFIX: '.html',
21
+ HAS_SOURCE: true
22
+ };
23
+ </script>
24
+ <script type="text/javascript" src="../_static/jquery.js"></script>
25
+ <script type="text/javascript" src="../_static/underscore.js"></script>
26
+ <script type="text/javascript" src="../_static/doctools.js"></script>
27
+ <script type="text/javascript" src="../_static/js/jquery-1.11.0.min.js"></script>
28
+ <script type="text/javascript" src="../_static/js/jquery-fix.js"></script>
29
+ <script type="text/javascript" src="../_static/bootstrap-3.3.4/js/bootstrap.min.js"></script>
30
+ <script type="text/javascript" src="../_static/bootstrap-sphinx.js"></script>
31
+ <link rel="shortcut icon" href="../_static/logo_tiny_32.ico"/>
32
+ <link rel="top" title="bake documentation" href="../index.html" />
33
+ <link rel="up" title="Concepts" href="concepts.html" />
34
+ <link rel="next" title="Injection and inheritance" href="inject.html" />
35
+ <link rel="prev" title="The link order" href="link_order.html" />
36
+ <meta charset='utf-8'>
37
+ <meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
38
+ <meta name='viewport' content='width=device-width, initial-scale=1.0, maximum-scale=1'>
39
+ <meta name="apple-mobile-web-app-capable" content="yes">
40
+
41
+ </head>
42
+ <body role="document">
43
+
44
+ <div id="navbar" class="navbar navbar-default navbar-fixed-top">
45
+ <div class="container">
46
+ <div class="navbar-header">
47
+ <!-- .btn-navbar is used as the toggle for collapsed navbar content -->
48
+ <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".nav-collapse">
49
+ <span class="icon-bar"></span>
50
+ <span class="icon-bar"></span>
51
+ <span class="icon-bar"></span>
52
+ </button>
53
+ <a class="navbar-brand" href="../index.html"><img src="../_static/logo_conformant_48.png">
54
+ </a>
55
+ <span class="navbar-text navbar-version pull-left"><b></b></span>
56
+ </div>
57
+
58
+ <div class="collapse navbar-collapse nav-collapse">
59
+ <ul class="nav navbar-nav">
60
+
61
+
62
+ <li class="dropdown globaltoc-container">
63
+ <a role="button"
64
+ id="dLabelGlobalToc"
65
+ data-toggle="dropdown"
66
+ data-target="#"
67
+ href="../index.html">Section <b class="caret"></b></a>
68
+ <ul class="dropdown-menu globaltoc"
69
+ role="menu"
70
+ aria-labelledby="dLabelGlobalToc"><ul class="current">
71
+ <li class="toctree-l1"><a class="reference internal" href="../why_bake/why_bake.html">Why you should use bake</a></li>
72
+ <li class="toctree-l1"><a class="reference internal" href="../install/install_bake.html">Install bake</a></li>
73
+ <li class="toctree-l1"><a class="reference internal" href="../quickstart/quickstart.html">Quickstart</a></li>
74
+ <li class="toctree-l1 current"><a class="reference internal" href="concepts.html">Concepts</a></li>
75
+ <li class="toctree-l1"><a class="reference internal" href="../syntax/syntax.html">Syntax</a></li>
76
+ <li class="toctree-l1"><a class="reference internal" href="../commandline/commandline.html">Commandline</a></li>
77
+ <li class="toctree-l1"><a class="reference internal" href="../ide/ide_integrations.html">IDE Support</a></li>
78
+ <li class="toctree-l1"><a class="reference internal" href="../tips_and_tricks/tips_and_tricks.html">Tips and Tricks</a></li>
79
+ <li class="toctree-l1"><a class="reference internal" href="../performance/performance.html">Performance</a></li>
80
+ <li class="toctree-l1"><a class="reference internal" href="../known_issues.html">Known Issues</a></li>
81
+ <li class="toctree-l1"><a class="reference internal" href="../changelog.html">Changelog</a></li>
82
+ <li class="toctree-l1"><a class="reference internal" href="../license.html">License</a></li>
83
+ </ul>
84
+ <ul>
85
+ <li class="toctree-l1"><a class="reference internal" href="../internal.html">Internal developing notes</a></li>
86
+ </ul>
87
+ </ul>
88
+ </li>
89
+
90
+ <li class="dropdown">
91
+ <a role="button"
92
+ id="dLabelLocalToc"
93
+ data-toggle="dropdown"
94
+ data-target="#"
95
+ href="#">SubSections <b class="caret"></b></a>
96
+ <ul class="dropdown-menu localtoc"
97
+ role="menu"
98
+ aria-labelledby="dLabelLocalToc"><ul>
99
+ <li><a class="reference internal" href="#">Prebuild configurations for distributions</a><ul>
100
+ <li><a class="reference internal" href="#typical-workflow">Typical workflow</a></li>
101
+ </ul>
102
+ </li>
103
+ </ul>
104
+ </ul>
105
+ </li>
106
+
107
+
108
+
109
+
110
+
111
+ <li>
112
+ <a href="link_order.html" title="Previous Chapter: The link order"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">&laquo; The link order</span>
113
+ </a>
114
+ </li>
115
+ <li>
116
+ <a href="inject.html" title="Next Chapter: Injection and inheritance"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">Injection and... &raquo;</span>
117
+ </a>
118
+ </li>
119
+
120
+
121
+
122
+
123
+
124
+ </ul>
125
+
126
+
127
+
128
+ <form class="navbar-form navbar-right" action="../search.html" method="get">
129
+ <div class="form-group">
130
+ <input type="text" name="q" class="form-control" placeholder="Search" />
131
+ </div>
132
+ <input type="hidden" name="check_keywords" value="yes" />
133
+ <input type="hidden" name="area" value="default" />
134
+ </form>
135
+
136
+ </div>
137
+ </div>
138
+ </div>
139
+
140
+ <div class="container">
141
+ <div class="row">
142
+ <div class="col-md-12">
143
+
144
+ <div class="section" id="prebuild-configurations-for-distributions">
145
+ <h1>Prebuild configurations for distributions<a class="headerlink" href="#prebuild-configurations-for-distributions" title="Permalink to this headline">¶</a></h1>
146
+ <p>This is a useful feature if you want to make a part of workspace available for third party without changing the configuration.</p>
147
+ <p>There are two major use cases:</p>
148
+ <ul class="simple">
149
+ <li>Only a few projects shall be closed source (e.g. to hide some algorithms)</li>
150
+ <li>Only a few projects shall be open source (e.g. if a supplier has integrate a library)</li>
151
+ </ul>
152
+ <p>Both is possible with bake, but the current UI is optimized for the latter one.</p>
153
+ <p>Add in the Project.meta the following code:</p>
154
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Prebuild {</span>
155
+ <span class="go"> Except main, config: Debug</span>
156
+ <span class="go"> Except newLib, config: Debug</span>
157
+ <span class="go"> Except setup, config: Release</span>
158
+ <span class="go">}</span>
159
+ </pre></div>
160
+ </div>
161
+ <p>It is possible to specify the Prebuild tags in all configurations, not only in the main configuration. Logically they will be merged.</p>
162
+ <p>In the example above, no configurations will be built - except those three. The prebuild output is used directly.</p>
163
+ <p>To reference a configuration of the same project, omit the project name, e.g.:</p>
164
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Except config: Base</span>
165
+ </pre></div>
166
+ </div>
167
+ <p>To reference all configuration of a project, omit the config name, e.g.:</p>
168
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Except newLib</span>
169
+ </pre></div>
170
+ </div>
171
+ <p>This prebuild behaviour must be explicitly turned on by using the following the command line argument:</p>
172
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">--prebuild</span>
173
+ </pre></div>
174
+ </div>
175
+ <div class="section" id="typical-workflow">
176
+ <h2>Typical workflow<a class="headerlink" href="#typical-workflow" title="Permalink to this headline">¶</a></h2>
177
+ <ol class="arabic simple">
178
+ <li>Compiling the workspace completely without prebuild feature.</li>
179
+ <li>Executing a distribution script which copies all relevant files to a distribution directory.
180
+ Make sure to add all header files of prebuild libraries if they are needed for other non-prebuild libraries.
181
+ You may use the dependency files in the output directory for that script.</li>
182
+ <li>In the distribution folder use &#8220;&#8211;prebuild&#8221; when compiling the workspace.</li>
183
+ </ol>
184
+ </div>
185
+ </div>
186
+
187
+
188
+ </div>
189
+
190
+ </div>
191
+ </div>
192
+ <footer class="footer">
193
+ <div class="container">
194
+ <p class="pull-right">
195
+ <a href="#">Back to top</a>
196
+
197
+ </p>
198
+ <p>
199
+ &copy; Copyright 2016, E.S.R.Labs AG.<br/>
200
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.3.1.<br/>
201
+ </p>
202
+ </div>
203
+ </footer>
204
+ </body>
205
+ </html>