bake-toolkit 1.0.25 → 1.0.26

Sign up to get free protection for your applications and to get access to all the features.
@@ -7,9 +7,20 @@
7
7
  <body>
8
8
  <h1>Changelog</h1>
9
9
 
10
+ March 5, 2014 - bake-toolkit 1.0.26<br>
11
+ <ul>
12
+ <li><b>Bugfix: in rare cases invalid characters from compiler output were not handled correctly</b>
13
+ <li><b>Bugfix: changing workspace roots on command line now always regenerates build tree</b>
14
+ <li><b>Added: Variable $(Roots) for IncludeDir directives</b>
15
+ <li><b>Changed: dependency files for all compilers will be generated inclusive system headers</b>
16
+ <li><b>Changed: abort earlier if main directory has no Project.meta</b>
17
+ <li><b>Changed: every environment variable is expanded to an empty string if not defined</b>
18
+ </ul>
19
+
10
20
  January 21, 2014 - bake-toolkit 1.0.25<br>
11
21
  <ul>
12
22
  <li><b>Added: configs can now be inherited</b>
23
+ <li><b>Added: command bake-doc opens bake doc</b>
13
24
  <li><b>Changed: dependency files for Greenhills compiler will be generated with -MD instead of -MMD</b>
14
25
  </ul>
15
26
 
data/doc/index.html CHANGED
@@ -71,7 +71,7 @@ bake is used to build software <font color="#009900"><b>fast</b></font> and <fon
71
71
 
72
72
  <p>
73
73
  <hr>
74
- <table width="100%" border="0"><tr><td align="left">Described bake-toolkit version: 1.0.25</td><td align="right">January 21, 2014</td></tr></table>
74
+ <table width="100%" border="0"><tr><td align="left">Described bake-toolkit version: 1.0.26</td><td align="right">March 5, 2014</td></tr></table>
75
75
 
76
76
  </body>
77
77
 
@@ -34,22 +34,20 @@
34
34
  <tr><th bgcolor="#CCCCCC">Variable</th><th bgcolor="#CCCCCC">Windows</th><th bgcolor="#CCCCCC">Other</th></tr>
35
35
  <tr><td>$(/)</td> <td>\</td><td>/</td></tr>
36
36
  </table>
37
- <p>
38
- Otherwise:
39
- <p>
37
+ <br>
40
38
  <table border="1">
41
- <tr><th bgcolor="#CCCCCC">Variable</th><th bgcolor="#CCCCCC">Example</th></tr>
42
- <tr><td>$(environment variable)</td> <td>whatever</td></tr>
39
+ <tr><th bgcolor="#CCCCCC">Expression</th><th bgcolor="#CCCCCC">Description</th></tr>
40
+ <tr><td>IncludeDir "$(Roots)"</td> <td>Will be replaced by one or more<br>IncludeDir statements for all workspace roots.</td></tr>
43
41
  </table>
44
42
  <p>
45
- An error will be generated if the environment variable does not exist, except
43
+ Otherwise:
46
44
  <p>
47
45
  <table border="1">
48
46
  <tr><th bgcolor="#CCCCCC">Variable</th><th bgcolor="#CCCCCC">Example</th></tr>
49
- <tr><td>$(PATH_TO_CYGWIN)</td> <td>c:/tool/cygwin</td></tr>
47
+ <tr><td>$(environment variable)</td> <td>whatever</td></tr>
50
48
  </table>
51
49
  <p>
52
- will be substituted to an empty string if not set.
50
+ If the environment variable does not exist, it will be substituted by an empty string.
53
51
 
54
52
  <h3>Equal variables</h3>
55
53
 
@@ -75,7 +75,7 @@ z-index: 100;
75
75
  &nbsp; <span class="mycomment"># 0..n configs</span><br>
76
76
  &nbsp; <span class="showRadio" onMouseover="showExecutableConfig()" onMouseout="notip()" id="executableConfig">ExecutableConfig</span> |
77
77
  <span class="hideRadio" onMouseover="showLibraryConfig()" onMouseout="notip()" id="libraryConfig">LibraryConfig</span> |
78
- <span class="hideRadio" onMouseover="showCustomConfig()" onMouseout="notip()" id="customConfig">CustomConfig</span> &#60;name&#62; <span class="help" onMouseover="showExtends()" onMouseout="notip()">extends</span>: &#60;parent&#62; {<br><br>
78
+ <span class="hideRadio" onMouseover="showCustomConfig()" onMouseout="notip()" id="customConfig">CustomConfig</span> &#60;name&#62;, <span class="help" onMouseover="showExtends()" onMouseout="notip()">extends</span>: &#60;parent&#62; {<br><br>
79
79
 
80
80
  <span><span style="background-color:#EEEEEE;" class="show">
81
81
  &nbsp; &nbsp; <span class="mycomment"># Valid for all config types</span><br><br>
data/lib/bake/cache.rb CHANGED
@@ -95,6 +95,7 @@ module Cxxproject
95
95
  if cache.workspace_roots.length == @options.roots.length
96
96
  cache.workspace_roots.each do |r|
97
97
  if not @options.roots.include?r
98
+ cache = nil
98
99
  break
99
100
  end
100
101
  end
data/lib/bake/options.rb CHANGED
@@ -49,6 +49,7 @@ module Cxxproject
49
49
  add_option(Option.new("-a",true) { |x| set_color(x) })
50
50
  add_option(Option.new("-w",true) { |x| set_root(x) })
51
51
  add_option(Option.new("-r",false) { set_error })
52
+ add_option(Option.new("--depfileInfo",false) { set_depfileInfo })
52
53
  add_option(Option.new("--rebuild",false) { set_rebuild })
53
54
  add_option(Option.new("--prepro",false) { set_prepro })
54
55
  add_option(Option.new("--link_only",false) { set_linkOnly })
@@ -243,11 +244,16 @@ module Cxxproject
243
244
  puts e.backtrace if @verbose
244
245
  ExitHelper.exit(1)
245
246
  end
246
- end
247
+ end
248
+
247
249
  def set_error()
248
250
  Rake::Task.bail_on_first_error = true
249
251
  end
250
252
 
253
+ def set_depfileInfo()
254
+ Cxxproject::HasSources.print_additional_depfile_info = true
255
+ end
256
+
251
257
  def set_show_inc
252
258
  @show_includes = true
253
259
  end
data/lib/bake/subst.rb CHANGED
@@ -63,6 +63,8 @@ module Cxxproject
63
63
  substStr << @@artifactName
64
64
  elsif var == "ArtifactNameBase"
65
65
  substStr << @@artifactName.chomp(File.extname(@@artifactName))
66
+ elsif var == "Roots"
67
+ substStr << "___ROOTS___"
66
68
  elsif var == "/"
67
69
  if Cxxproject::OS.windows?
68
70
  substStr << "\\"
@@ -71,11 +73,11 @@ module Cxxproject
71
73
  end
72
74
  elsif ENV[var]
73
75
  substStr << ENV[var]
74
- elsif var == "PATH_TO_CYGWIN" # allowed to be not set
75
- substStr << ""
76
76
  else
77
- Printer.printError "Error: #{elem.file_name}(#{elem.line_number}): unknown substitution variable '$(#{var})'"
78
- ExitHelper.exit(1)
77
+ if @@options.verbose
78
+ Printer.printInfo "Info: #{elem.file_name}(#{elem.line_number}): substitute variable '$(#{var})' with empty string"
79
+ end
80
+ substStr << ""
79
81
  end
80
82
 
81
83
  posSubst = posEnd + 1
data/lib/bake/version.rb CHANGED
@@ -1,11 +1,11 @@
1
1
  module Cxxproject
2
2
  class Version
3
3
  def self.bake
4
- "1.0.25"
4
+ "1.0.26"
5
5
  end
6
6
  end
7
7
 
8
- expectedCxx = "0.5.70"
8
+ expectedCxx = "0.5.71"
9
9
  expectedRGen = "0.6.0"
10
10
  expectedRText = "0.2.0"
11
11
 
data/lib/tocxx.rb CHANGED
@@ -259,6 +259,11 @@ module Cxxproject
259
259
  project2config_pending = {}
260
260
  project2config_pending[@mainProjectName] = @options.build_config
261
261
 
262
+ if not File.exist?(@options.main_dir+"/Project.meta")
263
+ Printer.printError "Error: #{@options.main_dir}/Project.meta not found"
264
+ ExitHelper.exit(1)
265
+ end
266
+
262
267
  potentialProjs = []
263
268
  @options.roots.each do |r|
264
269
  if (r.length == 3 && r.include?(":/"))
@@ -501,9 +506,10 @@ module Cxxproject
501
506
  end
502
507
  ex_srcs = config.excludeFiles.map {|f| f.name}
503
508
 
504
- bbModule.main_content.set_local_includes( config.includeDir.map do |dir|
505
- convPath(dir, config)
506
- end
509
+ bbModule.main_content.set_local_includes(
510
+ config.includeDir.map do |dir|
511
+ (dir.name == "___ROOTS___") ? (@options.roots.map { |r| File.rel_from_to_project(projDir,r,false) }) : convPath(dir, config)
512
+ end.flatten
507
513
  )
508
514
 
509
515
  bbModule.main_content.set_source_patterns(srcs)
metadata CHANGED
@@ -1,32 +1,36 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bake-toolkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.25
4
+ version: 1.0.26
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Alexander Schaal
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-01-21 00:00:00.000000000 Z
12
+ date: 2014-03-07 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: cxxproject
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - '='
18
20
  - !ruby/object:Gem::Version
19
- version: 0.5.70
21
+ version: 0.5.71
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - '='
25
28
  - !ruby/object:Gem::Version
26
- version: 0.5.70
29
+ version: 0.5.71
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rtext
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
35
  - - '='
32
36
  - !ruby/object:Gem::Version
@@ -34,6 +38,7 @@ dependencies:
34
38
  type: :runtime
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
43
  - - '='
39
44
  - !ruby/object:Gem::Version
@@ -41,6 +46,7 @@ dependencies:
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: rgen
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
51
  - - '='
46
52
  - !ruby/object:Gem::Version
@@ -48,12 +54,14 @@ dependencies:
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
59
  - - '='
53
60
  - !ruby/object:Gem::Version
54
61
  version: 0.6.0
55
- description: |2
56
- This build tool is used to compile projects fast and easy.
62
+ description: ! ' This build tool is used to compile projects fast and easy.
63
+
64
+ '
57
65
  email: alexander.schaal@esrlabs.com
58
66
  executables:
59
67
  - bake
@@ -125,7 +133,6 @@ files:
125
133
  homepage: http://www.esrlabs.com
126
134
  licenses:
127
135
  - MIT
128
- metadata: {}
129
136
  post_install_message:
130
137
  rdoc_options:
131
138
  - -x
@@ -133,19 +140,21 @@ rdoc_options:
133
140
  require_paths:
134
141
  - lib
135
142
  required_ruby_version: !ruby/object:Gem::Requirement
143
+ none: false
136
144
  requirements:
137
- - - '>='
145
+ - - ! '>='
138
146
  - !ruby/object:Gem::Version
139
147
  version: '0'
140
148
  required_rubygems_version: !ruby/object:Gem::Requirement
149
+ none: false
141
150
  requirements:
142
- - - '>='
151
+ - - ! '>='
143
152
  - !ruby/object:Gem::Version
144
153
  version: '0'
145
154
  requirements: []
146
155
  rubyforge_project:
147
- rubygems_version: 2.0.14
156
+ rubygems_version: 1.8.24
148
157
  signing_key:
149
- specification_version: 4
158
+ specification_version: 3
150
159
  summary: Frontend for cxxproject.
151
160
  test_files: []
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 9ca9ccfe3056eb950562ce0ff7dfa59989a4241f
4
- data.tar.gz: 80a039718903f6c56726910850b754f56d03e0f8
5
- SHA512:
6
- metadata.gz: 62ba7c9c7a3c79c611d2005e5454fb2fb8fde97a556e0f4f068dc739551e594c4f08913ef0bf59d1f87da90801646147a65c43208970c1ba02e26ec5d81d9f21
7
- data.tar.gz: ae15cc72a84f9e6283fe14652b150bc8f09031fbf4a71b75d5a0fd1b468007c8f7aa857773da2a822193ef8812fbfc470f5df5a10dcf353be3007dd959751c75