bake-toolkit 1.4.0 → 1.5.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: aac0fb5688d93436adc9183abda75aede5b267dd
4
+ data.tar.gz: 423c557d0d3d3cdbb74cda380ec17676168187f3
5
+ SHA512:
6
+ metadata.gz: d66ba309a587ba345d9d78379dd35f37e5888a569bc06faab4ce97ab8ed5625d2a6d19bfae9cbd94e7ee1b124be9530fcf1d3b52fef97a72338aecdc98eb834e
7
+ data.tar.gz: 038cbff1aca1e4db12fe6e1cbf52164ea348939da95c2d592c668b22c6efc9f5e4253df96e292bff4d70c435d3774d1ccde826e9d6161ed309c79dbb7737b62f
@@ -7,6 +7,13 @@
7
7
  <body>
8
8
  <h1>Changelog</h1>
9
9
 
10
+ July 18, 2014 - bake-toolkit 1.5.0<br>
11
+ <ul>
12
+ <li><b>Added: Dependencies can be overwritten in inherited projects</b>
13
+ <li><b>Removed: defines cannot be filtered anymore via command line</b>
14
+ </b>
15
+ </ul>
16
+
10
17
  June 6, 2014 - bake-toolkit 1.4.0<br>
11
18
  <ul>
12
19
  <li><b>Bugfix: variables can be used in "Set" now</b>
data/doc/index.html CHANGED
@@ -52,7 +52,6 @@ bake is used to build software <font color="#009900"><b>fast</b></font> and <fon
52
52
  <li><a href="syntax/syntax.html">Syntax of Project.meta</a>
53
53
  <li><a href="syntax/subst.html">Variable substitution in Project.meta</a>
54
54
  <li><a href="syntax/derive.html">Derive configs</a>
55
- <li><a href="syntax/filter.html">Filter configs</a>
56
55
  </ul>
57
56
 
58
57
  <h3>Did you know?</h3>
@@ -73,7 +72,7 @@ bake is used to build software <font color="#009900"><b>fast</b></font> and <fon
73
72
 
74
73
  <p>
75
74
  <hr>
76
- <table width="100%" border="0"><tr><td align="left">Described bake-toolkit version: 1.4.0</td><td align="right">June 6, 2014</td></tr></table>
75
+ <table width="100%" border="0"><tr><td align="left">Described bake-toolkit version: 1.5.0</td><td align="right">July 18, 2014</td></tr></table>
77
76
 
78
77
  </body>
79
78
 
@@ -25,7 +25,7 @@ The following listing shows HOW settings will be derived:
25
25
 
26
26
  <table border="1">
27
27
  <tr><th bgcolor="#CCCCCC">Setting</th><th bgcolor="#CCCCCC">Derived</th></tr>
28
- <tr><td>Dependency</td> <td>parent + child</td></tr>
28
+ <tr><td>Dependency</td> <td>parent + child, existing dependencies will be replaced</td></tr>
29
29
  <tr><td>ExternalLibrary<br>ExternalLibrarySearchPath<br>UserLibrary</td> <td>parent + child (ordered by line number!)</td></tr>
30
30
  <tr><td>PreSteps</td> <td>parent + child</td></tr>
31
31
  <tr><td>PostSteps</td> <td>parent + child</td></tr>
@@ -39,7 +39,7 @@ The following listing shows HOW settings will be derived:
39
39
  <tr><td>MapFile</td> <td>used from parent if not in child</td></tr>
40
40
  </table>
41
41
  <br>
42
- Example for deriving toolchains:
42
+ <h3>Example for deriving toolchains:</h3>
43
43
 
44
44
  <pre id="rundrum"><code>ExecutableConfig A {
45
45
  Toolchain {
@@ -84,6 +84,28 @@ The toolchain of B is treated like this:
84
84
  }
85
85
  }</code></pre>
86
86
 
87
+ <h3>Example for deriving dependencies:</h3>
88
+
89
+ <pre id="rundrum"><code>ExecutableConfig A {
90
+ Dependency Sub1, config s1
91
+ Dependency Sub2, config s2
92
+ Dependency Sub3, config s3
93
+ }
94
+
95
+ ExecutableConfig B, extends: A {
96
+ Dependency Sub4, config s4
97
+ Dependency Sub1, config sOther
98
+ Dependency Sub5, config s5
99
+ }</code></pre>
100
+
101
+ The dependencies of B will be treated like this:
102
+
103
+ <pre id="rundrum"><code>Dependency Sub1, config sOther
104
+ Dependency Sub2, config s2
105
+ Dependency Sub3, config s3
106
+ Dependency Sub4, config s4
107
+ Dependency Sub5, config s5</code></pre>
108
+
87
109
  </body>
88
110
 
89
111
  </html>
@@ -106,9 +106,7 @@ z-index: 100;
106
106
  &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showDefaultCompiler()" onMouseout="notip()">Compiler</span> ASM | CPP | C,
107
107
  <span class="help" onMouseover="showCommand()" onMouseout="notip()">command</span>: &#60;cmd&#62; {</i><br>
108
108
  &nbsp; &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showDefaultFlags()" onMouseout="notip()">Flags</span> &#60;flags&#62;<br>
109
- &nbsp; &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showDefaultDefine()" onMouseout="notip()">Define</span> &#60;define&#62;,
110
- <span class="help" onMouseover="showDefineDefault()" onMouseout="notip()">default</span>: on|off,
111
- <span class="help" onMouseover="showDefineFilter()" onMouseout="notip()">filter</span>: &#60;name&#62;<br>
109
+ &nbsp; &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showDefaultDefine()" onMouseout="notip()">Define</span> &#60;define&#62;<br>
112
110
  &nbsp; &nbsp; &nbsp; }<br>
113
111
  &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showDefaultArchiver()" onMouseout="notip()">Archiver</span>
114
112
  <span class="help" onMouseover="showCommand()" onMouseout="notip()">command</span>: &#60;cmd&#62; {</i><br>
@@ -135,9 +133,7 @@ z-index: 100;
135
133
  &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showCompiler()" onMouseout="notip()">Compiler</span> ASM | CPP | C,
136
134
  <span class="help" onMouseover="showCommand()" onMouseout="notip()">command</span>: &#60;cmd&#62; {</i><br>
137
135
  &nbsp; &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showFlags()" onMouseout="notip()">Flags</span> &#60;flags&#62;, add: &#60;flags&#62;, remove: &#60;flags&#62;<br>
138
- &nbsp; &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showDefine()" onMouseout="notip()">Define</span> &#60;define&#62;,
139
- <span class="help" onMouseover="showDefineDefault()" onMouseout="notip()">default</span>: on|off,
140
- <span class="help" onMouseover="showDefineFilter()" onMouseout="notip()">filter</span>: &#60;name&#62;<br>
136
+ &nbsp; &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showDefine()" onMouseout="notip()">Define</span> &#60;define&#62;<br>
141
137
  &nbsp; &nbsp; &nbsp; }<br>
142
138
  &nbsp; &nbsp; &nbsp; <span class="help" onMouseover="showArchiver()" onMouseout="notip()">Archiver</span>
143
139
  <span class="help" onMouseover="showCommand()" onMouseout="notip()">command</span>: &#60;cmd&#62; {</i><br>
@@ -304,18 +300,6 @@ function showStepFilter() {
304
300
  ddrivetip("filter", "No","-","-",str)
305
301
  }
306
302
 
307
- function showDefineDefault() {
308
- str = 'Specifies if a define shall be added to compiler command by default.'
309
- ddrivetip("default", "No","-","on",str)
310
- }
311
-
312
- function showDefineFilter() {
313
- str = 'A define argument for the compiler can be switched on or off explicitly regardless of the "default" attribute with the command line options<br>'+
314
- '<i> &nbsp; &nbsp; --include_filter &#60;filter name&#62;</i><br>'+
315
- '<i> &nbsp; &nbsp; --exclude_filter &#60;filter name&#62;</i><br>'
316
- ddrivetip("filter", "No","-","-",str)
317
- }
318
-
319
303
  function getMakefileDesc() {
320
304
  return 'Makefile to be started, e.g.:<br>'+
321
305
  '<i> &nbsp; &nbsp; Makefile "subDir/makefile"</i><br>'
@@ -29,8 +29,20 @@ module Cxxproject
29
29
 
30
30
  # Valid for all config types
31
31
 
32
- @child.setDependency(@parent.dependency + @child.dependency)
33
-
32
+ deps = @parent.dependency
33
+ @child.dependency.each do |cd|
34
+ overwrite = false
35
+ deps.each do |pd|
36
+ if pd.name == cd.name
37
+ pd.config = cd.config
38
+ overwrite = true
39
+ break
40
+ end
41
+ end
42
+ deps << cd if not overwrite
43
+ end
44
+ @child.setDependency(deps)
45
+
34
46
  @child.setSet(@parent.set + @child.set)
35
47
 
36
48
  manipulateLineNumbers(@parent.exLib)
@@ -44,8 +44,6 @@ module Cxxproject
44
44
  end
45
45
  class Define < ModelElement
46
46
  has_attr 'str', String, :defaultValueLiteral => ""
47
- has_attr 'default', String, :defaultValueLiteral => "on"
48
- has_attr 'filter', String, :defaultValueLiteral => ""
49
47
  end
50
48
 
51
49
 
data/lib/bake/options.rb CHANGED
@@ -116,9 +116,9 @@ module Cxxproject
116
116
  puts " --socket <num> Set SOCKET for sending errors, receiving commands, etc. - used by e.g. Eclipse."
117
117
  puts " --toolchain_info <name> Prints default values of a toolchain."
118
118
  puts " --toolchain_names Prints available toolchains."
119
- puts " --include_filter <name> Includes steps/defines with this filter name (can be used multiple times)."
119
+ puts " --include_filter <name> Includes steps with this filter name (can be used multiple times)."
120
120
  puts " 'PRE' or 'POST' includes all PreSteps respectively PostSteps."
121
- puts " --exclude_filter <name> Excludes steps/defines with this filter name (can be used multiple times)."
121
+ puts " --exclude_filter <name> Excludes steps with this filter name (can be used multiple times)."
122
122
  puts " 'PRE' or 'POST' excludes all PreSteps respectively PostSteps."
123
123
  puts " --show_abs_paths Compiler prints absolute filename paths instead of relative paths."
124
124
  puts " --no_autodir Disable auto completion of paths like in IncludeDir"
data/lib/bake/util.rb CHANGED
@@ -74,14 +74,6 @@ def integrateCompiler(tcs, compiler, type)
74
74
  end
75
75
  tcs[:COMPILER][type][:FLAGS] = adjustFlags(tcs[:COMPILER][type][:FLAGS], compiler.flags)
76
76
  compiler.define.each do |d|
77
- checkDefault = true
78
- if d.filter != ""
79
- next if @options.exclude_filter.include?d.filter
80
- checkDefault = false if @options.include_filter.include?d.filter
81
- end
82
- if checkDefault
83
- next if d.default == "off"
84
- end
85
77
  tcs[:COMPILER][type][:DEFINES] << d.str
86
78
  end
87
79
  end
data/lib/bake/version.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  module Cxxproject
2
2
  class Version
3
3
  def self.bake
4
- "1.4.0"
4
+ "1.5.0"
5
5
  end
6
6
  end
7
7
 
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bake-toolkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.0
5
- prerelease:
4
+ version: 1.5.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Alexander Schaal
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-06-04 00:00:00.000000000 Z
11
+ date: 2014-07-18 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: cxxproject
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - '='
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - '='
28
25
  - !ruby/object:Gem::Version
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rtext
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - '='
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - '='
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rgen
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - '='
52
46
  - !ruby/object:Gem::Version
@@ -54,14 +48,12 @@ dependencies:
54
48
  type: :runtime
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - '='
60
53
  - !ruby/object:Gem::Version
61
54
  version: 0.6.0
62
- description: ! ' This build tool is used to compile projects fast and easy.
63
-
64
- '
55
+ description: |2
56
+ This build tool is used to compile projects fast and easy.
65
57
  email: alexander.schaal@esrlabs.com
66
58
  executables:
67
59
  - bake
@@ -112,24 +104,24 @@ files:
112
104
  - doc/eclipse/build/buildMain.png
113
105
  - doc/eclipse/build/console.png
114
106
  - doc/eclipse/build/problem.png
107
+ - doc/eclipse/export.html
115
108
  - doc/eclipse/export/Script.png
116
109
  - doc/eclipse/export/Select.png
117
- - doc/eclipse/export.html
110
+ - doc/eclipse/import.html
118
111
  - doc/eclipse/import/Import.png
119
112
  - doc/eclipse/import/Select.png
120
- - doc/eclipse/import.html
113
+ - doc/eclipse/install.html
121
114
  - doc/eclipse/install/AddRepository.png
122
115
  - doc/eclipse/install/AvailableSoftware.png
123
116
  - doc/eclipse/install/InstallNewSoftware.png
124
117
  - doc/eclipse/install/Licenses.png
125
118
  - doc/eclipse/install/Restart.png
126
119
  - doc/eclipse/install/TrustMe.png
127
- - doc/eclipse/install.html
128
120
  - doc/eclipse/misc/pref.png
121
+ - doc/eclipse/new.html
129
122
  - doc/eclipse/new/New.png
130
123
  - doc/eclipse/new/Result.png
131
124
  - doc/eclipse/new/Select.png
132
- - doc/eclipse/new.html
133
125
  - doc/eclipse/select/FirstSelect.png
134
126
  - doc/eclipse/select/SecondSelect.png
135
127
  - doc/eclipse/select/WrongSelect.png
@@ -145,22 +137,21 @@ files:
145
137
  - doc/index.html
146
138
  - doc/src/ok.png
147
139
  - doc/syntax/derive.html
148
- - doc/syntax/filter.html
149
140
  - doc/syntax/subst.html
150
141
  - doc/syntax/syntax.html
151
- - doc/vs/create/cvsp.png
152
142
  - doc/vs/create.html
143
+ - doc/vs/create/cvsp.png
144
+ - doc/vs/install.html
153
145
  - doc/vs/install/install1.png
154
146
  - doc/vs/install/install2010.png
155
147
  - doc/vs/install/installed.png
156
148
  - doc/vs/install/site.png
157
149
  - doc/vs/install/update.png
158
- - doc/vs/install.html
150
+ - doc/vs/use.html
159
151
  - doc/vs/use/error.png
160
152
  - doc/vs/use/options.png
161
153
  - doc/vs/use/select.png
162
154
  - doc/vs/use/show.png
163
- - doc/vs/use.html
164
155
  - license.txt
165
156
  - bin/bake
166
157
  - bin/bakery
@@ -169,6 +160,7 @@ files:
169
160
  homepage: http://www.esrlabs.com
170
161
  licenses:
171
162
  - MIT
163
+ metadata: {}
172
164
  post_install_message:
173
165
  rdoc_options:
174
166
  - -x
@@ -176,21 +168,19 @@ rdoc_options:
176
168
  require_paths:
177
169
  - lib
178
170
  required_ruby_version: !ruby/object:Gem::Requirement
179
- none: false
180
171
  requirements:
181
- - - ! '>='
172
+ - - '>='
182
173
  - !ruby/object:Gem::Version
183
174
  version: '0'
184
175
  required_rubygems_version: !ruby/object:Gem::Requirement
185
- none: false
186
176
  requirements:
187
- - - ! '>='
177
+ - - '>='
188
178
  - !ruby/object:Gem::Version
189
179
  version: '0'
190
180
  requirements: []
191
181
  rubyforge_project:
192
- rubygems_version: 1.8.24
182
+ rubygems_version: 2.0.14
193
183
  signing_key:
194
- specification_version: 3
184
+ specification_version: 4
195
185
  summary: Frontend for cxxproject.
196
186
  test_files: []
@@ -1,47 +0,0 @@
1
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2
- <html>
3
- <head>
4
- <title>Documentation of the bake-tookit</title>
5
- <style type="text/css">
6
- #rundrum {
7
- border-width:1px;
8
- border-style:dashed;
9
- border-color:blue;
10
- padding:0.2cm;
11
- text-align:justify; }
12
- }
13
- </style>
14
-
15
- </head>
16
- <body>
17
- <h1>Filter configs</h1>
18
-
19
- Currently pre and post steps as well as compiler can be filtered.<p>
20
-
21
- This can be done by defining a filter name in the config, e.g.:
22
-
23
- <pre id="rundrum"><code>ExecutableConfig A {
24
- PreSteps {
25
- CommandLine "doSomething /nice", filter: FILTER1
26
- }
27
- Toolchain {
28
- Compiler CPP {
29
- Define "X=Y", filter: FILTER2
30
- Define "ABC", filter: FILTER2, default: off
31
- }
32
- }
33
- }</code></pre>
34
-
35
- The steps and defines can be forced to be included or excluded with the following command line parameters:
36
-
37
- <pre id="rundrum"><code>--include_filter FILTER_ABC
38
- --exclude_filter FILTER_XY</code></pre>
39
- </body>
40
-
41
- The parameters can be used multiple times. If the filter is not explicitly specified on command line, the steps and defines are included per default except they are marked with "default: off", see above.<p>
42
-
43
- To include or exclude ALL pre and post steps, two special filter names are defined in bake: "PRE" and "POST".<p>
44
-
45
- Please note, that when changing filter names on the command line, the source files will <b>not</b> be recompiled automatically. To do so, you may add a "--rebuild" on the command line.
46
-
47
- </html>