bake-toolkit 2.24.6 → 2.25.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/bin/bake-doc +11 -11
  3. data/bin/bake-format +2 -2
  4. data/bin/bakeclean +32 -32
  5. data/bin/bakeqac +77 -6
  6. data/documentation/_build/html/_images/eclipse.png +0 -0
  7. data/documentation/_build/html/_images/emacs.png +0 -0
  8. data/documentation/_build/html/_images/notepad.png +0 -0
  9. data/documentation/_build/html/_images/vim.png +0 -0
  10. data/documentation/_build/html/_images/visualstudio-pro.png +0 -0
  11. data/documentation/_build/html/_sources/changelog.txt +10 -0
  12. data/documentation/_build/html/_sources/ide/ide_integrations.txt +40 -8
  13. data/documentation/_build/html/_sources/index.txt +1 -1
  14. data/documentation/_build/html/_sources/tips_and_tricks/qac.txt +159 -152
  15. data/documentation/_build/html/_static/eclipse.png +0 -0
  16. data/documentation/_build/html/_static/emacs.png +0 -0
  17. data/documentation/_build/html/_static/notepad.png +0 -0
  18. data/documentation/_build/html/_static/syntax.html +8 -1
  19. data/documentation/_build/html/_static/vim.png +0 -0
  20. data/documentation/_build/html/_static/visualstudio-pro.png +0 -0
  21. data/documentation/_build/html/changelog.html +12 -0
  22. data/documentation/_build/html/ide/ide_integrations.html +22 -20
  23. data/documentation/_build/html/index.html +5 -4
  24. data/documentation/_build/html/searchindex.js +1 -1
  25. data/documentation/_build/html/syntax/project_meta_syntax.html +8 -1
  26. data/documentation/_build/html/tips_and_tricks/qac.html +10 -3
  27. data/lib/bake/cache.rb +16 -28
  28. data/lib/bake/config/loader.rb +14 -24
  29. data/lib/bake/model/metamodel.rb +311 -307
  30. data/lib/bake/model/metamodel_ext.rb +33 -27
  31. data/lib/bake/subst.rb +4 -4
  32. data/lib/bake/toolchain/clang.rb +43 -44
  33. data/lib/bake/toolchain/clang_analyze.rb +30 -31
  34. data/lib/bake/toolchain/diab.rb +52 -53
  35. data/lib/bake/toolchain/gcc.rb +1 -1
  36. data/lib/bake/toolchain/gcc_env.rb +54 -55
  37. data/lib/bake/toolchain/greenhills.rb +51 -52
  38. data/lib/bake/toolchain/keil.rb +54 -55
  39. data/lib/bake/toolchain/lint.rb +19 -20
  40. data/lib/bake/toolchain/msvc.rb +57 -58
  41. data/lib/bake/toolchain/provider.rb +6 -3
  42. data/lib/bake/toolchain/ti.rb +50 -49
  43. data/lib/bakeqac/options/options.rb +2 -2
  44. data/lib/blocks/block.rb +4 -0
  45. data/lib/blocks/compile.rb +36 -19
  46. data/lib/common/version.rb +1 -1
  47. data/lib/format/bake_format.rb +1 -1
  48. data/lib/tocxx.rb +576 -558
  49. metadata +26 -2
@@ -1,52 +1,51 @@
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
+ :COMPILE_FLAGS => "-c",
18
+ :DEP_FLAGS => "-MD",
19
+ :DEP_FLAGS_FILENAME => false,
20
+ :PREPRO_FLAGS => "-P"
21
+ })
22
+
23
+ GreenHillsChain[:COMPILER][:CPP] = Utils.deep_copy(GreenHillsChain[:COMPILER][:C])
24
+ GreenHillsChain[:COMPILER][:CPP][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:CPP][:SOURCE_FILE_ENDINGS]
25
+
26
+ GreenHillsChain[:COMPILER][:ASM] = Utils.deep_copy(GreenHillsChain[:COMPILER][:C])
27
+ GreenHillsChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
28
+ GreenHillsChain[:COMPILER][:ASM][:PREPRO_FLAGS] = ""
29
+
30
+ GreenHillsChain[:ARCHIVER][:COMMAND] = "cxppc"
31
+ GreenHillsChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-archive -o"
32
+
33
+ GreenHillsChain[:LINKER][:COMMAND] = "cxppc" # ??
34
+ GreenHillsChain[:LINKER][:SCRIPT] = "-T" # -T file.ld
35
+ GreenHillsChain[:LINKER][:USER_LIB_FLAG] = "-l" # user lib not supported? same as lib...
36
+ GreenHillsChain[:LINKER][:EXE_FLAG] = "-o"
37
+ GreenHillsChain[:LINKER][:LIB_FLAG] = "-l"
38
+ GreenHillsChain[:LINKER][:LIB_PATH_FLAG] = "-L"
39
+ GreenHillsChain[:LINKER][:MAP_FILE_FLAG] = "-map=" # -map=filename
40
+ GreenHillsChain[:LINKER][:MAP_FILE_PIPE] = false
41
+ GreenHillsChain[:LINKER][:OUTPUT_ENDING] = ".elf"
42
+
43
+ GreenHillsCompilerErrorParser = GreenHillsCompilerErrorParser.new
44
+ GreenHillsChain[:COMPILER][:C][:ERROR_PARSER] = GreenHillsCompilerErrorParser
45
+ GreenHillsChain[:COMPILER][:CPP][:ERROR_PARSER] = GreenHillsCompilerErrorParser
46
+ GreenHillsChain[:COMPILER][:ASM][:ERROR_PARSER] = GreenHillsCompilerErrorParser
47
+ GreenHillsChain[:ARCHIVER][:ERROR_PARSER] = GreenHillsCompilerErrorParser
48
+ GreenHillsChain[:LINKER][:ERROR_PARSER] = GreenHillsLinkerErrorParser.new
49
+
50
+ end
51
+ end
@@ -1,55 +1,54 @@
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[:COMPILER][:DEP_FILE_SINGLE_LINE] = true
33
-
34
- KeilChain[:ARCHIVER][:COMMAND] = "armar"
35
- KeilChain[:ARCHIVER][:ARCHIVE_FLAGS] = "--create"
36
-
37
- KeilChain[:LINKER][:COMMAND] = "armlink"
38
- KeilChain[:LINKER][:SCRIPT] = "--scatter"
39
- KeilChain[:LINKER][:USER_LIB_FLAG] = ""
40
- KeilChain[:LINKER][:EXE_FLAG] = "-o"
41
- KeilChain[:LINKER][:LIB_FLAG] = ""
42
- KeilChain[:LINKER][:LIB_PATH_FLAG] = "--userlibpath="
43
- KeilChain[:LINKER][:MAP_FILE_FLAG] = "--map --list="
44
- KeilChain[:LINKER][:MAP_FILE_PIPE] = false
45
- KeilChain[:LINKER][:LIST_MODE] = true
46
-
47
- keilCompilerErrorParser = KeilCompilerErrorParser.new
48
- KeilChain[:COMPILER][:C][:ERROR_PARSER] = keilCompilerErrorParser
49
- KeilChain[:COMPILER][:CPP][:ERROR_PARSER] = keilCompilerErrorParser
50
- KeilChain[:COMPILER][:ASM][:ERROR_PARSER] = keilCompilerErrorParser
51
- KeilChain[:ARCHIVER][:ERROR_PARSER] = keilCompilerErrorParser
52
- KeilChain[:LINKER][:ERROR_PARSER] = KeilLinkerErrorParser.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/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
+ :COMPILE_FLAGS => "-c ",
18
+ :DEP_FLAGS => "--depend=",
19
+ :DEP_FLAGS_SPACE => false,
20
+ :PREPRO_FLAGS => "-E -P"
21
+ })
22
+
23
+ KeilChain[:COMPILER][:C] = Utils.deep_copy(KeilChain[:COMPILER][:CPP])
24
+ KeilChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
25
+
26
+ KeilChain[:COMPILER][:ASM] = Utils.deep_copy(KeilChain[:COMPILER][:C])
27
+ KeilChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
28
+ KeilChain[:COMPILER][:ASM][:COMMAND] = "armasm"
29
+ KeilChain[:COMPILER][:ASM][:COMPILE_FLAGS] = ""
30
+
31
+ KeilChain[:COMPILER][:DEP_FILE_SINGLE_LINE] = true
32
+
33
+ KeilChain[:ARCHIVER][:COMMAND] = "armar"
34
+ KeilChain[:ARCHIVER][:ARCHIVE_FLAGS] = "--create"
35
+
36
+ KeilChain[:LINKER][:COMMAND] = "armlink"
37
+ KeilChain[:LINKER][:SCRIPT] = "--scatter"
38
+ KeilChain[:LINKER][:USER_LIB_FLAG] = ""
39
+ KeilChain[:LINKER][:EXE_FLAG] = "-o"
40
+ KeilChain[:LINKER][:LIB_FLAG] = ""
41
+ KeilChain[:LINKER][:LIB_PATH_FLAG] = "--userlibpath="
42
+ KeilChain[:LINKER][:MAP_FILE_FLAG] = "--map --list="
43
+ KeilChain[:LINKER][:MAP_FILE_PIPE] = false
44
+ KeilChain[:LINKER][:LIST_MODE] = true
45
+
46
+ keilCompilerErrorParser = KeilCompilerErrorParser.new
47
+ KeilChain[:COMPILER][:C][:ERROR_PARSER] = keilCompilerErrorParser
48
+ KeilChain[:COMPILER][:CPP][:ERROR_PARSER] = keilCompilerErrorParser
49
+ KeilChain[:COMPILER][:ASM][:ERROR_PARSER] = keilCompilerErrorParser
50
+ KeilChain[:ARCHIVER][:ERROR_PARSER] = keilCompilerErrorParser
51
+ KeilChain[:LINKER][:ERROR_PARSER] = KeilLinkerErrorParser.new
52
+
53
+ end
54
+ end
@@ -1,20 +1,19 @@
1
- require 'common/utils'
2
- require 'bake/toolchain/provider'
3
- require 'bake/toolchain/errorparser/lint_error_parser'
4
-
5
- module Bake
6
- module Toolchain
7
-
8
- LintChain = Provider.add("Lint")
9
-
10
- LintChain[:COMPILER][:CPP].update({
11
- :COMMAND => "lint-nt.exe",
12
- :DEFINE_FLAG => "-D",
13
- :INCLUDE_PATH_FLAG => "-I",
14
- :COMPILE_FLAGS => ["-b","-\"format=%f%(:%l:%) %t %n: %m\"", "-width(0)", "-hF1", "-zero"], # array, not string!
15
- })
16
-
17
- LintChain[:COMPILER][:CPP][:ERROR_PARSER] = LintErrorParser.new
18
-
19
- end
20
- end
1
+ require 'common/utils'
2
+ require 'bake/toolchain/provider'
3
+ require 'bake/toolchain/errorparser/lint_error_parser'
4
+
5
+ module Bake
6
+ module Toolchain
7
+
8
+ LintChain = Provider.add("Lint")
9
+
10
+ LintChain[:COMPILER][:CPP].update({
11
+ :COMMAND => "lint-nt.exe",
12
+ :DEFINE_FLAG => "-D",
13
+ :COMPILE_FLAGS => ["-b","-\"format=%f%(:%l:%) %t %n: %m\"", "-width(0)", "-hF1", "-zero"], # array, not string!
14
+ })
15
+
16
+ LintChain[:COMPILER][:CPP][:ERROR_PARSER] = LintErrorParser.new
17
+
18
+ end
19
+ end
@@ -1,58 +1,57 @@
1
- require 'common/utils'
2
- require 'bake/toolchain/provider'
3
- require 'bake/toolchain/errorparser/error_parser'
4
- require 'bake/toolchain/errorparser/msvc_compiler_error_parser'
5
- require 'bake/toolchain/errorparser/msvc_linker_error_parser'
6
-
7
- module Bake
8
- module Toolchain
9
-
10
- MSVCChain = Provider.add("MSVC")
11
-
12
- MSVCChain[:COMPILER][:CPP].update({
13
- :COMMAND => "cl",
14
- :DEFINE_FLAG => "-D",
15
- :OBJECT_FILE_FLAG => "-Fo",
16
- :OBJ_FLAG_SPACE => false,
17
- :INCLUDE_PATH_FLAG => "-I",
18
- :COMPILE_FLAGS => "-c -EHsc $(MSVC_FORCE_SYNC_PDB_WRITES)",
19
- :DEP_FLAGS_FILENAME => false,
20
- :DEP_FLAGS => "-showIncludes",
21
- :DEP_FLAGS_SPACE => true,
22
- :PREPRO_FLAGS => "-P",
23
- :PREPRO_FILE_FLAG => "-Fi"
24
- })
25
-
26
- MSVCChain[:COMPILER][:C] = Utils.deep_copy(MSVCChain[:COMPILER][:CPP])
27
- MSVCChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
28
-
29
- MSVCChain[:COMPILER][:ASM] = Utils.deep_copy(MSVCChain[:COMPILER][:C])
30
- MSVCChain[:COMPILER][:ASM][:COMMAND] = "ml"
31
- MSVCChain[:COMPILER][:ASM][:COMPILE_FLAGS] = "-c $(MSVC_FORCE_SYNC_PDB_WRITES)"
32
- MSVCChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
33
-
34
- MSVCChain[:ARCHIVER][:COMMAND] = "lib"
35
- MSVCChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-out:"
36
- MSVCChain[:ARCHIVER][:ARCHIVE_FLAGS_SPACE] = false
37
-
38
- MSVCChain[:LINKER][:COMMAND] = "link"
39
- MSVCChain[:LINKER][:USER_LIB_FLAG] = ""
40
- MSVCChain[:LINKER][:EXE_FLAG] = "-out:"
41
- MSVCChain[:LINKER][:EXE_FLAG_SPACE] = false
42
- MSVCChain[:LINKER][:LIB_FLAG] = ""
43
- MSVCChain[:LINKER][:LIB_PATH_FLAG] = "-libpath:"
44
- MSVCChain[:LINKER][:MAP_FILE_FLAG] = "-map:"
45
- MSVCChain[:LINKER][:MAP_FILE_PIPE] = false
46
- MSVCChain[:LINKER][:SCRIPT] = "Linkerscript option not supported for MSVC"
47
-
48
-
49
- msvcCompilerErrorParser = MSVCCompilerErrorParser.new
50
- MSVCChain[:COMPILER][:C][:ERROR_PARSER] = msvcCompilerErrorParser
51
- MSVCChain[:COMPILER][:CPP][:ERROR_PARSER] = msvcCompilerErrorParser
52
- MSVCChain[:COMPILER][:ASM][:ERROR_PARSER] = msvcCompilerErrorParser
53
- MSVCChain[:ARCHIVER][:ERROR_PARSER] = msvcCompilerErrorParser
54
- MSVCChain[:LINKER][:ERROR_PARSER] = MSVCLinkerErrorParser.new
55
-
56
- end
57
- end
58
-
1
+ require 'common/utils'
2
+ require 'bake/toolchain/provider'
3
+ require 'bake/toolchain/errorparser/error_parser'
4
+ require 'bake/toolchain/errorparser/msvc_compiler_error_parser'
5
+ require 'bake/toolchain/errorparser/msvc_linker_error_parser'
6
+
7
+ module Bake
8
+ module Toolchain
9
+
10
+ MSVCChain = Provider.add("MSVC")
11
+
12
+ MSVCChain[:COMPILER][:CPP].update({
13
+ :COMMAND => "cl",
14
+ :DEFINE_FLAG => "-D",
15
+ :OBJECT_FILE_FLAG => "-Fo",
16
+ :OBJ_FLAG_SPACE => false,
17
+ :COMPILE_FLAGS => "-c -EHsc $(MSVC_FORCE_SYNC_PDB_WRITES)",
18
+ :DEP_FLAGS_FILENAME => false,
19
+ :DEP_FLAGS => "-showIncludes",
20
+ :DEP_FLAGS_SPACE => true,
21
+ :PREPRO_FLAGS => "-P",
22
+ :PREPRO_FILE_FLAG => "-Fi"
23
+ })
24
+
25
+ MSVCChain[:COMPILER][:C] = Utils.deep_copy(MSVCChain[:COMPILER][:CPP])
26
+ MSVCChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
27
+
28
+ MSVCChain[:COMPILER][:ASM] = Utils.deep_copy(MSVCChain[:COMPILER][:C])
29
+ MSVCChain[:COMPILER][:ASM][:COMMAND] = "ml"
30
+ MSVCChain[:COMPILER][:ASM][:COMPILE_FLAGS] = "-c $(MSVC_FORCE_SYNC_PDB_WRITES)"
31
+ MSVCChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
32
+
33
+ MSVCChain[:ARCHIVER][:COMMAND] = "lib"
34
+ MSVCChain[:ARCHIVER][:ARCHIVE_FLAGS] = "-out:"
35
+ MSVCChain[:ARCHIVER][:ARCHIVE_FLAGS_SPACE] = false
36
+
37
+ MSVCChain[:LINKER][:COMMAND] = "link"
38
+ MSVCChain[:LINKER][:USER_LIB_FLAG] = ""
39
+ MSVCChain[:LINKER][:EXE_FLAG] = "-out:"
40
+ MSVCChain[:LINKER][:EXE_FLAG_SPACE] = false
41
+ MSVCChain[:LINKER][:LIB_FLAG] = ""
42
+ MSVCChain[:LINKER][:LIB_PATH_FLAG] = "-libpath:"
43
+ MSVCChain[:LINKER][:MAP_FILE_FLAG] = "-map:"
44
+ MSVCChain[:LINKER][:MAP_FILE_PIPE] = false
45
+ MSVCChain[:LINKER][:SCRIPT] = "Linkerscript option not supported for MSVC"
46
+
47
+
48
+ msvcCompilerErrorParser = MSVCCompilerErrorParser.new
49
+ MSVCChain[:COMPILER][:C][:ERROR_PARSER] = msvcCompilerErrorParser
50
+ MSVCChain[:COMPILER][:CPP][:ERROR_PARSER] = msvcCompilerErrorParser
51
+ MSVCChain[:COMPILER][:ASM][:ERROR_PARSER] = msvcCompilerErrorParser
52
+ MSVCChain[:ARCHIVER][:ERROR_PARSER] = msvcCompilerErrorParser
53
+ MSVCChain[:LINKER][:ERROR_PARSER] = MSVCLinkerErrorParser.new
54
+
55
+ end
56
+ end
57
+
@@ -19,7 +19,8 @@ module Bake
19
19
  :OBJECT_FILE_FLAG => "",
20
20
  :OBJECT_FILE_ENDING => ".o",
21
21
  :OBJ_FLAG_SPACE => false,
22
- :INCLUDE_PATH_FLAG => "",
22
+ :INCLUDE_PATH_FLAG => "-I",
23
+ :SYSTEM_INCLUDE_PATH_FLAG => "-I",
23
24
  :COMPILE_FLAGS => "",
24
25
  :DEFINES => [],
25
26
  :FLAGS => "",
@@ -37,7 +38,8 @@ module Bake
37
38
  :OBJECT_FILE_FLAG => "",
38
39
  :OBJECT_FILE_ENDING => ".o",
39
40
  :OBJ_FLAG_SPACE => false,
40
- :INCLUDE_PATH_FLAG => "",
41
+ :INCLUDE_PATH_FLAG => "-I",
42
+ :SYSTEM_INCLUDE_PATH_FLAG => "-I",
41
43
  :COMPILE_FLAGS => "",
42
44
  :DEFINES => [],
43
45
  :FLAGS => "",
@@ -55,7 +57,8 @@ module Bake
55
57
  :OBJECT_FILE_FLAG => "",
56
58
  :OBJECT_FILE_ENDING => ".o",
57
59
  :OBJ_FLAG_SPACE => false,
58
- :INCLUDE_PATH_FLAG => "",
60
+ :INCLUDE_PATH_FLAG => "-I",
61
+ :SYSTEM_INCLUDE_PATH_FLAG => "-I",
59
62
  :COMPILE_FLAGS => "",
60
63
  :DEFINES => [],
61
64
  :FLAGS => "",
@@ -1,49 +1,50 @@
1
- require 'common/utils'
2
- require 'bake/toolchain/provider'
3
- require 'bake/toolchain/errorparser/error_parser'
4
- require 'bake/toolchain/errorparser/ti_compiler_error_parser'
5
- require 'bake/toolchain/errorparser/ti_linker_error_parser'
6
-
7
- module Bake
8
- module Toolchain
9
-
10
- TiChain = Provider.add("TI")
11
-
12
- TiChain[:COMPILER][:CPP].update({
13
- :COMMAND => "ti_cl",
14
- :FLAGS => "",
15
- :DEFINE_FLAG => "--define=",
16
- :OBJECT_FILE_FLAG => "--output_file=",
17
- :INCLUDE_PATH_FLAG => "--include_path=",
18
- :COMPILE_FLAGS => "-c ",
19
- :DEP_FLAGS => "--preproc_dependency=",
20
- :DEP_FLAGS_SPACE => false
21
- })
22
-
23
- TiChain[:COMPILER][:C] = Utils.deep_copy(TiChain[:COMPILER][:CPP])
24
- TiChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
25
-
26
- TiChain[:COMPILER][:ASM] = Utils.deep_copy(TiChain[:COMPILER][:C])
27
- TiChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
28
-
29
- TiChain[:COMPILER][:DEP_FILE_SINGLE_LINE] = true
30
-
31
- TiChain[:ARCHIVER][:COMMAND] = "ti_ar"
32
- TiChain[:ARCHIVER][:ARCHIVE_FLAGS] = "r"
33
-
34
- TiChain[:LINKER][:COMMAND] = "ti_cl"
35
- TiChain[:LINKER][:FLAGS] = ""
36
- TiChain[:LINKER][:MAP_FILE_FLAG] = '-m'
37
- TiChain[:LINKER][:EXE_FLAG] = "-o"
38
- TiChain[:LINKER][:LIB_FLAG] = "-l"
39
- TiChain[:LINKER][:LIB_PATH_FLAG] = "-i"
40
-
41
- tiCompilerErrorParser = TICompilerErrorParser.new
42
- TiChain[:COMPILER][:C][:ERROR_PARSER] = tiCompilerErrorParser
43
- TiChain[:COMPILER][:CPP][:ERROR_PARSER] = tiCompilerErrorParser
44
- TiChain[:COMPILER][:ASM][:ERROR_PARSER] = tiCompilerErrorParser
45
- TiChain[:ARCHIVER][:ERROR_PARSER] = tiCompilerErrorParser
46
- TiChain[:LINKER][:ERROR_PARSER] = TILinkerErrorParser.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/ti_compiler_error_parser'
5
+ require 'bake/toolchain/errorparser/ti_linker_error_parser'
6
+
7
+ module Bake
8
+ module Toolchain
9
+
10
+ TiChain = Provider.add("TI")
11
+
12
+ TiChain[:COMPILER][:CPP].update({
13
+ :COMMAND => "ti_cl",
14
+ :FLAGS => "",
15
+ :DEFINE_FLAG => "--define=",
16
+ :OBJECT_FILE_FLAG => "--output_file=",
17
+ :INCLUDE_PATH_FLAG => "--include_path=",
18
+ :SYSTEM_INCLUDE_PATH_FLAG => "--include_path=",
19
+ :COMPILE_FLAGS => "-c ",
20
+ :DEP_FLAGS => "--preproc_dependency=",
21
+ :DEP_FLAGS_SPACE => false
22
+ })
23
+
24
+ TiChain[:COMPILER][:C] = Utils.deep_copy(TiChain[:COMPILER][:CPP])
25
+ TiChain[:COMPILER][:C][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:C][:SOURCE_FILE_ENDINGS]
26
+
27
+ TiChain[:COMPILER][:ASM] = Utils.deep_copy(TiChain[:COMPILER][:C])
28
+ TiChain[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS] = Provider.default[:COMPILER][:ASM][:SOURCE_FILE_ENDINGS]
29
+
30
+ TiChain[:COMPILER][:DEP_FILE_SINGLE_LINE] = true
31
+
32
+ TiChain[:ARCHIVER][:COMMAND] = "ti_ar"
33
+ TiChain[:ARCHIVER][:ARCHIVE_FLAGS] = "r"
34
+
35
+ TiChain[:LINKER][:COMMAND] = "ti_cl"
36
+ TiChain[:LINKER][:FLAGS] = ""
37
+ TiChain[:LINKER][:MAP_FILE_FLAG] = '-m'
38
+ TiChain[:LINKER][:EXE_FLAG] = "-o"
39
+ TiChain[:LINKER][:LIB_FLAG] = "-l"
40
+ TiChain[:LINKER][:LIB_PATH_FLAG] = "-i"
41
+
42
+ tiCompilerErrorParser = TICompilerErrorParser.new
43
+ TiChain[:COMPILER][:C][:ERROR_PARSER] = tiCompilerErrorParser
44
+ TiChain[:COMPILER][:CPP][:ERROR_PARSER] = tiCompilerErrorParser
45
+ TiChain[:COMPILER][:ASM][:ERROR_PARSER] = tiCompilerErrorParser
46
+ TiChain[:ARCHIVER][:ERROR_PARSER] = tiCompilerErrorParser
47
+ TiChain[:LINKER][:ERROR_PARSER] = TILinkerErrorParser.new
48
+
49
+ end
50
+ end