bake-toolkit 2.17.4 → 2.18.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/documentation/_build/html/_sources/changelog.txt +14 -0
  3. data/documentation/_build/html/_sources/concepts/build_hierarchy.txt +1 -1
  4. data/documentation/_build/html/_sources/concepts/concepts.txt +1 -0
  5. data/documentation/_build/html/_sources/concepts/link_order.txt +91 -0
  6. data/documentation/_build/html/_sources/index.txt +1 -1
  7. data/documentation/_build/html/changelog.html +31 -3
  8. data/documentation/_build/html/commandline/commandline.html +3 -3
  9. data/documentation/_build/html/concepts/build_hierarchy.html +6 -6
  10. data/documentation/_build/html/concepts/concepts.html +8 -3
  11. data/documentation/_build/html/concepts/link_order.html +246 -0
  12. data/documentation/_build/html/concepts/the_main_project.html +3 -3
  13. data/documentation/_build/html/concepts/the_project_meta_file.html +3 -3
  14. data/documentation/_build/html/genindex.html +3 -3
  15. data/documentation/_build/html/ide/eclipse/eclipse.html +3 -3
  16. data/documentation/_build/html/ide/eclipse/how_to_convert_existing_cdt_workspace.html +3 -3
  17. data/documentation/_build/html/ide/eclipse/how_to_create_a_new_project_in_eclipse.html +3 -3
  18. data/documentation/_build/html/ide/eclipse/how_to_create_a_workspace_in_eclipse.html +3 -3
  19. data/documentation/_build/html/ide/eclipse/how_to_debug_in_eclipse.html +3 -3
  20. data/documentation/_build/html/ide/eclipse/how_to_install_eclipse_plugin.html +3 -3
  21. data/documentation/_build/html/ide/eclipse/how_to_use_bake_in_eclipse.html +3 -3
  22. data/documentation/_build/html/ide/ide_integrations.html +3 -3
  23. data/documentation/_build/html/ide/vs/how_to_create_vs_projects.html +3 -3
  24. data/documentation/_build/html/ide/vs/how_to_debug_in_vs.html +3 -3
  25. data/documentation/_build/html/ide/vs/how_to_used_bake_in_vs.html +3 -3
  26. data/documentation/_build/html/ide/vs/vs.html +3 -3
  27. data/documentation/_build/html/ide/vs/vs_install.html +3 -3
  28. data/documentation/_build/html/index.html +7 -6
  29. data/documentation/_build/html/install/install_bake.html +3 -3
  30. data/documentation/_build/html/internal.html +3 -3
  31. data/documentation/_build/html/known_issues.html +3 -3
  32. data/documentation/_build/html/license.html +3 -3
  33. data/documentation/_build/html/performance/performance.html +3 -3
  34. data/documentation/_build/html/quickstart/quickstart.html +3 -3
  35. data/documentation/_build/html/search.html +3 -3
  36. data/documentation/_build/html/searchindex.js +1 -1
  37. data/documentation/_build/html/syntax/adapt_configs.html +3 -3
  38. data/documentation/_build/html/syntax/derive_configs.html +3 -3
  39. data/documentation/_build/html/syntax/project_meta_syntax.html +3 -3
  40. data/documentation/_build/html/syntax/syntax.html +5 -5
  41. data/documentation/_build/html/syntax/variable_substitutions.html +3 -3
  42. data/documentation/_build/html/tips_and_tricks/bundle.html +3 -3
  43. data/documentation/_build/html/tips_and_tricks/how_to_use_bake_with_cygwin.html +3 -3
  44. data/documentation/_build/html/tips_and_tricks/static_code_analysis.html +3 -3
  45. data/documentation/_build/html/tips_and_tricks/the_bakery.html +3 -3
  46. data/documentation/_build/html/tips_and_tricks/the_clang.html +3 -3
  47. data/documentation/_build/html/tips_and_tricks/tips_and_tricks.html +3 -3
  48. data/documentation/_build/html/why_bake/why_bake.html +5 -5
  49. data/lib/bake/libElement.rb +77 -38
  50. data/lib/bake/mergeConfig.rb +31 -27
  51. data/lib/bake/options/options.rb +36 -33
  52. data/lib/bake/options/usage.rb +5 -3
  53. data/lib/common/version.rb +1 -1
  54. metadata +4 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1cb65b40576f944c0abe389698dd5c8c96ca160f
4
- data.tar.gz: 50e80011d69fdc7743fa1a490edd90426f636a20
3
+ metadata.gz: a6b26d9a652b8333480bac050e2a8fd2728514f3
4
+ data.tar.gz: eabab2caab9cc1c3e6ac4ac3838e0403b0ef5990
5
5
  SHA512:
6
- metadata.gz: b68eec5e6380c726fc44d144e2e981914bc26b8d6e451e07a76d3cf4d99178098577f7c2299c66ce11da7db53b529a779ad437a7745b46e540f36a72ab237667
7
- data.tar.gz: 5ced5330f54ef13b95dd509744f3a9c6aec3b36761a17532b138a3e7cb967bb148def86d10c93e1972c33606a7553ee60d361ea533fd683a6145f3eae771e0d5
6
+ metadata.gz: 3d5ed2ed2a82b22fbb767b1080236dceb8e615a1895a1293af204104d3ff3c6f5b47b5c9bbbffad1e66269ab122d674664dd378d70379bb28e0776c078d225b9
7
+ data.tar.gz: 34fd273faefbfc76ec6f98288d6253ce8cf5252c594f482c0faeb3a9be1b82bb04d57107e8389ec21e8c3d1f01b83bcd5cb615352e7b132e42e2823ced6bfaea
@@ -1,6 +1,18 @@
1
1
  Changelog
2
2
  =========
3
3
 
4
+ June 22, 2016 - bake-toolkit 2.18.0
5
+ * Bugfix: order if linker libs fixed. For compatibility, a new command line flag "--link-2-17" to get the old behaviour was added.
6
+
7
+ ====================================== ======================================
8
+ Example
9
+ ====================================== ======================================
10
+ Dependencies A->B->D and A->C->D
11
+ New correct link order A, B, C, D
12
+ Old wrong link order (--link-2-17) A, B, D, C
13
+ ====================================== ======================================
14
+
15
+
4
16
  May 4, 2016 - bake-toolkit 2.17.4
5
17
  * Bugfix: bakery returned 1 for successful builds
6
18
  * Changed: bakery now lists all failed unit tests at the end
@@ -43,8 +55,10 @@ January 14, 2016 - bake-toolkit 2.14.0
43
55
  * Changed: libraries from makefiles are linked now after other libraries defined from the same config
44
56
  * Added: IncludeDir now possible for CustomConfigs
45
57
  * Bugfix: --abs-paths now works with --incs-and-defs
58
+
46
59
  December 23, 2015 - bake-toolkit 2.13.1
47
60
  * Bugfix: merging configs was extremely slow in 2.12.2 and 2.13.0
61
+
48
62
  December 23, 2015 - bake-toolkit 2.13.0
49
63
  * Bugfix: It was possible that the archiver and linker were called for --prepro and --link-only builds
50
64
  * Added: possibility to specify minimum and maximum required bake version in Project.meta file
@@ -20,7 +20,7 @@ The main project has dependencies to the projects A, B and C:
20
20
 
21
21
  .. image:: ../_static/bake_build_hierachy.png
22
22
  :width: 100 %
23
- :scale: 50 %
23
+ :scale: 75 %
24
24
 
25
25
  Steps are executed bottom-up. If one step fails, all steps above won't be executed.
26
26
 
@@ -8,4 +8,5 @@ Concepts
8
8
  the_project_meta_file
9
9
  the_main_project
10
10
  build_hierarchy
11
+ link_order
11
12
 
@@ -0,0 +1,91 @@
1
+ The link order
2
+ ==============
3
+
4
+ The link order depends on the order of library definitions and dependencies in the Project.meta files.
5
+
6
+ In general, if a library X depends on a library Y, the library X must be linked before Y.
7
+
8
+ Example:
9
+ ********
10
+
11
+ .. code-block:: console
12
+
13
+ Project A:
14
+
15
+ Dependency B
16
+ Dependency C
17
+
18
+ .. code-block:: console
19
+
20
+ Project B:
21
+
22
+ Dependency D
23
+
24
+ .. code-block:: console
25
+
26
+ Project C:
27
+
28
+ Dependency D
29
+
30
+ .. code-block:: console
31
+
32
+ Project D:
33
+
34
+ The link order will be
35
+
36
+ - Objects of A
37
+ - B
38
+ - C
39
+ - D
40
+
41
+ Same example but with external libraries:
42
+ *****************************************
43
+
44
+ .. code-block:: console
45
+
46
+ Project A:
47
+
48
+ ExternalLibrary a1
49
+ Dependency B
50
+ ExternalLibrary a2
51
+ Dependency C
52
+ ExternalLibrary a3
53
+
54
+ .. code-block:: console
55
+
56
+ Project B:
57
+
58
+ ExternalLibrary b1
59
+ Dependency D
60
+ ExternalLibrary b2
61
+
62
+ .. code-block:: console
63
+
64
+ Project C:
65
+
66
+ ExternalLibrary c1
67
+ Dependency D
68
+ ExternalLibrary c2
69
+
70
+ .. code-block:: console
71
+
72
+ Project D:
73
+
74
+ ExternalLibrary d1
75
+ ExternalLibrary d2
76
+
77
+ The link order will be
78
+
79
+ - Objects of A
80
+ - a1
81
+ - B
82
+ - b1
83
+ - b2
84
+ - a2
85
+ - C
86
+ - c1
87
+ - D
88
+ - d1
89
+ - d2
90
+ - c2
91
+ - a3
@@ -1,4 +1,4 @@
1
- bake 2.17.4
1
+ bake 2.18.0
2
2
  ==========================================
3
3
  bake, building software **fast** and **easy**!
4
4
 
@@ -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.17.4 documentation</title>
8
+ <title>Changelog &mdash; bake 2.18.0 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.17.4',
18
+ VERSION: '2.18.0',
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.17.4 documentation" href="index.html" />
32
+ <link rel="top" title="bake 2.18.0 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,34 @@
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>June 22, 2016 - bake-toolkit 2.18.0</dt>
144
+ <dd><ul class="first last">
145
+ <li><p class="first">Bugfix: order if linker libs fixed. For compatibility, a new command line flag &#8220;&#8211;link-2-17&#8221; to get the old behaviour was added.</p>
146
+ <table border="1" class="docutils">
147
+ <colgroup>
148
+ <col width="50%" />
149
+ <col width="50%" />
150
+ </colgroup>
151
+ <thead valign="bottom">
152
+ <tr class="row-odd"><th class="head">Example</th>
153
+ <th class="head">&nbsp;</th>
154
+ </tr>
155
+ </thead>
156
+ <tbody valign="top">
157
+ <tr class="row-even"><td>Dependencies</td>
158
+ <td>A-&gt;B-&gt;D and A-&gt;C-&gt;D</td>
159
+ </tr>
160
+ <tr class="row-odd"><td>New correct link order</td>
161
+ <td>A, B, C, D</td>
162
+ </tr>
163
+ <tr class="row-even"><td>Old wrong link order (&#8211;link-2-17)</td>
164
+ <td>A, B, D, C</td>
165
+ </tr>
166
+ </tbody>
167
+ </table>
168
+ </li>
169
+ </ul>
170
+ </dd>
143
171
  <dt>May 4, 2016 - bake-toolkit 2.17.4</dt>
144
172
  <dd><ul class="first last simple">
145
173
  <li>Bugfix: bakery returned 1 for successful builds</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.17.4 documentation</title>
8
+ <title>Commandline &mdash; bake 2.18.0 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.17.4',
18
+ VERSION: '2.18.0',
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.17.4 documentation" href="../index.html" />
32
+ <link rel="top" title="bake 2.18.0 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.17.4 documentation</title>
8
+ <title>The build hierarchy &mdash; bake 2.18.0 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.17.4',
18
+ VERSION: '2.18.0',
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.17.4 documentation" href="../index.html" />
32
+ <link rel="top" title="bake 2.18.0 documentation" href="../index.html" />
33
33
  <link rel="up" title="Concepts" href="concepts.html" />
34
- <link rel="next" title="Syntax" href="../syntax/syntax.html" />
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" />
36
36
  <meta charset='utf-8'>
37
37
  <meta http-equiv='X-UA-Compatible' content='IE=edge,chrome=1'>
@@ -114,7 +114,7 @@
114
114
  </a>
115
115
  </li>
116
116
  <li>
117
- <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>
117
+ <a href="link_order.html" title="Next Chapter: The link order"><span class="glyphicon glyphicon-chevron-right visible-sm"></span><span class="hidden-sm hidden-tablet">The link order &raquo;</span>
118
118
  </a>
119
119
  </li>
120
120
 
@@ -162,7 +162,7 @@
162
162
  <h2>Example<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
163
163
  <p>The main project has dependencies to the projects A, B and C:</p>
164
164
  <blockquote>
165
- <div><a class="reference internal image-reference" href="../_images/bake_build_hierachy.png"><img alt="../_images/bake_build_hierachy.png" src="../_images/bake_build_hierachy.png" style="width: 50.0%;" /></a>
165
+ <div><a class="reference internal image-reference" href="../_images/bake_build_hierachy.png"><img alt="../_images/bake_build_hierachy.png" src="../_images/bake_build_hierachy.png" style="width: 75.0%;" /></a>
166
166
  </div></blockquote>
167
167
  <p>Steps are executed bottom-up. If one step fails, all steps above won&#8217;t be executed.</p>
168
168
  <dl class="docutils">
@@ -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.17.4 documentation</title>
8
+ <title>Concepts &mdash; bake 2.18.0 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.17.4',
18
+ VERSION: '2.18.0',
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.17.4 documentation" href="../index.html" />
32
+ <link rel="top" title="bake 2.18.0 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'>
@@ -157,6 +157,11 @@
157
157
  <li class="toctree-l2"><a class="reference internal" href="build_hierarchy.html#example">Example</a></li>
158
158
  </ul>
159
159
  </li>
160
+ <li class="toctree-l1"><a class="reference internal" href="link_order.html">The link order</a><ul>
161
+ <li class="toctree-l2"><a class="reference internal" href="link_order.html#example">Example:</a></li>
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
+ </ul>
164
+ </li>
160
165
  </ul>
161
166
  </div>
162
167
  </div>
@@ -0,0 +1,246 @@
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>The link order &mdash; bake 2.18.0 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: '2.18.0',
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 2.18.0 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="The build hierarchy" href="build_hierarchy.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="#">The link order</a><ul>
100
+ <li><a class="reference internal" href="#example">Example:</a></li>
101
+ <li><a class="reference internal" href="#same-example-but-with-external-libraries">Same example but with external libraries:</a></li>
102
+ </ul>
103
+ </li>
104
+ </ul>
105
+ </ul>
106
+ </li>
107
+
108
+
109
+
110
+
111
+
112
+ <li>
113
+ <a href="build_hierarchy.html" title="Previous Chapter: The build hierarchy"><span class="glyphicon glyphicon-chevron-left visible-sm"></span><span class="hidden-sm hidden-tablet">&laquo; The build hie...</span>
114
+ </a>
115
+ </li>
116
+ <li>
117
+ <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>
118
+ </a>
119
+ </li>
120
+
121
+
122
+
123
+
124
+
125
+ </ul>
126
+
127
+
128
+
129
+ <form class="navbar-form navbar-right" action="../search.html" method="get">
130
+ <div class="form-group">
131
+ <input type="text" name="q" class="form-control" placeholder="Search" />
132
+ </div>
133
+ <input type="hidden" name="check_keywords" value="yes" />
134
+ <input type="hidden" name="area" value="default" />
135
+ </form>
136
+
137
+ </div>
138
+ </div>
139
+ </div>
140
+
141
+ <div class="container">
142
+ <div class="row">
143
+ <div class="col-md-12">
144
+
145
+ <div class="section" id="the-link-order">
146
+ <h1>The link order<a class="headerlink" href="#the-link-order" title="Permalink to this headline">¶</a></h1>
147
+ <p>The link order depends on the order of library definitions and dependencies in the Project.meta files.</p>
148
+ <p>In general, if a library X depends on a library Y, the library X must be linked before Y.</p>
149
+ <div class="section" id="example">
150
+ <h2>Example:<a class="headerlink" href="#example" title="Permalink to this headline">¶</a></h2>
151
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project A:</span>
152
+
153
+ <span class="go">Dependency B</span>
154
+ <span class="go">Dependency C</span>
155
+ </pre></div>
156
+ </div>
157
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project B:</span>
158
+
159
+ <span class="go">Dependency D</span>
160
+ </pre></div>
161
+ </div>
162
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project C:</span>
163
+
164
+ <span class="go">Dependency D</span>
165
+ </pre></div>
166
+ </div>
167
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project D:</span>
168
+ </pre></div>
169
+ </div>
170
+ <p>The link order will be</p>
171
+ <ul class="simple">
172
+ <li>Objects of A</li>
173
+ <li>B</li>
174
+ <li>C</li>
175
+ <li>D</li>
176
+ </ul>
177
+ </div>
178
+ <div class="section" id="same-example-but-with-external-libraries">
179
+ <h2>Same example but with external libraries:<a class="headerlink" href="#same-example-but-with-external-libraries" title="Permalink to this headline">¶</a></h2>
180
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project A:</span>
181
+
182
+ <span class="go">ExternalLibrary a1</span>
183
+ <span class="go">Dependency B</span>
184
+ <span class="go">ExternalLibrary a2</span>
185
+ <span class="go">Dependency C</span>
186
+ <span class="go">ExternalLibrary a3</span>
187
+ </pre></div>
188
+ </div>
189
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project B:</span>
190
+
191
+ <span class="go">ExternalLibrary b1</span>
192
+ <span class="go">Dependency D</span>
193
+ <span class="go">ExternalLibrary b2</span>
194
+ </pre></div>
195
+ </div>
196
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project C:</span>
197
+
198
+ <span class="go">ExternalLibrary c1</span>
199
+ <span class="go">Dependency D</span>
200
+ <span class="go">ExternalLibrary c2</span>
201
+ </pre></div>
202
+ </div>
203
+ <div class="highlight-console"><div class="highlight"><pre><span class="go">Project D:</span>
204
+
205
+ <span class="go">ExternalLibrary d1</span>
206
+ <span class="go">ExternalLibrary d2</span>
207
+ </pre></div>
208
+ </div>
209
+ <p>The link order will be</p>
210
+ <ul class="simple">
211
+ <li>Objects of A</li>
212
+ <li>a1</li>
213
+ <li>B</li>
214
+ <li>b1</li>
215
+ <li>b2</li>
216
+ <li>a2</li>
217
+ <li>C</li>
218
+ <li>c1</li>
219
+ <li>D</li>
220
+ <li>d1</li>
221
+ <li>d2</li>
222
+ <li>c2</li>
223
+ <li>a3</li>
224
+ </ul>
225
+ </div>
226
+ </div>
227
+
228
+
229
+ </div>
230
+
231
+ </div>
232
+ </div>
233
+ <footer class="footer">
234
+ <div class="container">
235
+ <p class="pull-right">
236
+ <a href="#">Back to top</a>
237
+
238
+ </p>
239
+ <p>
240
+ &copy; Copyright 2016, E.S.R.Labs AG.<br/>
241
+ Created using <a href="http://sphinx-doc.org/">Sphinx</a> 1.3.1.<br/>
242
+ </p>
243
+ </div>
244
+ </footer>
245
+ </body>
246
+ </html>