bake-toolkit 1.0.25 → 1.0.26

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.
@@ -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