bake-toolkit 2.20.4 → 2.21.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 (139) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile.rb +3 -3
  3. data/bin/bake +46 -46
  4. data/bin/bake-doc +11 -11
  5. data/bin/bakery +179 -179
  6. data/bin/createVSProjects +213 -213
  7. data/documentation/_build/html/_sources/changelog.txt +456 -451
  8. data/documentation/_build/html/_sources/commandline/commandline.txt +107 -107
  9. data/documentation/_build/html/_sources/concepts/build_hierarchy.txt +34 -34
  10. data/documentation/_build/html/_sources/concepts/concepts.txt +14 -14
  11. data/documentation/_build/html/_sources/concepts/inject.txt +65 -65
  12. data/documentation/_build/html/_sources/concepts/link_order.txt +91 -91
  13. data/documentation/_build/html/_sources/concepts/prebuild.txt +56 -56
  14. data/documentation/_build/html/_sources/concepts/the_main_project.txt +45 -45
  15. data/documentation/_build/html/_sources/concepts/the_project_meta_file.txt +72 -72
  16. data/documentation/_build/html/_sources/ide/eclipse/eclipse.txt +25 -25
  17. data/documentation/_build/html/_sources/ide/eclipse/how_to_convert_existing_cdt_workspace.txt +31 -31
  18. data/documentation/_build/html/_sources/ide/eclipse/how_to_create_a_new_project_in_eclipse.txt +18 -18
  19. data/documentation/_build/html/_sources/ide/eclipse/how_to_create_a_workspace_in_eclipse.txt +27 -27
  20. data/documentation/_build/html/_sources/ide/eclipse/how_to_debug_in_eclipse.txt +38 -38
  21. data/documentation/_build/html/_sources/ide/eclipse/how_to_install_eclipse_plugin.txt +44 -44
  22. data/documentation/_build/html/_sources/ide/eclipse/how_to_use_bake_in_eclipse.txt +86 -86
  23. data/documentation/_build/html/_sources/ide/ide_integrations.txt +8 -8
  24. data/documentation/_build/html/_sources/ide/vs/how_to_create_vs_projects.txt +15 -15
  25. data/documentation/_build/html/_sources/ide/vs/how_to_debug_in_vs.txt +35 -35
  26. data/documentation/_build/html/_sources/ide/vs/how_to_used_bake_in_vs.txt +35 -35
  27. data/documentation/_build/html/_sources/ide/vs/vs.txt +10 -10
  28. data/documentation/_build/html/_sources/ide/vs/vs_install.txt +43 -43
  29. data/documentation/_build/html/_sources/index.txt +33 -33
  30. data/documentation/_build/html/_sources/install/install_bake.txt +112 -112
  31. data/documentation/_build/html/_sources/internal.txt +50 -50
  32. data/documentation/_build/html/_sources/known_issues.txt +9 -9
  33. data/documentation/_build/html/_sources/license.txt +4 -4
  34. data/documentation/_build/html/_sources/performance/performance.txt +104 -104
  35. data/documentation/_build/html/_sources/quickstart/quickstart.txt +70 -70
  36. data/documentation/_build/html/_sources/syntax/adapt_configs.txt +143 -143
  37. data/documentation/_build/html/_sources/syntax/auto_adjustment.txt +43 -43
  38. data/documentation/_build/html/_sources/syntax/derive_configs.txt +93 -94
  39. data/documentation/_build/html/_sources/syntax/project_meta_syntax.txt +19 -19
  40. data/documentation/_build/html/_sources/syntax/syntax.txt +11 -11
  41. data/documentation/_build/html/_sources/syntax/variable_substitutions.txt +147 -147
  42. data/documentation/_build/html/_sources/tips_and_tricks/dot.txt +34 -34
  43. data/documentation/_build/html/_sources/tips_and_tricks/how_to_use_bake_with_cygwin.txt +62 -62
  44. data/documentation/_build/html/_sources/tips_and_tricks/static_code_analysis.txt +122 -122
  45. data/documentation/_build/html/_sources/tips_and_tricks/the_bakery.txt +72 -72
  46. data/documentation/_build/html/_sources/tips_and_tricks/the_clang.txt +43 -43
  47. data/documentation/_build/html/_sources/tips_and_tricks/tips_and_tricks.txt +34 -34
  48. data/documentation/_build/html/_sources/why_bake/why_bake.txt +40 -40
  49. data/documentation/_build/html/changelog.html +7 -0
  50. data/documentation/_build/html/commandline/commandline.html +2 -2
  51. data/documentation/_build/html/concepts/link_order.html +2 -2
  52. data/documentation/_build/html/concepts/prebuild.html +2 -2
  53. data/documentation/_build/html/index.html +4 -4
  54. data/documentation/_build/html/performance/performance.html +2 -2
  55. data/documentation/_build/html/searchindex.js +1 -1
  56. data/documentation/_build/html/syntax/adapt_configs.html +2 -2
  57. data/documentation/_build/html/syntax/syntax.html +2 -2
  58. data/documentation/_build/html/tips_and_tricks/the_clang.html +2 -2
  59. data/documentation/_build/html/why_bake/why_bake.html +2 -2
  60. data/lib/adapt/config/loader.rb +112 -112
  61. data/lib/bake/bundle.rb +158 -158
  62. data/lib/bake/cache.rb +179 -180
  63. data/lib/bake/config/checks.rb +68 -68
  64. data/lib/bake/config/loader.rb +363 -363
  65. data/lib/bake/libElement.rb +176 -176
  66. data/lib/bake/mergeConfig.rb +208 -208
  67. data/lib/bake/model/language.rb +45 -45
  68. data/lib/bake/model/loader.rb +99 -99
  69. data/lib/bake/model/metamodel.rb +307 -307
  70. data/lib/bake/model/metamodel_ext.rb +27 -27
  71. data/lib/bake/options/create.rb +95 -95
  72. data/lib/bake/options/options.rb +315 -310
  73. data/lib/bake/options/showDoc.rb +20 -20
  74. data/lib/bake/options/showLicense.rb +9 -9
  75. data/lib/bake/options/showToolchains.rb +38 -38
  76. data/lib/bake/options/usage.rb +79 -68
  77. data/lib/bake/subst.rb +313 -313
  78. data/lib/bake/toolchain/clang.rb +44 -44
  79. data/lib/bake/toolchain/clang_analyze.rb +31 -31
  80. data/lib/bake/toolchain/colorizing_formatter.rb +125 -125
  81. data/lib/bake/toolchain/diab.rb +53 -53
  82. data/lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb +40 -40
  83. data/lib/bake/toolchain/errorparser/diab_linker_error_parser.rb +41 -41
  84. data/lib/bake/toolchain/errorparser/error_parser.rb +71 -71
  85. data/lib/bake/toolchain/errorparser/gcc_compiler_error_parser.rb +35 -35
  86. data/lib/bake/toolchain/errorparser/gcc_linker_error_parser.rb +35 -35
  87. data/lib/bake/toolchain/errorparser/greenhills_compiler_error_parser.rb +32 -32
  88. data/lib/bake/toolchain/errorparser/greenhills_linker_error_parser.rb +44 -44
  89. data/lib/bake/toolchain/errorparser/keil_compiler_error_parser.rb +40 -40
  90. data/lib/bake/toolchain/errorparser/keil_linker_error_parser.rb +30 -30
  91. data/lib/bake/toolchain/errorparser/lint_error_parser.rb +34 -34
  92. data/lib/bake/toolchain/errorparser/msvc_compiler_error_parser.rb +63 -63
  93. data/lib/bake/toolchain/errorparser/msvc_linker_error_parser.rb +42 -42
  94. data/lib/bake/toolchain/errorparser/process_output.rb +2 -2
  95. data/lib/bake/toolchain/errorparser/ti_compiler_error_parser.rb +30 -30
  96. data/lib/bake/toolchain/errorparser/ti_linker_error_parser.rb +30 -30
  97. data/lib/bake/toolchain/gcc.rb +49 -49
  98. data/lib/bake/toolchain/gcc_env.rb +55 -55
  99. data/lib/bake/toolchain/greenhills.rb +52 -52
  100. data/lib/bake/toolchain/keil.rb +53 -53
  101. data/lib/bake/toolchain/lint.rb +20 -20
  102. data/lib/bake/toolchain/msvc.rb +58 -58
  103. data/lib/bake/toolchain/provider.rb +146 -146
  104. data/lib/bake/toolchain/ti.rb +47 -47
  105. data/lib/bake/util.rb +149 -149
  106. data/lib/bakery/buildPattern.rb +24 -24
  107. data/lib/bakery/model/language.rb +22 -22
  108. data/lib/bakery/model/loader.rb +55 -55
  109. data/lib/bakery/model/metamodel.rb +48 -48
  110. data/lib/bakery/options/options.rb +87 -87
  111. data/lib/bakery/toBake.rb +81 -81
  112. data/lib/blocks/block.rb +324 -324
  113. data/lib/blocks/blockBase.rb +204 -204
  114. data/lib/blocks/commandLine.rb +38 -38
  115. data/lib/blocks/compile.rb +529 -528
  116. data/lib/blocks/convert.rb +41 -41
  117. data/lib/blocks/docu.rb +30 -30
  118. data/lib/blocks/executable.rb +174 -174
  119. data/lib/blocks/has_execute_command.rb +31 -31
  120. data/lib/blocks/library.rb +114 -114
  121. data/lib/blocks/lint.rb +56 -56
  122. data/lib/blocks/makefile.rb +100 -100
  123. data/lib/blocks/showIncludes.rb +140 -125
  124. data/lib/common/abortException.rb +4 -4
  125. data/lib/common/cleanup.rb +10 -10
  126. data/lib/common/exit_helper.rb +38 -38
  127. data/lib/common/ext/file.rb +88 -88
  128. data/lib/common/ext/rtext.rb +11 -11
  129. data/lib/common/ext/stdout.rb +45 -45
  130. data/lib/common/ide_interface.rb +194 -194
  131. data/lib/common/options/parser.rb +95 -85
  132. data/lib/common/process.rb +64 -64
  133. data/lib/common/utils.rb +52 -52
  134. data/lib/common/version.rb +31 -23
  135. data/lib/multithread/job.rb +44 -44
  136. data/lib/tocxx.rb +558 -555
  137. data/lib/vs/options.rb +69 -69
  138. data/license.txt +90 -90
  139. metadata +2 -2
@@ -1,3 +1,3 @@
1
- module Bake
2
-
1
+ module Bake
2
+
3
3
  end
@@ -1,30 +1,30 @@
1
- require 'bake/toolchain/errorparser/error_parser'
2
-
3
- module Bake
4
- class TICompilerErrorParser < ErrorParser
5
-
6
- def initialize()
7
- @error_expression = /\"([^,^\"]+)\", line ([0-9]+)[:0-9]* (catastrophic |fatal )*([A-Za-z]+): (.+)/
8
- end
9
-
10
- def scan_lines(consoleOutput, proj_dir)
11
- res = []
12
- consoleOutputFullnames = ""
13
- consoleOutput[0].each_line do |l|
14
- d = ErrorDesc.new
15
- scan_res = l.gsub(/\r\n?/, "").scan(@error_expression)
16
- if scan_res.length > 0
17
- d.file_name = File.expand_path(scan_res[0][0])
18
- d.line_number = scan_res[0][1].to_i
19
- d.message = scan_res[0][4]
20
- d.severity = get_severity(scan_res[0][3])
21
- l.gsub!(scan_res[0][0],d.file_name)
22
- end
23
- res << d
24
- consoleOutputFullnames << l
25
- end
26
- [res, consoleOutputFullnames]
27
- end
28
-
29
- end
30
- end
1
+ require 'bake/toolchain/errorparser/error_parser'
2
+
3
+ module Bake
4
+ class TICompilerErrorParser < ErrorParser
5
+
6
+ def initialize()
7
+ @error_expression = /\"([^,^\"]+)\", line ([0-9]+)[:0-9]* (catastrophic |fatal )*([A-Za-z]+): (.+)/
8
+ end
9
+
10
+ def scan_lines(consoleOutput, proj_dir)
11
+ res = []
12
+ consoleOutputFullnames = ""
13
+ consoleOutput[0].each_line do |l|
14
+ d = ErrorDesc.new
15
+ scan_res = l.gsub(/\r\n?/, "").scan(@error_expression)
16
+ if scan_res.length > 0
17
+ d.file_name = File.expand_path(scan_res[0][0])
18
+ d.line_number = scan_res[0][1].to_i
19
+ d.message = scan_res[0][4]
20
+ d.severity = get_severity(scan_res[0][3])
21
+ l.gsub!(scan_res[0][0],d.file_name)
22
+ end
23
+ res << d
24
+ consoleOutputFullnames << l
25
+ end
26
+ [res, consoleOutputFullnames]
27
+ end
28
+
29
+ end
30
+ end
@@ -1,30 +1,30 @@
1
- require 'bake/toolchain/errorparser/error_parser'
2
-
3
- module Bake
4
- class TILinkerErrorParser < ErrorParser
5
-
6
- def initialize()
7
- # todo: is every line an error?
8
- # todo: some linker errors look like simple text, dunno how to parse properly...
9
- # @error_expression1 = /(.*:\(\..*\)): (.*)/ # e.g. /c/Tool/Temp/ccAlar4R.o:x.cpp:(.text+0x17): undefined reference to `_a'
10
- # @error_expression2 = /(.*):([0-9]+): (.*)/ # e.g. /usr/lib/gcc/i686-pc-cygwin/4.3.4/../../../../i686-pc-cygwin/bin/ld:roodi.yml.a:1: syntax error
11
- end
12
-
13
- def scan_lines(consoleOutput, proj_dir)
14
- res = []
15
- consoleOutput[0].each_line do |l|
16
- l.rstrip!
17
- d = ErrorDesc.new
18
- if l != "<Linking>" then
19
- d.file_name = proj_dir
20
- d.line_number = 0
21
- d.message = l
22
- d.severity = SEVERITY_ERROR
23
- end
24
- res << d
25
- end
26
- [res, consoleOutput]
27
- end
28
-
29
- end
30
- end
1
+ require 'bake/toolchain/errorparser/error_parser'
2
+
3
+ module Bake
4
+ class TILinkerErrorParser < ErrorParser
5
+
6
+ def initialize()
7
+ # todo: is every line an error?
8
+ # todo: some linker errors look like simple text, dunno how to parse properly...
9
+ # @error_expression1 = /(.*:\(\..*\)): (.*)/ # e.g. /c/Tool/Temp/ccAlar4R.o:x.cpp:(.text+0x17): undefined reference to `_a'
10
+ # @error_expression2 = /(.*):([0-9]+): (.*)/ # e.g. /usr/lib/gcc/i686-pc-cygwin/4.3.4/../../../../i686-pc-cygwin/bin/ld:roodi.yml.a:1: syntax error
11
+ end
12
+
13
+ def scan_lines(consoleOutput, proj_dir)
14
+ res = []
15
+ consoleOutput[0].each_line do |l|
16
+ l.rstrip!
17
+ d = ErrorDesc.new
18
+ if l != "<Linking>" then
19
+ d.file_name = proj_dir
20
+ d.line_number = 0
21
+ d.message = l
22
+ d.severity = SEVERITY_ERROR
23
+ end
24
+ res << d
25
+ end
26
+ [res, consoleOutput]
27
+ end
28
+
29
+ end
30
+ end
@@ -1,49 +1,49 @@
1
- require 'common/utils'
2
- require 'bake/toolchain/provider'
3
- require 'bake/toolchain/errorparser/error_parser'
4
- require 'bake/toolchain/errorparser/gcc_compiler_error_parser'
5
- require 'bake/toolchain/errorparser/gcc_linker_error_parser'
6
-
7
- module Bake
8
- module Toolchain
9
-
10
- GCCChain = Provider.add("GCC")
11
-
12
- GCCChain[:COMPILER][:CPP].update({
13
- :COMMAND => "g++",
14
- :DEFINE_FLAG => "-D",
15
- :OBJECT_FILE_FLAG => "-o",
16
- :OBJ_FLAG_SPACE => true,
17
- :INCLUDE_PATH_FLAG => "-I",
18
- :COMPILE_FLAGS => "-c ",
19
- :DEP_FLAGS => "-MD -MF",
20
- :DEP_FLAGS_SPACE => true,
21
- :PREPRO_FLAGS => "-E -P"
22
- })
23
-
24
- GCCChain[:COMPILER][:C] = Utils.deep_copy(GCCChain[:COMPILER][:CPP])
25
- GCCChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
26
- GCCChain[:COMPILER][:C][:COMMAND] = "gcc"
27
-
28
- GCCChain[:COMPILER][:ASM] = Utils.deep_copy(GCCChain[:COMPILER][:C])
29
- GCCChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
30
-
31
- GCCChain[:ARCHIVER][:COMMAND] = "ar"
32
- GCCChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-rc"
33
-
34
- GCCChain[:LINKER][:COMMAND] = "g++"
35
- GCCChain[:LINKER][:SCRIPT] = "-T"
36
- GCCChain[:LINKER][:USER_LIB_FLAG] = "-l:"
37
- GCCChain[:LINKER][:EXE_FLAG] = "-o"
38
- GCCChain[:LINKER][:LIB_FLAG] = "-l"
39
- GCCChain[:LINKER][:LIB_PATH_FLAG] = "-L"
40
-
41
- gccCompilerErrorParser = GCCCompilerErrorParser.new
42
- GCCChain[:COMPILER][:C][:ERROR_PARSER] = gccCompilerErrorParser
43
- GCCChain[:COMPILER][:CPP][:ERROR_PARSER] = gccCompilerErrorParser
44
- GCCChain[:COMPILER][:ASM][:ERROR_PARSER] = gccCompilerErrorParser
45
- GCCChain[:ARCHIVER][:ERROR_PARSER] = gccCompilerErrorParser
46
- GCCChain[:LINKER][:ERROR_PARSER] = GCCLinkerErrorParser.new
47
-
48
- end
49
- end
1
+ require 'common/utils'
2
+ require 'bake/toolchain/provider'
3
+ require 'bake/toolchain/errorparser/error_parser'
4
+ require 'bake/toolchain/errorparser/gcc_compiler_error_parser'
5
+ require 'bake/toolchain/errorparser/gcc_linker_error_parser'
6
+
7
+ module Bake
8
+ module Toolchain
9
+
10
+ GCCChain = Provider.add("GCC")
11
+
12
+ GCCChain[:COMPILER][:CPP].update({
13
+ :COMMAND => "g++",
14
+ :DEFINE_FLAG => "-D",
15
+ :OBJECT_FILE_FLAG => "-o",
16
+ :OBJ_FLAG_SPACE => true,
17
+ :INCLUDE_PATH_FLAG => "-I",
18
+ :COMPILE_FLAGS => "-c ",
19
+ :DEP_FLAGS => "-MD -MF",
20
+ :DEP_FLAGS_SPACE => true,
21
+ :PREPRO_FLAGS => "-E -P"
22
+ })
23
+
24
+ GCCChain[:COMPILER][:C] = Utils.deep_copy(GCCChain[:COMPILER][:CPP])
25
+ GCCChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
26
+ GCCChain[:COMPILER][:C][:COMMAND] = "gcc"
27
+
28
+ GCCChain[:COMPILER][:ASM] = Utils.deep_copy(GCCChain[:COMPILER][:C])
29
+ GCCChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
30
+
31
+ GCCChain[:ARCHIVER][:COMMAND] = "ar"
32
+ GCCChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-rc"
33
+
34
+ GCCChain[:LINKER][:COMMAND] = "g++"
35
+ GCCChain[:LINKER][:SCRIPT] = "-T"
36
+ GCCChain[:LINKER][:USER_LIB_FLAG] = "-l:"
37
+ GCCChain[:LINKER][:EXE_FLAG] = "-o"
38
+ GCCChain[:LINKER][:LIB_FLAG] = "-l"
39
+ GCCChain[:LINKER][:LIB_PATH_FLAG] = "-L"
40
+
41
+ gccCompilerErrorParser = GCCCompilerErrorParser.new
42
+ GCCChain[:COMPILER][:C][:ERROR_PARSER] = gccCompilerErrorParser
43
+ GCCChain[:COMPILER][:CPP][:ERROR_PARSER] = gccCompilerErrorParser
44
+ GCCChain[:COMPILER][:ASM][:ERROR_PARSER] = gccCompilerErrorParser
45
+ GCCChain[:ARCHIVER][:ERROR_PARSER] = gccCompilerErrorParser
46
+ GCCChain[:LINKER][:ERROR_PARSER] = GCCLinkerErrorParser.new
47
+
48
+ end
49
+ end
@@ -1,55 +1,55 @@
1
- require 'common/utils'
2
- require 'bake/toolchain/provider'
3
- require 'bake/toolchain/errorparser/error_parser'
4
- require 'bake/toolchain/errorparser/gcc_compiler_error_parser'
5
- require 'bake/toolchain/errorparser/gcc_linker_error_parser'
6
-
7
- module Bake
8
- module Toolchain
9
-
10
- GCCENVChain = Provider.add("GCC_ENV")
11
-
12
- GCCENVChain[:COMPILER][:CPP].update({
13
- :COMMAND => "$(CXX)",
14
- :DEFINE_FLAG => "-D",
15
- :OBJECT_FILE_FLAG => "-o",
16
- :OBJ_FLAG_SPACE => true,
17
- :INCLUDE_PATH_FLAG => "-I",
18
- :COMPILE_FLAGS => "-c ",
19
- :DEP_FLAGS => "-MD -MF",
20
- :DEP_FLAGS_SPACE => true,
21
- :PREPRO_FLAGS => "-E -P",
22
- :FLAGS => "$(CXXFLAGS)"
23
- })
24
-
25
- GCCENVChain[:COMPILER][:C] = Utils.deep_copy(GCCENVChain[:COMPILER][:CPP])
26
- GCCENVChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
27
- GCCENVChain[:COMPILER][:C][:COMMAND] = "$(CC)"
28
- GCCENVChain[:COMPILER][:C][:FLAGS] = "$(CFLAGS)"
29
-
30
- GCCENVChain[:COMPILER][:ASM] = Utils.deep_copy(GCCENVChain[:COMPILER][:C])
31
- GCCENVChain[:COMPILER][:ASM][:COMMAND] = "$(AS)"
32
- GCCENVChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
33
- GCCENVChain[:COMPILER][:ASM][:FLAGS] = "$(ASFLAGS)"
34
-
35
- GCCENVChain[:ARCHIVER][:COMMAND] = "$(AR)"
36
- GCCENVChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-rc"
37
- GCCENVChain[:ARCHIVER][:FLAGS] = "$(ARFLAGS)"
38
-
39
- GCCENVChain[:LINKER][:COMMAND] = "$(CXX)"
40
- GCCENVChain[:LINKER][:SCRIPT] = "-T"
41
- GCCENVChain[:LINKER][:USER_LIB_FLAG] = "-l:"
42
- GCCENVChain[:LINKER][:EXE_FLAG] = "-o"
43
- GCCENVChain[:LINKER][:LIB_FLAG] = "-l"
44
- GCCENVChain[:LINKER][:LIB_PATH_FLAG] = "-L"
45
- GCCENVChain[:LINKER][:FLAGS] = "$(LDFLAGS)"
46
-
47
- gccCompilerErrorParser = GCCCompilerErrorParser.new
48
- GCCENVChain[:COMPILER][:C][:ERROR_PARSER] = gccCompilerErrorParser
49
- GCCENVChain[:COMPILER][:CPP][:ERROR_PARSER] = gccCompilerErrorParser
50
- GCCENVChain[:COMPILER][:ASM][:ERROR_PARSER] = gccCompilerErrorParser
51
- GCCENVChain[:ARCHIVER][:ERROR_PARSER] = gccCompilerErrorParser
52
- GCCENVChain[:LINKER][:ERROR_PARSER] = GCCLinkerErrorParser.new
53
-
54
- end
55
- end
1
+ require 'common/utils'
2
+ require 'bake/toolchain/provider'
3
+ require 'bake/toolchain/errorparser/error_parser'
4
+ require 'bake/toolchain/errorparser/gcc_compiler_error_parser'
5
+ require 'bake/toolchain/errorparser/gcc_linker_error_parser'
6
+
7
+ module Bake
8
+ module Toolchain
9
+
10
+ GCCENVChain = Provider.add("GCC_ENV")
11
+
12
+ GCCENVChain[:COMPILER][:CPP].update({
13
+ :COMMAND => "$(CXX)",
14
+ :DEFINE_FLAG => "-D",
15
+ :OBJECT_FILE_FLAG => "-o",
16
+ :OBJ_FLAG_SPACE => true,
17
+ :INCLUDE_PATH_FLAG => "-I",
18
+ :COMPILE_FLAGS => "-c ",
19
+ :DEP_FLAGS => "-MD -MF",
20
+ :DEP_FLAGS_SPACE => true,
21
+ :PREPRO_FLAGS => "-E -P",
22
+ :FLAGS => "$(CXXFLAGS)"
23
+ })
24
+
25
+ GCCENVChain[:COMPILER][:C] = Utils.deep_copy(GCCENVChain[:COMPILER][:CPP])
26
+ GCCENVChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
27
+ GCCENVChain[:COMPILER][:C][:COMMAND] = "$(CC)"
28
+ GCCENVChain[:COMPILER][:C][:FLAGS] = "$(CFLAGS)"
29
+
30
+ GCCENVChain[:COMPILER][:ASM] = Utils.deep_copy(GCCENVChain[:COMPILER][:C])
31
+ GCCENVChain[:COMPILER][:ASM][:COMMAND] = "$(AS)"
32
+ GCCENVChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
33
+ GCCENVChain[:COMPILER][:ASM][:FLAGS] = "$(ASFLAGS)"
34
+
35
+ GCCENVChain[:ARCHIVER][:COMMAND] = "$(AR)"
36
+ GCCENVChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-rc"
37
+ GCCENVChain[:ARCHIVER][:FLAGS] = "$(ARFLAGS)"
38
+
39
+ GCCENVChain[:LINKER][:COMMAND] = "$(CXX)"
40
+ GCCENVChain[:LINKER][:SCRIPT] = "-T"
41
+ GCCENVChain[:LINKER][:USER_LIB_FLAG] = "-l:"
42
+ GCCENVChain[:LINKER][:EXE_FLAG] = "-o"
43
+ GCCENVChain[:LINKER][:LIB_FLAG] = "-l"
44
+ GCCENVChain[:LINKER][:LIB_PATH_FLAG] = "-L"
45
+ GCCENVChain[:LINKER][:FLAGS] = "$(LDFLAGS)"
46
+
47
+ gccCompilerErrorParser = GCCCompilerErrorParser.new
48
+ GCCENVChain[:COMPILER][:C][:ERROR_PARSER] = gccCompilerErrorParser
49
+ GCCENVChain[:COMPILER][:CPP][:ERROR_PARSER] = gccCompilerErrorParser
50
+ GCCENVChain[:COMPILER][:ASM][:ERROR_PARSER] = gccCompilerErrorParser
51
+ GCCENVChain[:ARCHIVER][:ERROR_PARSER] = gccCompilerErrorParser
52
+ GCCENVChain[:LINKER][:ERROR_PARSER] = GCCLinkerErrorParser.new
53
+
54
+ end
55
+ end
@@ -1,52 +1,52 @@
1
- require 'bake/toolchain/provider'
2
- require 'common/utils'
3
- require 'bake/toolchain/errorparser/greenhills_compiler_error_parser'
4
- require 'bake/toolchain/errorparser/greenhills_linker_error_parser'
5
-
6
- module Bake
7
- module Toolchain
8
-
9
- GreenHillsChain = Provider.add("GreenHills")
10
-
11
- GreenHillsChain[:COMPILER][:C].update({
12
- :COMMAND => "cxppc",
13
- :FLAGS => "",
14
- :DEFINE_FLAG => "-D",
15
- :OBJECT_FILE_FLAG => "-o",
16
- :OBJ_FLAG_SPACE => true,
17
- :INCLUDE_PATH_FLAG => "-I",
18
- :COMPILE_FLAGS => "-c",
19
- :DEP_FLAGS => "-MD",
20
- :DEP_FLAGS_FILENAME => false,
21
- :PREPRO_FLAGS => "-P"
22
- })
23
-
24
- GreenHillsChain[:COMPILER][:CPP] = Utils.deep_copy(GreenHillsChain[:COMPILER][:C])
25
- GreenHillsChain[:COMPILER][:CPP][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:CPP][:SOURCE_FILE_ENDINGS]
26
-
27
- GreenHillsChain[:COMPILER][:ASM] = Utils.deep_copy(GreenHillsChain[:COMPILER][:C])
28
- GreenHillsChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
29
- GreenHillsChain[:COMPILER][:ASM][:PREPRO_FLAGS] = ""
30
-
31
- GreenHillsChain[:ARCHIVER][:COMMAND] = "cxppc"
32
- GreenHillsChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-archive -o"
33
-
34
- GreenHillsChain[:LINKER][:COMMAND] = "cxppc" # ??
35
- GreenHillsChain[:LINKER][:SCRIPT] = "-T" # -T file.ld
36
- GreenHillsChain[:LINKER][:USER_LIB_FLAG] = "-l" # user lib not supported? same as lib...
37
- GreenHillsChain[:LINKER][:EXE_FLAG] = "-o"
38
- GreenHillsChain[:LINKER][:LIB_FLAG] = "-l"
39
- GreenHillsChain[:LINKER][:LIB_PATH_FLAG] = "-L"
40
- GreenHillsChain[:LINKER][:MAP_FILE_FLAG] = "-map=" # -map=filename
41
- GreenHillsChain[:LINKER][:MAP_FILE_PIPE] = false
42
- GreenHillsChain[:LINKER][:OUTPUT_ENDING] = ".elf"
43
-
44
- GreenHillsCompilerErrorParser = GreenHillsCompilerErrorParser.new
45
- GreenHillsChain[:COMPILER][:C][:ERROR_PARSER] = GreenHillsCompilerErrorParser
46
- GreenHillsChain[:COMPILER][:CPP][:ERROR_PARSER] = GreenHillsCompilerErrorParser
47
- GreenHillsChain[:COMPILER][:ASM][:ERROR_PARSER] = GreenHillsCompilerErrorParser
48
- GreenHillsChain[:ARCHIVER][:ERROR_PARSER] = GreenHillsCompilerErrorParser
49
- GreenHillsChain[:LINKER][:ERROR_PARSER] = GreenHillsLinkerErrorParser.new
50
-
51
- end
52
- end
1
+ require 'bake/toolchain/provider'
2
+ require 'common/utils'
3
+ require 'bake/toolchain/errorparser/greenhills_compiler_error_parser'
4
+ require 'bake/toolchain/errorparser/greenhills_linker_error_parser'
5
+
6
+ module Bake
7
+ module Toolchain
8
+
9
+ GreenHillsChain = Provider.add("GreenHills")
10
+
11
+ GreenHillsChain[:COMPILER][:C].update({
12
+ :COMMAND => "cxppc",
13
+ :FLAGS => "",
14
+ :DEFINE_FLAG => "-D",
15
+ :OBJECT_FILE_FLAG => "-o",
16
+ :OBJ_FLAG_SPACE => true,
17
+ :INCLUDE_PATH_FLAG => "-I",
18
+ :COMPILE_FLAGS => "-c",
19
+ :DEP_FLAGS => "-MD",
20
+ :DEP_FLAGS_FILENAME => false,
21
+ :PREPRO_FLAGS => "-P"
22
+ })
23
+
24
+ GreenHillsChain[:COMPILER][:CPP] = Utils.deep_copy(GreenHillsChain[:COMPILER][:C])
25
+ GreenHillsChain[:COMPILER][:CPP][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:CPP][:SOURCE_FILE_ENDINGS]
26
+
27
+ GreenHillsChain[:COMPILER][:ASM] = Utils.deep_copy(GreenHillsChain[:COMPILER][:C])
28
+ GreenHillsChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
29
+ GreenHillsChain[:COMPILER][:ASM][:PREPRO_FLAGS] = ""
30
+
31
+ GreenHillsChain[:ARCHIVER][:COMMAND] = "cxppc"
32
+ GreenHillsChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-archive -o"
33
+
34
+ GreenHillsChain[:LINKER][:COMMAND] = "cxppc" # ??
35
+ GreenHillsChain[:LINKER][:SCRIPT] = "-T" # -T file.ld
36
+ GreenHillsChain[:LINKER][:USER_LIB_FLAG] = "-l" # user lib not supported? same as lib...
37
+ GreenHillsChain[:LINKER][:EXE_FLAG] = "-o"
38
+ GreenHillsChain[:LINKER][:LIB_FLAG] = "-l"
39
+ GreenHillsChain[:LINKER][:LIB_PATH_FLAG] = "-L"
40
+ GreenHillsChain[:LINKER][:MAP_FILE_FLAG] = "-map=" # -map=filename
41
+ GreenHillsChain[:LINKER][:MAP_FILE_PIPE] = false
42
+ GreenHillsChain[:LINKER][:OUTPUT_ENDING] = ".elf"
43
+
44
+ GreenHillsCompilerErrorParser = GreenHillsCompilerErrorParser.new
45
+ GreenHillsChain[:COMPILER][:C][:ERROR_PARSER] = GreenHillsCompilerErrorParser
46
+ GreenHillsChain[:COMPILER][:CPP][:ERROR_PARSER] = GreenHillsCompilerErrorParser
47
+ GreenHillsChain[:COMPILER][:ASM][:ERROR_PARSER] = GreenHillsCompilerErrorParser
48
+ GreenHillsChain[:ARCHIVER][:ERROR_PARSER] = GreenHillsCompilerErrorParser
49
+ GreenHillsChain[:LINKER][:ERROR_PARSER] = GreenHillsLinkerErrorParser.new
50
+
51
+ end
52
+ end
@@ -1,53 +1,53 @@
1
- require 'common/utils'
2
- require 'bake/toolchain/provider'
3
- require 'bake/toolchain/errorparser/error_parser'
4
- require 'bake/toolchain/errorparser/keil_compiler_error_parser'
5
- require 'bake/toolchain/errorparser/keil_linker_error_parser'
6
-
7
- module Bake
8
- module Toolchain
9
-
10
- KeilChain = Provider.add("Keil")
11
-
12
- KeilChain[:COMPILER][:CPP].update({
13
- :COMMAND => "armcc",
14
- :DEFINE_FLAG => "-D",
15
- :OBJECT_FILE_FLAG => "-o",
16
- :OBJ_FLAG_SPACE => true,
17
- :INCLUDE_PATH_FLAG => "-I",
18
- :COMPILE_FLAGS => "-c ",
19
- :DEP_FLAGS => "--depend=",
20
- :DEP_FLAGS_SPACE => false,
21
- :PREPRO_FLAGS => "-E -P"
22
- })
23
-
24
- KeilChain[:COMPILER][:C] = Utils.deep_copy(KeilChain[:COMPILER][:CPP])
25
- KeilChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
26
-
27
- KeilChain[:COMPILER][:ASM] = Utils.deep_copy(KeilChain[:COMPILER][:C])
28
- KeilChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
29
- KeilChain[:COMPILER][:ASM][:COMMAND] = "armasm"
30
- KeilChain[:COMPILER][:ASM][:COMPILE_FLAGS] = ""
31
-
32
- KeilChain[:ARCHIVER][:COMMAND] = "armar"
33
- KeilChain[:ARCHIVER][:ARCHIVE_FLAGS] = "--create"
34
-
35
- KeilChain[:LINKER][:COMMAND] = "armlink"
36
- KeilChain[:LINKER][:SCRIPT] = "--scatter"
37
- KeilChain[:LINKER][:USER_LIB_FLAG] = ""
38
- KeilChain[:LINKER][:EXE_FLAG] = "-o"
39
- KeilChain[:LINKER][:LIB_FLAG] = ""
40
- KeilChain[:LINKER][:LIB_PATH_FLAG] = "--userlibpath="
41
- KeilChain[:LINKER][:MAP_FILE_FLAG] = "--map --list="
42
- KeilChain[:LINKER][:MAP_FILE_PIPE] = false
43
- KeilChain[:LINKER][:LIST_MODE] = true
44
-
45
- keilCompilerErrorParser = KeilCompilerErrorParser.new
46
- KeilChain[:COMPILER][:C][:ERROR_PARSER] = keilCompilerErrorParser
47
- KeilChain[:COMPILER][:CPP][:ERROR_PARSER] = keilCompilerErrorParser
48
- KeilChain[:COMPILER][:ASM][:ERROR_PARSER] = keilCompilerErrorParser
49
- KeilChain[:ARCHIVER][:ERROR_PARSER] = keilCompilerErrorParser
50
- KeilChain[:LINKER][:ERROR_PARSER] = KeilLinkerErrorParser.new
51
-
52
- end
53
- end
1
+ require 'common/utils'
2
+ require 'bake/toolchain/provider'
3
+ require 'bake/toolchain/errorparser/error_parser'
4
+ require 'bake/toolchain/errorparser/keil_compiler_error_parser'
5
+ require 'bake/toolchain/errorparser/keil_linker_error_parser'
6
+
7
+ module Bake
8
+ module Toolchain
9
+
10
+ KeilChain = Provider.add("Keil")
11
+
12
+ KeilChain[:COMPILER][:CPP].update({
13
+ :COMMAND => "armcc",
14
+ :DEFINE_FLAG => "-D",
15
+ :OBJECT_FILE_FLAG => "-o",
16
+ :OBJ_FLAG_SPACE => true,
17
+ :INCLUDE_PATH_FLAG => "-I",
18
+ :COMPILE_FLAGS => "-c ",
19
+ :DEP_FLAGS => "--depend=",
20
+ :DEP_FLAGS_SPACE => false,
21
+ :PREPRO_FLAGS => "-E -P"
22
+ })
23
+
24
+ KeilChain[:COMPILER][:C] = Utils.deep_copy(KeilChain[:COMPILER][:CPP])
25
+ KeilChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
26
+
27
+ KeilChain[:COMPILER][:ASM] = Utils.deep_copy(KeilChain[:COMPILER][:C])
28
+ KeilChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
29
+ KeilChain[:COMPILER][:ASM][:COMMAND] = "armasm"
30
+ KeilChain[:COMPILER][:ASM][:COMPILE_FLAGS] = ""
31
+
32
+ KeilChain[:ARCHIVER][:COMMAND] = "armar"
33
+ KeilChain[:ARCHIVER][:ARCHIVE_FLAGS] = "--create"
34
+
35
+ KeilChain[:LINKER][:COMMAND] = "armlink"
36
+ KeilChain[:LINKER][:SCRIPT] = "--scatter"
37
+ KeilChain[:LINKER][:USER_LIB_FLAG] = ""
38
+ KeilChain[:LINKER][:EXE_FLAG] = "-o"
39
+ KeilChain[:LINKER][:LIB_FLAG] = ""
40
+ KeilChain[:LINKER][:LIB_PATH_FLAG] = "--userlibpath="
41
+ KeilChain[:LINKER][:MAP_FILE_FLAG] = "--map --list="
42
+ KeilChain[:LINKER][:MAP_FILE_PIPE] = false
43
+ KeilChain[:LINKER][:LIST_MODE] = true
44
+
45
+ keilCompilerErrorParser = KeilCompilerErrorParser.new
46
+ KeilChain[:COMPILER][:C][:ERROR_PARSER] = keilCompilerErrorParser
47
+ KeilChain[:COMPILER][:CPP][:ERROR_PARSER] = keilCompilerErrorParser
48
+ KeilChain[:COMPILER][:ASM][:ERROR_PARSER] = keilCompilerErrorParser
49
+ KeilChain[:ARCHIVER][:ERROR_PARSER] = keilCompilerErrorParser
50
+ KeilChain[:LINKER][:ERROR_PARSER] = KeilLinkerErrorParser.new
51
+
52
+ end
53
+ end