1Environment variables 2 3KCPPFLAGS 4-------------------------------------------------- 5Additional options to pass when preprocessing. The preprocessing options 6will be used in all cases where kbuild does preprocessing including 7building C files and assembler files. 8 9KAFLAGS 10-------------------------------------------------- 11Additional options to the assembler. 12 13KCFLAGS 14-------------------------------------------------- 15Additional options to the C compiler. 16 17KBUILD_VERBOSE 18-------------------------------------------------- 19Set the kbuild verbosity. Can be assigned same values as "V=...". 20See make help for the full list. 21Setting "V=..." takes precedence over KBUILD_VERBOSE. 22 23KBUILD_EXTMOD 24-------------------------------------------------- 25Set the directory to look for the kernel source when building external 26modules. 27The directory can be specified in several ways: 281) Use "M=..." on the command line 292) Environmnet variable KBUILD_EXTMOD 303) Environmnet variable SUBDIRS 31The possibilities are listed in the order they take precedence. 32Using "M=..." will always override the others. 33 34KBUILD_OUTPUT 35-------------------------------------------------- 36Specify the output directory when building the kernel. 37The output directory can also be specificed using "O=...". 38Setting "O=..." takes precedence over KBUILD_OUTPUT. 39 40ARCH 41-------------------------------------------------- 42Set ARCH to the architecture to be built. 43In most cases the name of the architecture is the same as the 44directory name found in the arch/ directory. 45But some architectures such as x86 and sparc have aliases. 46x86: i386 for 32 bit, x86_64 for 64 bit 47sparc: sparc for 32 bit, sparc64 for 64 bit 48 49CROSS_COMPILE 50-------------------------------------------------- 51Specify an optional fixed part of the binutils filename. 52CROSS_COMPILE can be a part of the filename or the full path. 53 54CROSS_COMPILE is also used for ccache is some setups. 55 56CF 57-------------------------------------------------- 58Additional options for sparse. 59CF is often used on the command-line like this: 60 61 make CF=-Wbitwise C=2 62 63INSTALL_PATH 64-------------------------------------------------- 65INSTALL_PATH specifies where to place the updated kernel and system map 66images. Default is /boot, but you can set it to other values. 67 68 69MODLIB 70-------------------------------------------------- 71Specify where to install modules. 72The default value is: 73 74 $(INSTALL_MOD_PATH)/lib/modules/$(KERNELRELEASE) 75 76The value can be overridden in which case the default value is ignored. 77 78INSTALL_MOD_PATH 79-------------------------------------------------- 80INSTALL_MOD_PATH specifies a prefix to MODLIB for module directory 81relocations required by build roots. This is not defined in the 82makefile but the argument can be passed to make if needed. 83 84INSTALL_MOD_STRIP 85-------------------------------------------------- 86INSTALL_MOD_STRIP, if defined, will cause modules to be 87stripped after they are installed. If INSTALL_MOD_STRIP is '1', then 88the default option --strip-debug will be used. Otherwise, 89INSTALL_MOD_STRIP will used as the options to the strip command. 90 91INSTALL_FW_PATH 92-------------------------------------------------- 93INSTALL_FW_PATH specifies where to install the firmware blobs. 94The default value is: 95 96 $(INSTALL_MOD_PATH)/lib/firmware 97 98The value can be overridden in which case the default value is ignored. 99 100INSTALL_HDR_PATH 101-------------------------------------------------- 102INSTALL_HDR_PATH specifies where to install user space headers when 103executing "make headers_*". 104The default value is: 105 106 $(objtree)/usr 107 108$(objtree) is the directory where output files are saved. 109The output directory is often set using "O=..." on the commandline. 110 111The value can be overridden in which case the default value is ignored. 112 113KBUILD_MODPOST_WARN 114-------------------------------------------------- 115KBUILD_MODPOST_WARN can be set to avoid errors in case of undefined 116symbols in the final module linking stage. It changes such errors 117into warnings. 118 119KBUILD_MODPOST_NOFINAL 120-------------------------------------------------- 121KBUILD_MODPOST_NOFINAL can be set to skip the final link of modules. 122This is solely useful to speed up test compiles. 123 124KBUILD_EXTRA_SYMBOLS 125-------------------------------------------------- 126For modules that use symbols from other modules. 127See more details in modules.txt. 128 129ALLSOURCE_ARCHS 130-------------------------------------------------- 131For tags/TAGS/cscope targets, you can specify more than one arch 132to be included in the databases, separated by blank space. E.g.: 133 134 $ make ALLSOURCE_ARCHS="x86 mips arm" tags 135