X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=Makefile;h=f732e75be43d1dd9449efbd99f7e646da26393c0;hb=9448732f6c9ef4932b226056338d1084f3669752;hp=aef96259051fa58211ec31b7f22b0bee3c595176;hpb=b07e3c3a1db0ce399d2a1d04860e1b901927c05e;p=linux-2.6-omap-h63xx.git diff --git a/Makefile b/Makefile index aef96259051..f732e75be43 100644 --- a/Makefile +++ b/Makefile @@ -10,8 +10,11 @@ NAME=Avast! A bilge rat! # Comments in this file are targeted only to the developer, do not # expect to learn how to build the kernel reading this file. -# Do not print "Entering directory ..." -MAKEFLAGS += --no-print-directory +# Do not: +# o use make's built-in rules and variables +# (this increases performance and avoid hard-to-debug behavour); +# o print "Entering directory ..."; +MAKEFLAGS += -rR --no-print-directory # We are using a recursive build, so we need to do a little thinking # to get the ordering right. @@ -271,12 +274,8 @@ export quiet Q KBUILD_VERBOSE # Look for make include files relative to root of kernel src MAKEFLAGS += --include-dir=$(srctree) -# We need some generic definitions -include $(srctree)/scripts/Kbuild.include - -# Do not use make's built-in rules and variables -# This increases performance and avoid hard-to-debug behavour -MAKEFLAGS += -rR +# We need some generic definitions. +include $(srctree)/scripts/Kbuild.include # Make variables (CC, etc...) @@ -1101,9 +1100,9 @@ boards := $(notdir $(boards)) help: @echo 'Cleaning targets:' - @echo ' clean - remove most generated files but keep the config and' + @echo ' clean - Remove most generated files but keep the config and' @echo ' enough build support to build external modules' - @echo ' mrproper - remove all generated files + config + various backup files' + @echo ' mrproper - Remove all generated files + config + various backup files' @echo ' distclean - mrproper + remove editor backup and patch files' @echo '' @echo 'Configuration targets:' @@ -1391,12 +1390,18 @@ endif #ifeq ($(mixed-targets),1) PHONY += checkstack kernelrelease kernelversion -# Use $(SUBARCH) here instead of $(ARCH) so that this works for UML. -# In the UML case, $(SUBARCH) is the name of the underlying -# architecture, while for all other arches, it is the same as $(ARCH). +# UML needs a little special treatment here. It wants to use the host +# toolchain, so needs $(SUBARCH) passed to checkstack.pl. Everyone +# else wants $(ARCH), including people doing cross-builds, which means +# that $(SUBARCH) doesn't work here. +ifeq ($(ARCH), um) +CHECKSTACK_ARCH := $(SUBARCH) +else +CHECKSTACK_ARCH := $(ARCH) +endif checkstack: $(OBJDUMP) -d vmlinux $$(find . -name '*.ko') | \ - $(PERL) $(src)/scripts/checkstack.pl $(SUBARCH) + $(PERL) $(src)/scripts/checkstack.pl $(CHECKSTACK_ARCH) kernelrelease: $(if $(wildcard include/config/kernel.release), $(Q)echo $(KERNELRELEASE), \ @@ -1484,6 +1489,8 @@ endif # skip-makefile PHONY += FORCE FORCE: +# Cancel implicit rules on top Makefile, `-rR' will apply to sub-makes. +Makefile: ; # Declare the contents of the .PHONY variable as phony. We keep that # information in a variable se we can use it in if_changed and friends.