- [root@btg ext4]# make help
- Cleaning targets:
- clean - Remove most generated files but keep the config and
- enough build support to build external modules
- mrproper - Remove all generated files config various backup files
- distclean - mrproper remove editor backup and patch files
- Configuration targets:
- config - Update current config utilising a line-oriented program
- nconfig - Update current config utilising a ncurses menu based program
- menuconfig - Update current config utilising a menu based program
- xconfig - Update current config utilising a QT based front-end
- gconfig - Update current config utilising a GTK based front-end
- oldconfig - Update current config utilising a provided .config as base
- localmodconfig - Update current config disabling modules not loaded
- localyesconfig - Update current config converting local mods to core
- silentoldconfig - Same as oldconfig, but quietly, additionally update deps
- defconfig - New config with default from ARCH supplied defconfig
- savedefconfig - Save current config as ./defconfig (minimal config)
- allnoconfig - New config where all options are answered with no
- allyesconfig - New config where all options are accepted with yes
- allmodconfig - New config selecting modules when possible
- alldefconfig - New config with all symbols set to default
- randconfig - New config with random answer to all options
- listnewconfig - List new options
- oldnoconfig - Same as silentoldconfig but set new symbols to n (unset)
- Other generic targets:
- all - Build all targets marked with [*]
- * vmlinux - Build the bare kernel
- * modules - Build all modules
- modules_install - Install all modules to INSTALL_MOD_PATH (default: /)
- firmware_install- Install all firmware to INSTALL_FW_PATH
- (default: $(INSTALL_MOD_PATH)/lib/firmware)
- dir/ - Build all files in dir and below
- dir/file.[oisS] - Build specified target only
- dir/file.lst - Build specified mixed source/assembly target only
- (requires a recent binutils and recent build (System.map))
- dir/file.ko - Build module including final link
- modules_prepare - Set up for building external modules
- tags/TAGS - Generate tags file for editors
- cscope - Generate cscope index
- gtags - Generate GNU GLOBAL index
- kernelrelease - Output the release version string
- kernelversion - Output the version stored in Makefile
- headers_install - Install sanitised kernel headers to INSTALL_HDR_PATH
- (default: /opt/ext4/usr)
- checkstack - Generate a list of stack hogs
- namespacecheck - Name space analysis on compiled kernel
- versioncheck - Sanity check on version.h usage
- includecheck - Check for duplicate included header files
- export_report - List the usages of all exported symbols
- headers_check - Sanity check on exported headers
- headerdep - Detect inclusion cycles in headers
- coccicheck - Check with Coccinelle.
- Kernel packaging:
- rpm-pkg - Build both source and binary RPM kernel packages
- binrpm-pkg - Build only the binary kernel package
- deb-pkg - Build the kernel as an deb package
- tar-pkg - Build the kernel as an uncompressed tarball
- targz-pkg - Build the kernel as a gzip compressed tarball
- tarbz2-pkg - Build the kernel as a bzip2 compressed tarball
- tarxz-pkg - Build the kernel as a xz compressed tarball
- perf-tar-src-pkg - Build perf-2.6.39-rc3.tar source tarball
- perf-targz-src-pkg - Build perf-2.6.39-rc3.tar.gz source tarball
- perf-tarbz2-src-pkg - Build perf-2.6.39-rc3.tar.bz2 source tarball
- perf-tarxz-src-pkg - Build perf-2.6.39-rc3.tar.xz source tarball
- Documentation targets:
- Linux kernel internal documentation in different formats:
- htmldocs - HTML
- pdfdocs - PDF
- psdocs - Postscript
- xmldocs - XML DocBook
- mandocs - man pages
- installmandocs - install man pages generated by mandocs
- cleandocs - clean all generated DocBook files
- Architecture specific targets (x86):
- * bzImage - Compressed kernel image (arch/x86/boot/bzImage)
- install - Install kernel using
- (your) ~/bin/installkernel or
- (distribution) /sbin/installkernel or
- install to $(INSTALL_PATH) and run lilo
- fdimage - Create 1.4MB boot floppy image (arch/x86/boot/fdimage)
- fdimage144 - Create 1.4MB boot floppy image (arch/x86/boot/fdimage)
- fdimage288 - Create 2.8MB boot floppy image (arch/x86/boot/fdimage)
- isoimage - Create a boot CD-ROM image (arch/x86/boot/image.iso)
- bzdisk/fdimage*/isoimage also accept:
- FDARGS="..." arguments for the booted kernel
- FDINITRD=file initrd for the booted kernel
- x86_64_defconfig - Build for x86_64
- i386_defconfig - Build for i386
- make V=0|1 [targets] 0 => quiet build (default), 1 => verbose build
- make V=2 [targets] 2 => give reason for rebuild of target
- make O=dir [targets] Locate all output files in "dir", including .config
- make C=1 [targets] Check all c source with $CHECK (sparse by default)
- make C=2 [targets] Force check of all c source with $CHECK
- make W=1 [targets] Enable extra gcc checks
- Execute "make" or "make all" to build all targets marked with [*]
- For further info see the ./README file
- [root@btg ext4]#
- [root@btg ext4]# make tags cscope
- GEN tags
- GEN cscope
- [root@btg ext4]#
我自己生成的cscope和tags打开的内容
- Cscope tag: start_kernel
- # 行 文件名 / 上下文 / 行
- 1 135 arch/alpha/boot/bootp.c <<start_kernel>>
- start_kernel(void )
- 2 263 arch/alpha/boot/bootpz.c <<start_kernel>>
- start_kernel(void )
- 3 153 arch/alpha/boot/main.c <<start_kernel>>
- void start_kernel(void )
- 4 456 init/main.c <<start_kernel>>
- asmlinkage void __init start_kernel(void )
- Type number and <Enter> (empty cancels):
如果使用kernel的Makefile里的会直接进入到
- 4 456 init/main.c <<start_kernel>>
- asmlinkage void __init start_kernel(void )
- 里面
非常方便