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