-
Notifications
You must be signed in to change notification settings - Fork 8
/
Wuild-full-options.ini
94 lines (81 loc) · 3.86 KB
/
Wuild-full-options.ini
1
2
3
4
5
6
7
8
9
10
11
12
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
87
88
89
90
91
92
93
94
; global log level override. 4=WARNING, 5=NOTICE, 6=INFO, 7=DEBUG. default is NOTICE.
; it will be used for any module run on machine. You can also do same with other options
logLevel=6
[tools]
; toolIds is comma-separated list of ids. Id can not have space in it.
toolIds=gcc_cpp,gcc_c,clang39_c,clang39_cpp
; after declaring list of ids, you need to provide at least one path for it, using
; <id>=<path1>,<path2>,...
; syntax
gcc_c=/usr/bin/gcc,/usr/local/bin/gcc
gcc_cpp=/usr/bin/g++
; in any point in ini file, you can declare variable to disable repeating.
; you can substitute its value using $name
; also environment variables all must be available as variables too.
LOCAL_BIN:=/usr/local/bin
clang10_c=$LOCAL_BIN/clang-10
clang10_cpp=$LOCAL_BIN/clang++-10
; for each tool id, you can also provide some options aside the path, they set using syntax:
; <id>_<option>=<value>
; supported options:
; type=gcc|msvc - type of argument parsing. if you use clang-cl, choose msvc. default is gcc, but if toolid starts with "ms" string, it set to "msvc".
; appendRemote=<flags> - command line options, added when executed on remote host. Useful for crosscompilation.
; removeRemote=<flags> - this flags will be removed when executed on remote. For example, dumping performance to json etc.
; version=<string> - override tool version to bypass version check.
clang10_c_appendRemote=--target=x86_64-unknown-linux-gnu
clang10_cpp_appendRemote=--target=x86_64-unknown-linux-gnu
clang10_c_type=gcc
clang10_cpp_version=10.0.0
[toolClient]
coordinatorHost=localhost
coordinatorPort=7767
; minimal tool invocation requred to use remote server. In practice, 1-5 requests are faster to execute locally even on slow machine.
minimalRemoteTasks=10
; timeout of request before sending to any tool server. No big reason to touch it at all, it should be fine with 1 second and below. 10sec is default.
queueTimeoutMS=10000
; full network timeout. If you recieving "Timeout expired error", you could raise it. You should touch it if you have really heavy and slow TU (with gazillion of templates).
requestTimeoutMS=240000
; how many times it will repeat after failure. 2 means 3 attempts in total. Can be usefult if you hotswitch toolservers. default is 2.
invocationAttempts=2
; limit average load on CPU; if you machine has poor scheduler and it freezes during the build, you can limit it below 100% target, 0.8 is 80%
maxLoadAverage=0.8
[coordinator]
listenPort=7767
[toolServer]
; how it will be displayed in the coordinator
serverName=gcc_worker
; how many jobs will be executed concurrently. Should be set at least equal to hardware cores; more likely number around logical cores (HT/SMT) is optimal.
threadCount=4
listenHost=localhost
listenPort=7765
coordinatorHost=localhost
coordinatorPort=7767
; custom compression options
; ZStd is default with level 3.
; you can switch to LZ4, Gzip or None.
; level is used only for ZStd and Gzip, low compression is 1, high compression is 9 for both.
compressionType=ZStd
compressionLevel=3
; By default, server use same setting as client for compression. You can change this by settings this option to true, so it utilizes own ini.
useClientCompression=false
; on Linux, we could use syslog instead of default stderr logging. On other systems option has no effect.
logToSyslog=true
; provide dumb whitelist for hosts. WARNING! not a secure measure! You should not rely on this! That is entirely for bare minimum check for misconfiguration.
hostsWhiteList=192.168.0.1,192.168.0.2
[proxy]
listenPort=7779
toolId=gcc_cpp
logLevel=5
; default is 4 minutes. But you could raise it.
proxyClientTimeoutMS=240000
;log options can be overrided in any group: toolClient, coordinator, toolServer or proxy.
; use file logging
logToFile=true
logDir=/var/log/Wuild/
; log format options:
outputTimestamp=true
outputTimeoffsets=true
outputLoglevel=true
; log rotation options:
maxMessagesInFile=100000
maxFilesInDir=10