X-Git-Url: http://pilppa.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=scripts%2Fmkmakefile;h=67d59c7a18dc57b1580a833ed37e832eff227c85;hb=e4d866cdea24543ee16ce6d07d80c513e86ba983;hp=a22cbedd3b3ec0738379c283d4fb2df5b33209ec;hpb=a41622eaa97e40c811fb7756f403c0d4caa65654;p=linux-2.6-omap-h63xx.git diff --git a/scripts/mkmakefile b/scripts/mkmakefile index a22cbedd3b3..67d59c7a18d 100644 --- a/scripts/mkmakefile +++ b/scripts/mkmakefile @@ -10,24 +10,41 @@ # $4 - patchlevel -cat << EOF +test ! -r $2/Makefile -o -O $2/Makefile || exit 0 +# Only overwrite automatically generated Makefiles +# (so we do not overwrite kernel Makefile) +if test -e $2/Makefile && ! grep -q Automatically $2/Makefile +then + exit 0 +fi +if [ "${quiet}" != "silent_" ]; then + echo " GEN $2/Makefile" +fi + +cat << EOF > $2/Makefile # Automatically generated by $0: don't edit VERSION = $3 PATCHLEVEL = $4 -KERNELSRC := $1 -KERNELOUTPUT := $2 +lastword = \$(word \$(words \$(1)),\$(1)) +makedir := \$(dir \$(call lastword,\$(MAKEFILE_LIST))) + +MAKEARGS := -C $1 +MAKEARGS += O=\$(if \$(patsubst /%,,\$(makedir)),\$(CURDIR)/)\$(patsubst %/,%,\$(makedir)) MAKEFLAGS += --no-print-directory .PHONY: all \$(MAKECMDGOALS) +all := \$(filter-out all Makefile,\$(MAKECMDGOALS)) + all: - \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) + \$(MAKE) \$(MAKEARGS) \$(all) Makefile:; -\$(filter-out all Makefile,\$(MAKECMDGOALS)) %/: - \$(MAKE) -C \$(KERNELSRC) O=\$(KERNELOUTPUT) \$@ +\$(all) %/: all + @: + EOF