Messages in this thread Patch in this message | | | Date | Tue, 02 May 2006 12:33:20 +0200 | From | "Jan Beulich" <> | Subject | Re: [PATCH] adjust outputmakefile rule |
| |
>>> Sam Ravnborg <sam@ravnborg.org> 30.04.06 23:49 >>> >On Wed, Apr 26, 2006 at 03:56:04PM +0200, Jan Beulich wrote: >> Change the conditional of the outputmakefile rule to be evaluated entirely >> in make, and to not touch the generated makefile when e.g. running >> 'make install' as root while the build was done as non-root. Also adjust >> the comment describing this. > >Can I request you to redo this patch. >Move all logic (including print-out) to mkmakefile >And only let it print out "GEN ...." when it actttttttually generate >the Makefile.
Here we go:
Change the conditional of the outputmakefile rule to be evaluated entirely in make, and add a conditional to not touch the generated makefile when e.g. running 'make install' as root while the build was done as non-root. Also adjust the comment describing this, and move the message printing and redirection to mkmakefile.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
--- /home/jbeulich/tmp/linux-2.6.17-rc3/Makefile 2006-04-27 17:49:26.000000000 +0200 +++ 2.6.17-rc3-mkmakefile/Makefile 2006-04-24 12:28:36.000000000 +0200 @@ -344,16 +344,14 @@ scripts_basic: scripts/basic/%: scripts_basic ; PHONY += outputmakefile -# outputmakefile generate a Makefile to be placed in output directory, if -# using a seperate output directory. This allows convinient use -# of make in output directory +# outputmakefile generates a Makefile in the output directory, if using a +# separate output directory. This allows convenient use of make in the +# output directory. outputmakefile: - $(Q)if test ! $(srctree) -ef $(objtree); then \ - $(CONFIG_SHELL) $(srctree)/scripts/mkmakefile \ - $(srctree) $(objtree) $(VERSION) $(PATCHLEVEL) \ - > $(objtree)/Makefile; \ - echo ' GEN $(objtree)/Makefile'; \ - fi +ifneq ($(KBUILD_SRC),) + $(Q)$(CONFIG_SHELL) $(srctree)/scripts/mkmakefile \ + $(srctree) $(objtree) $(VERSION) $(PATCHLEVEL) +endif # To make sure we do not include .config for any of the *config targets # catch them early, and hand them over to scripts/kconfig/Makefile --- /home/jbeulich/tmp/linux-2.6.17-rc3/scripts/mkmakefile 2006-04-27 17:49:57.000000000 +0200 +++ 2.6.17-rc3-mkmakefile/scripts/mkmakefile 2006-05-02 11:27:13.000000000 +0200 @@ -10,7 +10,10 @@ # $4 - patchlevel -cat << EOF +test ! -r $2/Makefile -o -O $2/Makefile || exit 0 +echo " GEN $2/Makefile" + +cat << EOF > $2/Makefile # Automatically generated by $0: don't edit VERSION = $3
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |