src.conf.5 41.4 KB
Newer Older
1
.\" DO NOT EDIT-- this file is @generated by tools/build/options/makeman.
2
.\" $FreeBSD$
3
.Dd December 2, 2021
4
5
6
7
.Dt SRC.CONF 5
.Os
.Sh NAME
.Nm src.conf
8
.Nd "source build options"
9
10
11
.Sh DESCRIPTION
The
.Nm
12
13
file contains variables that control what components will be generated during
the build process of the
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
.Fx
source tree; see
.Xr build 7 .
.Pp
The
.Nm
file uses the standard makefile syntax.
However,
.Nm
should not specify any dependencies to
.Xr make 1 .
Instead,
.Nm
is to set
.Xr make 1
variables that control the aspects of how the system builds.
.Pp
The default location of
.Nm
is
.Pa /etc/src.conf ,
though an alternative location can be specified in the
.Xr make 1
variable
.Va SRCCONF .
Overriding the location of
.Nm
41
may be necessary if the system-wide settings are not suitable
42
43
44
45
46
47
48
49
50
51
52
for a particular build.
For instance, setting
.Va SRCCONF
to
.Pa /dev/null
effectively resets all build controls to their defaults.
.Pp
The only purpose of
.Nm
is to control the compilation of the
.Fx
53
source code, which is usually located in
54
55
56
57
58
59
60
61
62
63
64
.Pa /usr/src .
As a rule, the system administrator creates
.Nm
when the values of certain control variables need to be changed
from their defaults.
.Pp
In addition, control variables can be specified
for a particular build via the
.Fl D
option of
.Xr make 1
Mike Makonnen's avatar
Mike Makonnen committed
65
or in its environment; see
66
67
.Xr environ 7 .
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
68
69
70
71
72
73
74
The environment of
.Xr make 1
for the build can be controlled via the
.Va SRC_ENV_CONF
variable, which defaults to
.Pa /etc/src-env.conf .
Some examples that may only be set in this file are
Simon J. Gerraty's avatar
Simon J. Gerraty committed
75
.Va WITH_DIRDEPS_BUILD ,
Bryan Drewery's avatar
Bryan Drewery committed
76
and
Bryan Drewery's avatar
Bryan Drewery committed
77
78
.Va WITH_META_MODE ,
and
Bryan Drewery's avatar
Bryan Drewery committed
79
.Va MAKEOBJDIRPREFIX
Bryan Drewery's avatar
Bryan Drewery committed
80
as they are environment-only variables.
Bryan Drewery's avatar
Bryan Drewery committed
81
.Pp
82
83
The values of variables are ignored regardless of their setting;
even if they would be set to
84
85
.Dq Li FALSE
or
86
.Dq Li NO .
Ed Maste's avatar
Ed Maste committed
87
88
The presence of an option causes
it to be honored by
89
.Xr make 1 .
90
.Pp
Ed Maste's avatar
Ed Maste committed
91
This list provides a name and short description for variables
92
93
that can be used for source builds.
.Bl -tag -width indent
Sam Leffler's avatar
regen    
Sam Leffler committed
94
.It Va WITHOUT_ACCT
Ed Maste's avatar
Ed Maste committed
95
Do not build process accounting tools such as
Ed Schouten's avatar
Ed Schouten committed
96
.Xr accton 8
Sam Leffler's avatar
regen    
Sam Leffler committed
97
and
Ed Schouten's avatar
Ed Schouten committed
98
.Xr sa 8 .
99
.It Va WITHOUT_ACPI
Ed Maste's avatar
Ed Maste committed
100
Do not build
101
102
103
.Xr acpiconf 8 ,
.Xr acpidump 8
and related programs.
Sam Leffler's avatar
regen    
Sam Leffler committed
104
.It Va WITHOUT_APM
Ed Maste's avatar
Ed Maste committed
105
Do not build
Sam Leffler's avatar
regen    
Sam Leffler committed
106
107
108
.Xr apm 8 ,
.Xr apmd 8
and related programs.
109
110
111
112
113
114
115
116
117
118
119
120
121
.It Va WITH_ASAN
Build the base system with Address Sanitizer (ASan) to detect
memory corruption bugs such as buffer overflows or use-after-free.
Requires that Clang be used as the base system compiler
and that the runtime support library is available.
When set, it enforces these options:
.Pp
.Bl -item -compact
.It
.Va WITH_LLVM_BINUTILS
.It
.Va WITH_LLVM_CXXFILT
.El
Ruslan Ermilov's avatar
Regen.    
Ruslan Ermilov committed
122
.It Va WITHOUT_ASSERT_DEBUG
Ed Maste's avatar
Ed Maste committed
123
Compile programs and libraries without the
Ruslan Ermilov's avatar
Regen.    
Ruslan Ermilov committed
124
125
.Xr assert 3
checks.
Sam Leffler's avatar
regen    
Sam Leffler committed
126
.It Va WITHOUT_AT
Ed Maste's avatar
Ed Maste committed
127
Do not build
Sam Leffler's avatar
regen    
Sam Leffler committed
128
129
.Xr at 1
and related utilities.
130
.It Va WITHOUT_ATM
Ed Maste's avatar
Ed Maste committed
131
Do not build
132
133
programs and libraries related to ATM networking.
.It Va WITHOUT_AUDIT
Ed Maste's avatar
Ed Maste committed
134
Do not build audit support into system programs.
135
.It Va WITHOUT_AUTHPF
Ed Maste's avatar
Ed Maste committed
136
Do not build
137
.Xr authpf 8 .
Enji Cooper's avatar
Enji Cooper committed
138
.It Va WITHOUT_AUTOFS
Ed Maste's avatar
Ed Maste committed
139
Do not build
140
.Xr autofs 5
Enji Cooper's avatar
Enji Cooper committed
141
related programs, libraries, and kernel modules.
Bryan Drewery's avatar
Bryan Drewery committed
142
143
144
.It Va WITHOUT_AUTO_OBJ
Disable automatic creation of objdirs.
This is enabled by default if the wanted OBJDIR is writable by the current user.
Bryan Drewery's avatar
Bryan Drewery committed
145
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
146
This must be set in the environment, make command line, or
Bryan Drewery's avatar
Bryan Drewery committed
147
148
149
.Pa /etc/src-env.conf ,
not
.Pa /etc/src.conf .
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
.It Va WITH_BEARSSL
Build the BearSSL library.
.Pp
BearSSL is a tiny SSL library suitable for embedded environments.
For details see
.Lk http://www.BearSSL.org/
.Pp
This library is currently only used to perform
signature verification and related operations
for Verified Exec and
.Xr loader 8 .
When set, these options are also in effect:
.Pp
.Bl -inset -compact
.It Va WITH_LOADER_EFI_SECUREBOOT
(unless
.Va WITHOUT_LOADER_EFI_SECUREBOOT
is set explicitly)
.It Va WITH_LOADER_VERIEXEC
(unless
.Va WITHOUT_LOADER_VERIEXEC
is set explicitly)
172
173
174
175
.It Va WITH_LOADER_VERIEXEC_VECTX
(unless
.Va WITHOUT_LOADER_VERIEXEC_VECTX
is set explicitly)
176
177
178
179
180
.It Va WITH_VERIEXEC
(unless
.Va WITHOUT_VERIEXEC
is set explicitly)
.El
Enji Cooper's avatar
Enji Cooper committed
181
.It Va WITHOUT_BHYVE
Ed Maste's avatar
Ed Maste committed
182
Do not build or install
Enji Cooper's avatar
Enji Cooper committed
183
184
185
186
.Xr bhyve 8 ,
associated utilities, and examples.
.Pp
This option only affects amd64/amd64.
187
.It Va WITH_BHYVE_SNAPSHOT
Ed Maste's avatar
Ed Maste committed
188
Include support for save and restore (snapshots) in
189
190
191
192
193
.Xr bhyve 8
and
.Xr bhyvectl 8 .
.Pp
This option only affects amd64/amd64.
Ed Maste's avatar
Ed Maste committed
194
195
196
197
198
.It Va WITH_BIND_NOW
Build all binaries with the
.Dv DF_BIND_NOW
flag set to indicate that the run-time loader should perform all relocation
processing at process startup rather than on demand.
Bryan Drewery's avatar
Bryan Drewery committed
199
.It Va WITHOUT_BLACKLIST
Enji Cooper's avatar
Enji Cooper committed
200
201
202
203
Set this if you do not want to build
.Xr blacklistd 8
and
.Xr blacklistctl 8 .
Bryan Drewery's avatar
Bryan Drewery committed
204
When set, these options are also in effect:
Bryan Drewery's avatar
Bryan Drewery committed
205
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
206
207
208
209
210
.Bl -inset -compact
.It Va WITHOUT_BLACKLIST_SUPPORT
(unless
.Va WITH_BLACKLIST_SUPPORT
is set explicitly)
Bryan Drewery's avatar
Bryan Drewery committed
211
212
.El
.It Va WITHOUT_BLACKLIST_SUPPORT
Ed Maste's avatar
Ed Maste committed
213
Build some programs without
Enji Cooper's avatar
Enji Cooper committed
214
215
.Xr libblacklist 3
support, like
Bryan Drewery's avatar
Bryan Drewery committed
216
217
218
219
.Xr fingerd 8 ,
.Xr ftpd 8 ,
and
.Xr sshd 8 .
220
.It Va WITHOUT_BLUETOOTH
Ed Maste's avatar
Ed Maste committed
221
Do not build Bluetooth related kernel modules, programs and libraries.
222
.It Va WITHOUT_BOOT
Ed Maste's avatar
Ed Maste committed
223
Do not build the boot blocks and loader.
Enji Cooper's avatar
Enji Cooper committed
224
.It Va WITHOUT_BOOTPARAMD
Ed Maste's avatar
Ed Maste committed
225
Do not build or install
Enji Cooper's avatar
Enji Cooper committed
226
227
.Xr bootparamd 8 .
.It Va WITHOUT_BOOTPD
Ed Maste's avatar
Ed Maste committed
228
Do not build or install
Enji Cooper's avatar
Enji Cooper committed
229
.Xr bootpd 8 .
Enji Cooper's avatar
Enji Cooper committed
230
.It Va WITHOUT_BSDINSTALL
Ed Maste's avatar
Ed Maste committed
231
Do not build
Enji Cooper's avatar
Enji Cooper committed
232
233
234
.Xr bsdinstall 8 ,
.Xr sade 8 ,
and related programs.
235
.It Va WITHOUT_BSD_CPIO
Ed Maste's avatar
Ed Maste committed
236
Do not build the BSD licensed version of cpio based on
237
238
.Xr libarchive 3 .
.It Va WITHOUT_BSNMP
Ed Maste's avatar
Ed Maste committed
239
Do not build or install
240
241
242
.Xr bsnmpd 1
and related libraries and data files.
.It Va WITHOUT_BZIP2
Ed Maste's avatar
Ed Maste committed
243
Do not build contributed bzip2 software as a part of the base system.
244
245
246
.Bf -symbolic
The option has no effect yet.
.Ef
Bryan Drewery's avatar
Bryan Drewery committed
247
When set, these options are also in effect:
248
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
249
250
251
252
253
.Bl -inset -compact
.It Va WITHOUT_BZIP2_SUPPORT
(unless
.Va WITH_BZIP2_SUPPORT
is set explicitly)
254
255
.El
.It Va WITHOUT_BZIP2_SUPPORT
Ed Maste's avatar
Ed Maste committed
256
Build some programs without optional bzip2 support.
257
.It Va WITHOUT_CALENDAR
Ed Maste's avatar
Ed Maste committed
258
Do not build
259
.Xr calendar 1 .
260
.It Va WITHOUT_CAPSICUM
Ed Maste's avatar
Ed Maste committed
261
Do not build Capsicum support into system programs.
Ed Maste's avatar
Ed Maste committed
262
When set, it enforces these options:
Baptiste Daroussin's avatar
Baptiste Daroussin committed
263
264
265
266
267
.Pp
.Bl -item -compact
.It
.Va WITHOUT_CASPER
.El
268
.It Va WITHOUT_CAROOT
Ed Maste's avatar
Ed Maste committed
269
Do not add the trusted certificates from the Mozilla NSS bundle to
270
base.
271
.It Va WITHOUT_CASPER
Ed Maste's avatar
Ed Maste committed
272
Do not build Casper program and related libraries.
273
.It Va WITH_CCACHE_BUILD
Ed Maste's avatar
Ed Maste committed
274
Use
275
276
277
278
279
.Xr ccache 1
for the build.
No configuration is required except to install the
.Sy devel/ccache
package.
Ed Maste's avatar
Ed Maste committed
280
281
282
When using with
.Xr distcc 1 ,
set
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
.Sy CCACHE_PREFIX=/usr/local/bin/distcc .
The default cache directory of
.Pa $HOME/.ccache
will be used, which can be overridden by setting
.Sy CCACHE_DIR .
The
.Sy CCACHE_COMPILERCHECK
option defaults to
.Sy content
when using the in-tree bootstrap compiler,
and
.Sy mtime
when using an external compiler.
The
.Sy CCACHE_CPP2
option is used for Clang but not GCC.
.Pp
Sharing a cache between multiple work directories requires using a layout
similar to
.Pa /some/prefix/src
.Pa /some/prefix/obj
and an environment such as:
.Bd -literal -offset indent
CCACHE_BASEDIR='${SRCTOP:H}' MAKEOBJDIRPREFIX='${SRCTOP:H}/obj'
.Ed
.Pp
See
.Xr ccache 1
for more configuration options.
Enji Cooper's avatar
Enji Cooper committed
312
.It Va WITHOUT_CCD
Ed Maste's avatar
Ed Maste committed
313
Do not build
Enji Cooper's avatar
Enji Cooper committed
314
315
.Xr geom_ccd 4
and related utilities.
316
.It Va WITHOUT_CDDL
Ed Maste's avatar
Ed Maste committed
317
Do not build code licensed under Sun's CDDL.
Ed Maste's avatar
Ed Maste committed
318
When set, it enforces these options:
319
320
321
322
323
.Pp
.Bl -item -compact
.It
.Va WITHOUT_CTF
.It
Ed Maste's avatar
Ed Maste committed
324
325
.Va WITHOUT_LOADER_ZFS
.It
326
327
328
.Va WITHOUT_ZFS
.El
.It Va WITHOUT_CLANG
Ed Maste's avatar
Ed Maste committed
329
Do not build the Clang C/C++ compiler during the regular phase of the build.
Ed Maste's avatar
Ed Maste committed
330
When set, it enforces these options:
331
332
333
334
335
.Pp
.Bl -item -compact
.It
.Va WITHOUT_CLANG_EXTRAS
.It
336
337
.Va WITHOUT_CLANG_FORMAT
.It
338
.Va WITHOUT_CLANG_FULL
339
340
.It
.Va WITHOUT_LLVM_COV
341
.El
Ed Maste's avatar
Ed Maste committed
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
.Pp
When set, these options are also in effect:
.Pp
.Bl -inset -compact
.It Va WITHOUT_LLVM_TARGET_AARCH64
(unless
.Va WITH_LLVM_TARGET_AARCH64
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_ALL
(unless
.Va WITH_LLVM_TARGET_ALL
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_ARM
(unless
.Va WITH_LLVM_TARGET_ARM
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_MIPS
(unless
.Va WITH_LLVM_TARGET_MIPS
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_POWERPC
(unless
.Va WITH_LLVM_TARGET_POWERPC
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_RISCV
(unless
.Va WITH_LLVM_TARGET_RISCV
is set explicitly)
.El
371
.It Va WITHOUT_CLANG_BOOTSTRAP
Ed Maste's avatar
Ed Maste committed
372
Do not build the Clang C/C++ compiler during the bootstrap phase of
Ed Maste's avatar
Ed Maste committed
373
374
375
the build.
To be able to build the system, either gcc or clang bootstrap must be
enabled unless an alternate compiler is provided via XCC.
376
.It Va WITH_CLANG_EXTRAS
Ed Maste's avatar
Ed Maste committed
377
Build additional clang and llvm tools, such as bugpoint and
Ed Maste's avatar
Ed Maste committed
378
clang-format.
379
.It Va WITH_CLANG_FORMAT
Ed Maste's avatar
Ed Maste committed
380
Build clang-format.
381
.It Va WITHOUT_CLANG_FULL
Ed Maste's avatar
Ed Maste committed
382
Avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
383
384
the Clang C/C++ compiler.
.It Va WITHOUT_CLANG_IS_CC
385
Do not install links to the Clang C/C++ compiler as
386
387
388
389
.Pa /usr/bin/cc ,
.Pa /usr/bin/c++
and
.Pa /usr/bin/cpp .
390
391
.It Va WITHOUT_CLEAN
Do not clean before building world and/or kernel.
392
.It Va WITHOUT_CPP
Ed Maste's avatar
Ed Maste committed
393
Do not build
394
395
.Xr cpp 1 .
.It Va WITHOUT_CROSS_COMPILER
Ed Maste's avatar
Ed Maste committed
396
Do not build any cross compiler in the cross-tools stage of buildworld.
Ed Maste's avatar
Ed Maste committed
397
When compiling a different version of
Glen Barber's avatar
Glen Barber committed
398
.Fx
Ed Maste's avatar
Ed Maste committed
399
than what is installed on the system, provide an alternate
400
compiler with XCC to ensure success.
Ed Maste's avatar
Ed Maste committed
401
When compiling with an identical version of
Glen Barber's avatar
Glen Barber committed
402
.Fx
403
404
to the host, this option may be safely used.
This option may also be safe when the host version of
Glen Barber's avatar
Glen Barber committed
405
.Fx
406
407
is close to the sources being built, but all bets are off if there have
been any changes to the toolchain between the versions.
Ed Maste's avatar
Ed Maste committed
408
When set, it enforces these options:
409
410
411
412
413
.Pp
.Bl -item -compact
.It
.Va WITHOUT_CLANG_BOOTSTRAP
.It
Bryan Drewery's avatar
Bryan Drewery committed
414
415
.Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
.It
416
.Va WITHOUT_LLD_BOOTSTRAP
417
418
.El
.It Va WITHOUT_CRYPT
Ed Maste's avatar
Ed Maste committed
419
Do not build any crypto code.
Ed Maste's avatar
Ed Maste committed
420
When set, it enforces these options:
421
422
423
.Pp
.Bl -item -compact
.It
424
425
.Va WITHOUT_DMAGENT
.It
426
427
.Va WITHOUT_KERBEROS
.It
428
429
.Va WITHOUT_KERBEROS_SUPPORT
.It
430
431
432
433
.Va WITHOUT_LDNS
.It
.Va WITHOUT_LDNS_UTILS
.It
434
435
436
.Va WITHOUT_OPENSSH
.It
.Va WITHOUT_OPENSSL
437
.It
Ed Maste's avatar
Ed Maste committed
438
439
.Va WITHOUT_OPENSSL_KTLS
.It
440
441
.Va WITHOUT_PKGBOOTSTRAP
.It
442
.Va WITHOUT_UNBOUND
443
444
.It
.Va WITHOUT_ZFS
445
446
.El
.Pp
Ed Maste's avatar
Ed Maste committed
447
When set, these options are also in effect:
448
449
450
451
452
453
454
455
.Pp
.Bl -inset -compact
.It Va WITHOUT_GSSAPI
(unless
.Va WITH_GSSAPI
is set explicitly)
.El
.It Va WITH_CTF
Ed Maste's avatar
Ed Maste committed
456
Compile with CTF (Compact C Type Format) data.
457
458
CTF data encapsulates a reduced form of debugging information
similar to DWARF and the venerable stabs and is required for DTrace.
Bryan Drewery's avatar
Bryan Drewery committed
459
.It Va WITHOUT_CUSE
Ed Maste's avatar
Ed Maste committed
460
Do not build CUSE-related programs and libraries.
461
.It Va WITHOUT_CXGBETOOL
Ed Maste's avatar
Ed Maste committed
462
Do not build
463
464
465
.Xr cxgbetool 8
.Pp
This is a default setting on
Warner Losh's avatar
Warner Losh committed
466
arm/armv6, arm/armv7, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
467
.It Va WITH_CXGBETOOL
Ed Maste's avatar
Ed Maste committed
468
Build
469
470
471
.Xr cxgbetool 8
.Pp
This is a default setting on
472
amd64/amd64, arm64/aarch64, i386/i386 and powerpc/powerpc64.
473
.It Va WITHOUT_CXX
474
475
Do not build C++ headers and runtime libraries.
It also prevents building binaries and libraries written in C++, including
476
.Xr devd 8 .
Ed Maste's avatar
Ed Maste committed
477
When set, it enforces these options:
478
479
480
481
482
483
484
.Pp
.Bl -item -compact
.It
.Va WITHOUT_CLANG
.It
.Va WITHOUT_CLANG_EXTRAS
.It
485
486
.Va WITHOUT_CLANG_FORMAT
.It
487
488
.Va WITHOUT_CLANG_FULL
.It
Ed Maste's avatar
Ed Maste committed
489
490
.Va WITHOUT_DTRACE_TESTS
.It
491
492
.Va WITHOUT_GOOGLETEST
.It
493
494
.Va WITHOUT_LLVM_COV
.It
Ed Maste's avatar
Ed Maste committed
495
496
497
498
499
500
501
502
.Va WITHOUT_OFED
.It
.Va WITHOUT_OFED_EXTRA
.It
.Va WITHOUT_OPENMP
.It
.Va WITHOUT_PMC
.It
Ed Maste's avatar
Ed Maste committed
503
.Va WITHOUT_TESTS
504
.El
505
.It Va WITHOUT_DEBUG_FILES
Ed Maste's avatar
Ed Maste committed
506
Avoid building or installing standalone debug files for each
507
executable binary and shared library.
Ed Maste's avatar
Ed Maste committed
508
509
.It Va WITH_DETECT_TZ_CHANGES
Make the time handling code detect changes to the timezone files.
Ed Maste's avatar
Ed Maste committed
510
.It Va WITHOUT_DIALOG
Ed Maste's avatar
Ed Maste committed
511
Do not build
Ed Maste's avatar
Ed Maste committed
512
513
514
515
516
517
.Xr dialog 1 ,
.Xr dialog 3 ,
.Xr dpv 1 ,
and
.Xr dpv 3 .
When set, it enforces these options:
Ed Maste's avatar
Ed Maste committed
518
519
520
521
522
.Pp
.Bl -item -compact
.It
.Va WITHOUT_BSDINSTALL
.El
523
.It Va WITHOUT_DICT
Ed Maste's avatar
Ed Maste committed
524
Do not build the Webster dictionary files.
Simon J. Gerraty's avatar
Simon J. Gerraty committed
525
.It Va WITH_DIRDEPS_BUILD
Bryan Drewery's avatar
Bryan Drewery committed
526
This is an experimental build system.
Simon J. Gerraty's avatar
Simon J. Gerraty committed
527
528
For details see
http://www.crufty.net/sjg/docs/freebsd-meta-mode.htm.
Bryan Drewery's avatar
Bryan Drewery committed
529
530
Build commands can be seen from the top-level with:
.Dl make show-valid-targets
Simon J. Gerraty's avatar
Simon J. Gerraty committed
531
532
533
534
535
536
537
The build is driven by dirdeps.mk using
.Va DIRDEPS
stored in
Makefile.depend files found in each directory.
.Pp
The build can be started from anywhere, and behaves the same.
The initial instance of
Ed Maste's avatar
Ed Maste committed
538
.Xr make 1
Simon J. Gerraty's avatar
Simon J. Gerraty committed
539
540
recursively reads
.Va DIRDEPS
Ed Maste's avatar
Ed Maste committed
541
542
from
.Pa Makefile.depend ,
Simon J. Gerraty's avatar
Simon J. Gerraty committed
543
544
545
computing a graph of tree dependencies from the current origin.
Setting
.Va NO_DIRDEPS
Ed Maste's avatar
Ed Maste committed
546
skips checking dirdep dependencies and will only build in the current
Bryan Drewery's avatar
Bryan Drewery committed
547
548
and child directories.
.Va NO_DIRDEPS_BELOW
Ed Maste's avatar
Ed Maste committed
549
skips building any dirdeps and only build the current directory.
Simon J. Gerraty's avatar
Simon J. Gerraty committed
550
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
551
552
553
This also utilizes the
.Va WITH_META_MODE
logic for incremental builds.
Simon J. Gerraty's avatar
Simon J. Gerraty committed
554
.Pp
Ed Maste's avatar
Ed Maste committed
555
The build hides commands executed unless
Simon J. Gerraty's avatar
Simon J. Gerraty committed
556
557
558
.Va NO_SILENT
is defined.
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
559
560
Note that there is currently no mass install feature for this.
.Pp
Ed Maste's avatar
Ed Maste committed
561
When set, it enforces these options:
Simon J. Gerraty's avatar
Simon J. Gerraty committed
562
563
564
565
566
567
.Pp
.Bl -item -compact
.It
.Va WITH_INSTALL_AS_USER
.El
.Pp
Ed Maste's avatar
Ed Maste committed
568
When set, these options are also in effect:
Simon J. Gerraty's avatar
Simon J. Gerraty committed
569
570
.Pp
.Bl -inset -compact
571
572
573
574
.It Va WITH_META_MODE
(unless
.Va WITHOUT_META_MODE
is set explicitly)
Simon J. Gerraty's avatar
Simon J. Gerraty committed
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
.It Va WITH_STAGING
(unless
.Va WITHOUT_STAGING
is set explicitly)
.It Va WITH_STAGING_MAN
(unless
.Va WITHOUT_STAGING_MAN
is set explicitly)
.It Va WITH_STAGING_PROG
(unless
.Va WITHOUT_STAGING_PROG
is set explicitly)
.It Va WITH_SYSROOT
(unless
.Va WITHOUT_SYSROOT
is set explicitly)
.El
.Pp
This must be set in the environment, make command line, or
.Pa /etc/src-env.conf ,
not
.Pa /etc/src.conf .
597
598
599
600
.It Va WITH_DIRDEPS_CACHE
Cache result of dirdeps.mk which can save significant time
for subsequent builds.
Depends on
Simon J. Gerraty's avatar
Simon J. Gerraty committed
601
.Va WITH_DIRDEPS_BUILD .
Bryan Drewery's avatar
Bryan Drewery committed
602
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
603
This must be set in the environment, make command line, or
Bryan Drewery's avatar
Bryan Drewery committed
604
605
606
.Pa /etc/src-env.conf ,
not
.Pa /etc/src.conf .
607
.It Va WITHOUT_DMAGENT
Ed Maste's avatar
Ed Maste committed
608
Do not build dma Mail Transport Agent.
609
.It Va WITHOUT_DOCCOMPRESS
Ed Maste's avatar
Ed Maste committed
610
Do not install compressed system documentation.
611
Only the uncompressed version will be installed.
Mark Johnston's avatar
Mark Johnston committed
612
.It Va WITH_DTRACE_TESTS
Ed Maste's avatar
Ed Maste committed
613
Build and install the DTrace test suite in
Mark Johnston's avatar
Mark Johnston committed
614
615
616
.Pa /usr/tests/cddl/usr.sbin/dtrace .
This test suite is considered experimental on architectures other than
amd64/amd64 and running it may cause system instability.
617
618
619
620
621
622
.It Va WITHOUT_DYNAMICROOT
Set this if you do not want to link
.Pa /bin
and
.Pa /sbin
dynamically.
Enji Cooper's avatar
Enji Cooper committed
623
.It Va WITHOUT_EE
Ed Maste's avatar
Ed Maste committed
624
Do not build and install
Enji Cooper's avatar
Enji Cooper committed
625
626
627
.Xr edit 1 ,
.Xr ee 1 ,
and related programs.
628
629
630
631
632
633
.It Va WITHOUT_EFI
Set not to build
.Xr efivar 3
and
.Xr efivar 8 .
.Pp
Ed Maste's avatar
Ed Maste committed
634
This is a default setting on
Warner Losh's avatar
Warner Losh committed
635
powerpc/powerpc and powerpc/powerpc64.
636
.It Va WITH_EFI
Ed Maste's avatar
Ed Maste committed
637
Build
638
639
640
641
.Xr efivar 3
and
.Xr efivar 8 .
.Pp
Ed Maste's avatar
Ed Maste committed
642
This is a default setting on
643
amd64/amd64, arm/armv6, arm/armv7, arm64/aarch64, i386/i386, riscv/riscv64 and riscv/riscv64sf.
Bryan Drewery's avatar
Bryan Drewery committed
644
.It Va WITHOUT_ELFTOOLCHAIN_BOOTSTRAP
Ed Maste's avatar
Ed Maste committed
645
Do not build ELF Tool Chain tools
Bryan Drewery's avatar
Bryan Drewery committed
646
647
648
649
650
(addr2line, nm, size, strings and strip)
as part of the bootstrap process.
.Bf -symbolic
An alternate bootstrap tool chain must be provided.
.Ef
651
.It Va WITHOUT_EXAMPLES
Ed Maste's avatar
Ed Maste committed
652
Avoid installing examples to
653
.Pa /usr/share/examples/ .
654
.It Va WITH_EXPERIMENTAL
Ed Maste's avatar
Ed Maste committed
655
Include experimental features in the build.
656
.It Va WITH_EXTRA_TCP_STACKS
Ed Maste's avatar
Ed Maste committed
657
Build extra TCP stack modules.
658
.It Va WITHOUT_FDT
Ed Maste's avatar
Ed Maste committed
659
Do not build Flattened Device Tree support as part of the base system.
660
This includes the device tree compiler (dtc) and libfdt support library.
Enji Cooper's avatar
Enji Cooper committed
661
.It Va WITHOUT_FILE
Ed Maste's avatar
Ed Maste committed
662
Do not build
Enji Cooper's avatar
Enji Cooper committed
663
664
665
.Xr file 1
and related programs.
.It Va WITHOUT_FINGER
Ed Maste's avatar
Ed Maste committed
666
Do not build or install
Enji Cooper's avatar
Enji Cooper committed
667
668
669
.Xr finger 1
and
.Xr fingerd 8 .
670
.It Va WITHOUT_FLOPPY
Ed Maste's avatar
Ed Maste committed
671
Do not build or install programs
672
for operating floppy disk driver.
Ed Maste's avatar
Ed Maste committed
673
.It Va WITHOUT_FORMAT_EXTENSIONS
Ed Maste's avatar
Ed Maste committed
674
Do not enable
Ed Maste's avatar
Ed Maste committed
675
676
677
.Fl fformat-extensions
when compiling the kernel.
Also disables all format checking.
678
.It Va WITHOUT_FORTH
Ed Maste's avatar
Ed Maste committed
679
Build bootloaders without Forth support.
680
.It Va WITHOUT_FP_LIBC
Ed Maste's avatar
Ed Maste committed
681
Build
682
683
684
.Nm libc
without floating-point support.
.It Va WITHOUT_FREEBSD_UPDATE
Ed Maste's avatar
Ed Maste committed
685
Do not build
686
.Xr freebsd-update 8 .
Enji Cooper's avatar
Enji Cooper committed
687
.It Va WITHOUT_FTP
Ed Maste's avatar
Ed Maste committed
688
Do not build or install
Enji Cooper's avatar
Enji Cooper committed
689
690
691
.Xr ftp 1
and
.Xr ftpd 8 .
692
.It Va WITHOUT_GAMES
Ed Maste's avatar
Ed Maste committed
693
Do not build games.
Stefan Eßer's avatar
Stefan Eßer committed
694
.It Va WITHOUT_GH_BC
Ed Maste's avatar
Ed Maste committed
695
Install the traditional FreeBSD
696
.Xr bc 1
Stefan Eßer's avatar
Stefan Eßer committed
697
and
698
.Xr dc 1
Ed Maste's avatar
Ed Maste committed
699
programs instead of the enhanced versions.
700
.It Va WITHOUT_GNU_DIFF
Ed Maste's avatar
Ed Maste committed
701
Do not build GNU
702
.Xr diff3 1 .
703
.It Va WITHOUT_GOOGLETEST
Ed Maste's avatar
Ed Maste committed
704
Neither build nor install
705
706
707
.Lb libgmock ,
.Lb libgtest ,
and dependent tests.
708
.It Va WITHOUT_GPIO
Ed Maste's avatar
Ed Maste committed
709
Do not build
710
711
712
.Xr gpioctl 8
as part of the base system.
.It Va WITHOUT_GSSAPI
Ed Maste's avatar
Ed Maste committed
713
Do not build libgssapi.
Enji Cooper's avatar
Enji Cooper committed
714
.It Va WITHOUT_HAST
Ed Maste's avatar
Ed Maste committed
715
Do not build
Enji Cooper's avatar
Enji Cooper committed
716
717
.Xr hastd 8
and related utilities.
718
.It Va WITH_HESIOD
Ed Maste's avatar
Ed Maste committed
719
Build Hesiod support.
720
.It Va WITHOUT_HTML
Ed Maste's avatar
Ed Maste committed
721
Do not build HTML docs.
Xin LI's avatar
Regen.    
Xin LI committed
722
.It Va WITHOUT_HYPERV
Ed Maste's avatar
Ed Maste committed
723
Do not build or install HyperV utilities.
Brooks Davis's avatar
Brooks Davis committed
724
725
.Pp
This is a default setting on
Warner Losh's avatar
Warner Losh committed
726
arm/armv6, arm/armv7, arm64/aarch64, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
Brooks Davis's avatar
Brooks Davis committed
727
.It Va WITH_HYPERV
Ed Maste's avatar
Ed Maste committed
728
Build or install HyperV utilities.
Brooks Davis's avatar
Brooks Davis committed
729
730
731
.Pp
This is a default setting on
amd64/amd64 and i386/i386.
732
.It Va WITHOUT_ICONV
Ed Maste's avatar
Ed Maste committed
733
Do not build iconv as part of libc.
Glen Barber's avatar
Glen Barber committed
734
.It Va WITHOUT_INCLUDES
Ed Maste's avatar
Ed Maste committed
735
Do not install header files.
Glen Barber's avatar
Glen Barber committed
736
737
738
739
740
This option used to be spelled
.Va NO_INCS .
.Bf -symbolic
The option does not work for build targets.
.Ef
741
.It Va WITHOUT_INET
Ed Maste's avatar
Ed Maste committed
742
Do not build programs and libraries related to IPv4 networking.
Ed Maste's avatar
Ed Maste committed
743
When set, it enforces these options:
744
745
746
747
748
749
.Pp
.Bl -item -compact
.It
.Va WITHOUT_INET_SUPPORT
.El
.It Va WITHOUT_INET6
Ed Maste's avatar
Ed Maste committed
750
Do not build
751
programs and libraries related to IPv6 networking.
Ed Maste's avatar
Ed Maste committed
752
When set, it enforces these options:
753
754
755
756
757
758
.Pp
.Bl -item -compact
.It
.Va WITHOUT_INET6_SUPPORT
.El
.It Va WITHOUT_INET6_SUPPORT
Ed Maste's avatar
Ed Maste committed
759
Build libraries, programs, and kernel modules without IPv6 support.
Enji Cooper's avatar
Enji Cooper committed
760
.It Va WITHOUT_INETD
Ed Maste's avatar
Ed Maste committed
761
Do not build
Enji Cooper's avatar
Enji Cooper committed
762
.Xr inetd 8 .
763
.It Va WITHOUT_INET_SUPPORT
Ed Maste's avatar
Ed Maste committed
764
Build libraries, programs, and kernel modules without IPv4 support.
765
.It Va WITH_INIT_ALL_PATTERN
Ed Maste's avatar
Ed Maste committed
766
Build the base system or kernel with stack variables initialized to
767
768
769
770
.Pq compiler defined
debugging patterns on function entry.
This option requires the clang compiler.
.It Va WITH_INIT_ALL_ZERO
Ed Maste's avatar
Ed Maste committed
771
Build the base system or kernel with stack variables initialized
772
773
to zero on function entry.
This option requires that the clang compiler be used.
774
.It Va WITHOUT_INSTALLLIB
Ed Maste's avatar
Ed Maste committed
775
776
Set this to not install optional libraries.
For example, when creating a
777
778
.Xr nanobsd 8
image.
Bryan Drewery's avatar
Bryan Drewery committed
779
780
781
.Bf -symbolic
The option does not work for build targets.
.Ef
782
.It Va WITH_INSTALL_AS_USER
Ed Maste's avatar
Ed Maste committed
783
Make install targets succeed for non-root users by installing
784
785
786
787
files with owner and group attributes set to that of the user running
the
.Xr make 1
command.
Ed Maste's avatar
Ed Maste committed
788
The user still must set the
789
790
791
.Va DESTDIR
variable to point to a directory where the user has write permissions.
.It Va WITHOUT_IPFILTER
Ed Maste's avatar
Ed Maste committed
792
Do not build IP Filter package.
793
.It Va WITHOUT_IPFW
Ed Maste's avatar
Ed Maste committed
794
Do not build IPFW tools.
Enji Cooper's avatar
Enji Cooper committed
795
.It Va WITHOUT_IPSEC_SUPPORT
Ed Maste's avatar
Ed Maste committed
796
Do not build the kernel with
Enji Cooper's avatar
Enji Cooper committed
797
798
799
800
801
802
.Xr ipsec 4
support.
This option is needed for
.Xr ipsec 4
and
.Xr tcpmd5 4 .
Enji Cooper's avatar
Enji Cooper committed
803
.It Va WITHOUT_ISCSI
Ed Maste's avatar
Ed Maste committed
804
Do not build
Sevan Janiyan's avatar
Sevan Janiyan committed
805
.Xr iscsid 8
Enji Cooper's avatar
Enji Cooper committed
806
and related utilities.
807
.It Va WITHOUT_JAIL
Ed Maste's avatar
Ed Maste committed
808
Do not build tools for the support of jails; e.g.,
809
810
.Xr jail 8 .
.It Va WITHOUT_KDUMP
Ed Maste's avatar
Ed Maste committed
811
Do not build
812
813
814
815
.Xr kdump 1
and
.Xr truss 1 .
.It Va WITHOUT_KERBEROS
Ed Maste's avatar
Ed Maste committed
816
817
Set this to not build Kerberos 5 (KTH Heimdal).
When set, these options are also in effect:
818
819
820
821
822
823
.Pp
.Bl -inset -compact
.It Va WITHOUT_GSSAPI
(unless
.Va WITH_GSSAPI
is set explicitly)
Bryan Drewery's avatar
Bryan Drewery committed
824
825
826
827
.It Va WITHOUT_KERBEROS_SUPPORT
(unless
.Va WITH_KERBEROS_SUPPORT
is set explicitly)
828
829
.El
.It Va WITHOUT_KERBEROS_SUPPORT
Ed Maste's avatar
Ed Maste committed
830
Build some programs without Kerberos support, like
831
832
833
834
835
.Xr ssh 1 ,
.Xr telnet 1 ,
.Xr sshd 8 ,
and
.Xr telnetd 8 .
836
.It Va WITH_KERNEL_RETPOLINE
Ed Maste's avatar
Ed Maste committed
837
Enable the "retpoline" mitigation for CVE-2017-5715 in the kernel
838
build.
Ed Maste's avatar
Ed Maste committed
839
.It Va WITHOUT_KERNEL_SYMBOLS
Ed Maste's avatar
Ed Maste committed
840
Do not install kernel debug symbol files.
841
.It Va WITHOUT_KVM
Ed Maste's avatar
Ed Maste committed
842
Do not build the
843
844
845
846
847
.Nm libkvm
library as a part of the base system.
.Bf -symbolic
The option has no effect yet.
.Ef
Bryan Drewery's avatar
Bryan Drewery committed
848
When set, these options are also in effect:
849
.Pp
Bryan Drewery's avatar
Bryan Drewery committed
850
851
852
853
854
.Bl -inset -compact
.It Va WITHOUT_KVM_SUPPORT
(unless
.Va WITH_KVM_SUPPORT
is set explicitly)
855
856
.El
.It Va WITHOUT_KVM_SUPPORT
Ed Maste's avatar
Ed Maste committed
857
Build some programs without optional
858
859
860
861
.Nm libkvm
support.
.It Va WITHOUT_LDNS
Setting this variable will prevent the LDNS library from being built.
Ed Maste's avatar
Ed Maste committed
862
When set, it enforces these options:
863
864
865
866
867
868
869
870
871
872
873
874
875
.Pp
.Bl -item -compact
.It
.Va WITHOUT_LDNS_UTILS
.It
.Va WITHOUT_UNBOUND
.El
.It Va WITHOUT_LDNS_UTILS
Setting this variable will prevent building the LDNS utilities
.Xr drill 1
and
.Xr host 1 .
.It Va WITHOUT_LEGACY_CONSOLE
Ed Maste's avatar
Ed Maste committed
876
Do not build programs that support a legacy PC console; e.g.,
877
.Xr kbdcontrol 1
878
and
879
.Xr vidcontrol 1 .
880
.It Va WITHOUT_LIB32
Ed Maste's avatar
Ed Maste committed
881
On 64-bit platforms, do not build 32-bit library set and a
882
883
.Nm ld-elf32.so.1
runtime linker.
884
885
.Pp
This is a default setting on
Warner Losh's avatar
Warner Losh committed
886
arm/armv6, arm/armv7, arm64/aarch64, i386/i386, powerpc/powerpc, riscv/riscv64 and riscv/riscv64sf.
Bryan Drewery's avatar
Bryan Drewery committed
887
.It Va WITH_LIBSOFT
Ed Maste's avatar
Ed Maste committed
888
On armv6 only, enable soft float ABI compatibility libraries.
Bryan Drewery's avatar
Bryan Drewery committed
889
This option is for transitioning to the new hard float ABI.
890
.It Va WITHOUT_LLD
Ed Maste's avatar
Ed Maste committed
891
Do not build LLVM's lld linker.
Ed Maste's avatar
Ed Maste committed
892
.It Va WITHOUT_LLDB
Ed Maste's avatar
Ed Maste committed
893
Do not build the LLDB debugger.
Ed Maste's avatar
Ed Maste committed
894
.Pp
Ed Maste's avatar
Ed Maste committed
895
This is a default setting on
Warner Losh's avatar
Warner Losh committed
896
arm/armv6, arm/armv7, powerpc/powerpc, powerpc/powerpc64, riscv/riscv64 and riscv/riscv64sf.
897
.It Va WITH_LLDB
Ed Maste's avatar
Ed Maste committed
898
Build the LLDB debugger.
Ed Maste's avatar
Ed Maste committed
899
.Pp
Ed Maste's avatar
Ed Maste committed
900
This is a default setting on
901
amd64/amd64, arm64/aarch64 and i386/i386.
902
.It Va WITHOUT_LLD_BOOTSTRAP
Ed Maste's avatar
Ed Maste committed
903
Do not build the LLD linker during the bootstrap phase of
904
the build.
905
To be able to build the system an alternate linker must be provided via XLD.
Yoshihiro Takahashi's avatar
Yoshihiro Takahashi committed
906
.It Va WITHOUT_LLD_IS_LD
907
908
909
910
911
912
Do not install a
.Pa /usr/bin/ld symlink
to
.Pa ld.lld .
The system will not have a usable tool chain unless a linker is provided
some other way.
913
.It Va WITHOUT_LLVM_ASSERTIONS
Ed Maste's avatar
Ed Maste committed
914
Disable debugging assertions in LLVM.
Ed Maste's avatar
Ed Maste committed
915
916
.It Va WITH_LLVM_BINUTILS
Install LLVM's binutils (ar, addr2line, nm, etc.) instead of ELF Tool Chain's.
917
.It Va WITHOUT_LLVM_COV
Ed Maste's avatar
Ed Maste committed
918
Do not build the
919
920
.Xr llvm-cov 1
tool.
921
922
.It Va WITHOUT_LLVM_CXXFILT
Install ELF Tool Chain's cxxfilt as c++filt, instead of LLVM's llvm-cxxfilt.
923
.It Va WITHOUT_LLVM_TARGET_AARCH64
Ed Maste's avatar
Ed Maste committed
924
Do not build LLVM target support for AArch64.
Bryan Drewery's avatar
Bryan Drewery committed
925
926
927
928
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
.It Va WITHOUT_LLVM_TARGET_ALL
Ed Maste's avatar
Ed Maste committed
929
Only build the required LLVM target support.
Bryan Drewery's avatar
Bryan Drewery committed
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
This option is preferred to specific target support options.
When set, these options are also in effect:
.Pp
.Bl -inset -compact
.It Va WITHOUT_LLVM_TARGET_AARCH64
(unless
.Va WITH_LLVM_TARGET_AARCH64
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_ARM
(unless
.Va WITH_LLVM_TARGET_ARM
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_MIPS
(unless
.Va WITH_LLVM_TARGET_MIPS
is set explicitly)
.It Va WITHOUT_LLVM_TARGET_POWERPC
(unless
.Va WITH_LLVM_TARGET_POWERPC
is set explicitly)
950
951
952
953
.It Va WITHOUT_LLVM_TARGET_RISCV
(unless
.Va WITH_LLVM_TARGET_RISCV
is set explicitly)
Bryan Drewery's avatar
Bryan Drewery committed
954
.El
955
.It Va WITHOUT_LLVM_TARGET_ARM
Ed Maste's avatar
Ed Maste committed
956
Do not build LLVM target support for ARM.
Bryan Drewery's avatar
Bryan Drewery committed
957
958
959
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
960
.It Va WITH_LLVM_TARGET_BPF
Ed Maste's avatar
Ed Maste committed
961
Build LLVM target support for BPF.
962
963
964
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
965
.It Va WITHOUT_LLVM_TARGET_MIPS
Ed Maste's avatar
Ed Maste committed
966
Do not build LLVM target support for MIPS.
Bryan Drewery's avatar
Bryan Drewery committed
967
968
969
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
970
.It Va WITHOUT_LLVM_TARGET_POWERPC
Ed Maste's avatar
Ed Maste committed
971
Do not build LLVM target support for PowerPC.
Bryan Drewery's avatar
Bryan Drewery committed
972
973
974
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
975
.It Va WITHOUT_LLVM_TARGET_RISCV
Ed Maste's avatar
Ed Maste committed
976
Do not build LLVM target support for RISC-V.
977
978
979
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
980
.It Va WITHOUT_LLVM_TARGET_X86
Ed Maste's avatar
Ed Maste committed
981
Do not build LLVM target support for X86.
Bryan Drewery's avatar
Bryan Drewery committed
982
983
984
The
.Va LLVM_TARGET_ALL
option should be used rather than this in most cases.
985
986
987
988
989
.It Va WITH_LOADER_EFI_SECUREBOOT
Enable building
.Xr loader 8
with support for verification based on certificates obtained from UEFI.
.Pp
990
.It Va WITH_LOADER_FIREWIRE
Li-Wen Hsu's avatar
Li-Wen Hsu committed
991
992
Enable firewire support in /boot/loader on x86.
This option is a nop on all other platforms.
993
994
.It Va WITHOUT_LOADER_GELI
Disable inclusion of GELI crypto support in the boot chain binaries.
Warner Losh's avatar
Warner Losh committed
995
996
.Pp
This is a default setting on
997
powerpc/powerpc and powerpc/powerpc64.
Warner Losh's avatar
Warner Losh committed
998
.It Va WITH_LOADER_GELI
Ed Maste's avatar
Ed Maste committed
999
Build GELI bootloader support.
Warner Losh's avatar
Warner Losh committed
1000
.Pp
For faster browsing, not all history is shown. View entire blame