README.compileopts revision 1.1
1	$NetBSD: README.compileopts,v 1.1 2014/03/16 14:33:22 pooka Exp $
2
3This file describes compile-time options for rump kernels.  Additionally,
4NetBSD build options will have an effect.  See src/share/mk/bsd.README
5for a desciption of NetBSD build options.
6
7
8    RUMP_DIAGNOSTIC
9
10values:	yes|no
11defval:	yes
12effect:	Iff "yes", build with -DDIAGNOSTIC.
13
14
15    RUMP_DEBUG
16
17values:	defined / not defined
18effect:	Iff defined, build with -DDEBUG.
19
20
21    RUMP_LOCKDEBUG
22
23values:	defined / not defined
24effect:	Iff defined, build with -DLOCKDEBUG.
25
26
27    RUMP_KTRACE
28
29values:	yes|no
30defval:	yes
31effect:	Iff "yes", build with -DKTRACE.
32
33
34    RUMP_LOCKS_UP
35
36values: yes|no
37defval:	no
38effect: If "yes", build rump kernel with uniprocess-optimized locking.
39	An implication of this is that RUMP_NCPU==1 is required at
40	runtime.  If "no", build with multiprocessor-capable locking.
41
42
43    RUMP_UNREAL_ALLOCATORS
44
45values: yes|no
46defval:	no
47effect: If "yes", build version of kmem_alloc, pool and pool_cache
48	that directly relegate allocation to a hypercall.  If "no",
49	build the regular NetBSD memory allocators which use
50	page-sized memory allocation hypercalls.
51
52
53    RUMP_VIRTIF
54
55values:	yes|no
56defval:	yes
57effect:	Iff "yes", build the virt(4) network interface.  Turning this
58	off may be necessary on systems that lack the necessary headers,
59	e.g. musl libc based Linux.
60
61
62================================================================================
63
64
65The rest of the options described in this file are not intended to be
66set by users, but by the package building rump kernels.
67
68
69    RUMP_KERNEL_IS_LIBC
70
71values:	defined / not defined
72effect: Iff defined, export normal system call symbols from libc.
73	For example, without this option rump_sys_open() is exported.
74	With this option, both open() and rump_sys_open() are exported.
75	This option is meant for building systems where a rump kernel
76	is the only operating system like component.
77
78
79    RUMP_LDSCRIPT
80
81values: no/GNU/sun
82defval: GNU
83effect: Select the linker script to be used for linking rump kernel shared
84	library components.
85	no  - do not use a linker script
86	GNU - use a linker script for GNU ld 2.18 and later
87	sun - use a linker script for the Solaris linker
88