Class: Bake::Usage

Inherits:
Object
  • Object
show all
Defined in:
lib/bake/options/usage.rb

Class Method Summary collapse

Class Method Details

.showObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# File 'lib/bake/options/usage.rb', line 13

def self.show
  Bake::Version.printBakeVersion
  puts "\nUsage: bake [options]"
  puts " [-b] <name>              Config name of main project"
  puts " -m <dir>                 Directory of main project (default is current directory)."
  puts " -p <dir>                 Project to build/clean (default is main project)"
  puts " -f <name>                Build/Clean this file only."
  puts " -c                       Clean the file/project."
  puts " -a <scheme>              Use ansi color sequences (console must support it). Possible values are 'white', 'black' and 'none' (default)."
  puts " -v<level>                Verbose level from 0 to 3, whereas -v0 is less, -v1 is normal (default) and -v2 and -v3 are more verbose."
  puts " -r                       Stop on first error."
  puts " -w <root>[,<depth>]      Add a workspace root (can be used multiple times). Additionally the search depth can be specified (>=0)."
  puts "                          If no root is specified, the parent directory of the main project is added automatically."
  puts " --list                   Lists all configs with a DefaultToolchain."
  puts " --rebuild                Clean before build."
  puts " --clobber                Clean the file/project (same as option -c) AND the bake cache files."
  puts " --prepro                 Stop after preprocessor."
  puts " --link-only              Only link executables - doesn't update objects and archives or start PreSteps and PostSteps."
  puts "                          Forces executables to be relinked."
  puts " --compile-only           Only the compile steps are executed, equivalent to -f '.'"
  puts " --no-case-check          Disables case-sensitivity-check of included header files (only relative paths on Windows are checked)."
  puts " --generate-doc           Builds docu instead of compiling sources."
  puts " --ignore-cache           Rereads the original meta files - usefull if workspace structure has been changed."
  puts " -j <num>                 Set NUMBER of parallel compiled files (default is number of logical processors or 8 for Ruby <= 2.1)."
  puts " -O                       The output will be synchronized per configuration. Note, this delays output."
  puts " -D <define>              Adds this define to the compiler commands"
  puts " --socket <num>           Set SOCKET for sending errors, receiving commands, etc. - used by e.g. Eclipse."
  puts " --toolchain-info <name>  Prints default values of a toolchain."
  puts " --toolchain-names        Prints available toolchains."
  puts " --dot [<filename>]       Creates a .dot file of the config dependencies, compilation does not take place."
  puts "                          If filename is omitted, a file <main config name>.dot in main project dir is created."
  puts " --dotc [<filename>]      Same as --dot, but with compilation."
  puts " --dot-project-level      Dependencies for dot on project level, not on config level."
  puts " --do <name>[=<arg>]      Includes elements with this filter name (can be used multiple times)."
  puts "                          Optional arguments which can be accessed in Project.meta via $(FilterArguments, <name>)."
  puts "                          'PRE', 'POST', 'STARTUP', 'EXIT' or 'CLEAN' includes all according steps."
  puts " --omit <name>            Excludes elements with this filter name (can be used multiple times)."
  puts "                          'PRE', 'POST', 'STARTUP', 'EXIT' or 'CLEAN' excludes all according steps."
  puts " --abs-paths              Relative filename paths are converted to absolute paths for compiler commands and output."
  puts " --abs-paths-in           Relative filename paths are converted to absolute paths for compiler commands."
  puts "                          Depending on the compiler this might have also effects on the raw output of the compiler."
  puts " --abs-paths-out          Relative filename paths are converted to absolute paths for compiler output."
  puts " --Wparse                 The error parser result is also taken into account, not only the return value of compiler, archiver and linker."
  puts " --no-autodir             Disable auto completion of paths like in IncludeDir"
  puts " --set <key>=<value>      Sets a variable. Overwrites variables defined in Project.metas (can be used multiple times)."
  puts " --adapt <name>           Specifies an adapt project to manipulate the configs (can be used multiple times, or --adapt <name1,name2,...>)"
  puts " --incs-and-defs=json     Prints includes and defines of all projects in json format"
  puts " --incs-and-defs=bake     Used by IDEs plugins"
  puts " --conversion-info        Prints infos for an external tool which converts bake configs for other build systems"
  puts " --roots                  Prints all workspace roots"
  puts " --file-list              Writes all sources and headers used by a SINGLE config into '<config output folder>/file-list.txt'."
  puts "                          Writes all sources and headers used by ALL configs into '<main config output folder/global-file-list.txt'."
  puts " --prebuild               Does not build configs which are marked as 'prebuild', this feature is used for distributions."
  puts " --compilation-db [<fn>]  Writes compilation information into filename fn in json format, default for fn is compile_commands.json"
  puts " --create exe|lib|custom  Creates a project with exe, lib or custom template"
  puts " --nb                     Suppresses the lines \"**** Building x of y: name (config) ****"
  puts " --crc32 <string>         Calulates the CRC32 of string (0x4C11DB7, init 0, final xor 0, input and result not reflected), used for Uid variable calculation"
  puts " --diab-case-check        When compiling with DCC, this switches to the case check on Windows machines. No actual compilation is done."
  puts " --file-cmd               Writes arguments into a file and hands it over the compiler/archiver/linker. Works only for supported compilers."
  puts " --link-beta              Improved linking, order of libs changed. Experimental."
  puts " --build_                 DEPRECATED: build directories will be build_<name> instead of build/<name>"
  puts " --version                Print version."
  puts " --time                   Print elapsed time at the end."
  puts " --doc                    Open documentation in browser"
  puts " --dry                    No changes to the file system, no external processes like the compiler are called."
  puts "                          Exceptions: some special command line options like --create or --dot and 'cmd's of 'Set's."
  puts " --install-doc            If installed, --doc opens the offline docu, otherwise it's online. You may need super user rights to enhance the bake-toolkit installation."
  puts " -Z <dev feature>         Used internally for development purposes. Can be changed without prior notice."
  puts " -h, --help               Print this help."
  puts " --license                Print the license."
  puts " --debug                  Print out backtraces in some cases - used only for debugging bake."
  puts " --debug-threads          Print some debug information about started and stopped threads."
  ExitHelper.exit(0)
end

.versionObject



7
8
9
10
# File 'lib/bake/options/usage.rb', line 7

def self.version
  Bake::Version.printBakeVersion
  ExitHelper.exit(0)
end