Commit 516a1648 authored by Sam Ravnborg's avatar Sam Ravnborg Committed by Kai Germaschewski

kbuild: Add "make help" support

Added the new target "help" that list the most common targets
Calls down to Documentation/Makefile to list documentation targets.
Furthermore calls down to the architecture specific Makefile
to list architecture specific targets.
So far only i386 is supporting this.
parent 8556b961
...@@ -15,6 +15,10 @@ C-procfs-example = procfs_example.sgml ...@@ -15,6 +15,10 @@ C-procfs-example = procfs_example.sgml
$(TOPDIR)/scripts/docgen $(TOPDIR)/scripts/gen-all-syms \ $(TOPDIR)/scripts/docgen $(TOPDIR)/scripts/gen-all-syms \
$(TOPDIR)/scripts/kernel-doc $(TOPDIR)/scripts/docproc: doc-progs ; $(TOPDIR)/scripts/kernel-doc $(TOPDIR)/scripts/docproc: doc-progs ;
dochelp:
@echo ' Linux kernel internal documentation in different formats:'
@echo ' sgmldocs (SGML), psdocs (Postscript), pdfdocs (PDF), htmldocs (HTML)'
.PHONY: doc-progs .PHONY: doc-progs
doc-progs: doc-progs:
@$(MAKE) -C $(TOPDIR)/scripts doc-progs @$(MAKE) -C $(TOPDIR)/scripts doc-progs
......
...@@ -3,6 +3,12 @@ PATCHLEVEL = 5 ...@@ -3,6 +3,12 @@ PATCHLEVEL = 5
SUBLEVEL = 23 SUBLEVEL = 23
EXTRAVERSION = EXTRAVERSION =
# *DOCUMENTATION*
# Too see a list of typical targets execute "make help"
# More info can be located in ./Documentation/kbuild
# Comments in this file is targeted only to the developer, do not
# expect to learn how to build the kernel reading this file.
# We are using a recursive build, so we need to do a little thinking # We are using a recursive build, so we need to do a little thinking
# to get the ordering right. # to get the ordering right.
# #
...@@ -156,7 +162,7 @@ SUBDIRS := init kernel mm fs ipc lib drivers sound net ...@@ -156,7 +162,7 @@ SUBDIRS := init kernel mm fs ipc lib drivers sound net
noconfig_targets := xconfig menuconfig config oldconfig randconfig \ noconfig_targets := xconfig menuconfig config oldconfig randconfig \
defconfig allyesconfig allnoconfig allmodconfig \ defconfig allyesconfig allnoconfig allmodconfig \
clean mrproper distclean \ clean mrproper distclean \
tags TAGS sgmldocs psdocs pdfdocs htmldocs \ help tags TAGS sgmldocs psdocs pdfdocs htmldocs \
checkconfig checkhelp checkincludes checkconfig checkhelp checkincludes
ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),) ifeq ($(filter $(noconfig_targets),$(MAKECMDGOALS)),)
...@@ -673,6 +679,43 @@ tags: FORCE ...@@ -673,6 +679,43 @@ tags: FORCE
find include -type d \( -name "asm-*" -o -name config \) -prune -o -name '*.h' -print | xargs ctags $$CTAGSF -a && \ find include -type d \( -name "asm-*" -o -name config \) -prune -o -name '*.h' -print | xargs ctags $$CTAGSF -a && \
find $(SUBDIRS) init -name '*.[ch]' | xargs ctags $$CTAGSF -a find $(SUBDIRS) init -name '*.[ch]' | xargs ctags $$CTAGSF -a
# Brief documentation of the typical targets used
# ---------------------------------------------------------------------------
help:
@echo 'Cleaning targets:'
@echo ' clean - remove most generated files but keep the config'
@echo ' mrproper - remove all generated files including the config'
@echo ' distclean - mrproper + remove files generated by editors and patch'
@echo ''
@echo 'Configuration targets:'
@echo ' oldconfig - Update current config utilising a line-oriented program'
@echo ' menuconfig - Update current config utilising a menu based program'
@echo ' xconfig - Update current config utilising a X-based program'
@echo ' defconfig - New config with default answer to all options'
@echo ' allmodconfig - New config selecting modules when possible'
@echo ' allyesconfig - New config where all options are accepted with yes'
@echo ' allnoconfig - New minimal config'
@echo ''
@echo 'Other generic targets:'
@echo ' all - Build all targets marked with [*]'
@echo ' dep - Create module version information'
@echo '* vmlinux - Build the bare kernel'
@echo '* modules - Build all modules'
@echo ' dir/file.[ois]- Build specified target only'
@echo ' rpm - Build a kernel as an RPM package'
@echo ' tags/TAGS - Generate tags file for editors'
@echo ''
@echo 'Documentation targets:'
@$(MAKE) --no-print-directory -f Documentation/DocBook/Makefile dochelp
@echo ''
@echo 'Architecture specific targets ($(ARCH)):'
@$(MAKE) --no-print-directory -f arch/$(ARCH)/boot/Makefile archhelp
@echo ''
@echo 'Execute "make" or "make all" to build all targets marked with [*] '
@echo 'For further info browse Documentation/kbuild/*'
# Documentation targets # Documentation targets
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
......
...@@ -30,6 +30,10 @@ EXTRA_TARGETS := vmlinux.bin bvmlinux.bin bootsect bootsect.o \ ...@@ -30,6 +30,10 @@ EXTRA_TARGETS := vmlinux.bin bvmlinux.bin bootsect bootsect.o \
host-progs := tools/build host-progs := tools/build
# Default
boot: bzImage
include $(TOPDIR)/Rules.make include $(TOPDIR)/Rules.make
# --------------------------------------------------------------------------- # ---------------------------------------------------------------------------
...@@ -79,3 +83,11 @@ clean: ...@@ -79,3 +83,11 @@ clean:
@rm -f setup bootsect zImage compressed/vmlinux.out @rm -f setup bootsect zImage compressed/vmlinux.out
@rm -f bsetup bbootsect bzImage compressed/bvmlinux.out @rm -f bsetup bbootsect bzImage compressed/bvmlinux.out
@$(MAKE) -C compressed clean @$(MAKE) -C compressed clean
archhelp:
@echo '* bzImage - Compressed kernel image (arch/$(ARCH)/boot/bzImage)'
@echo ' install - Install kernel using'
@echo ' (your) ~/bin/installkernel or'
@echo ' (distribution) /sbin/installkernel or'
@echo ' install to $$(INSTALL_PATH) and run lilo'
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment