Re: [PATCH] adjust outputmakefile rule

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>>> Sam Ravnborg <[email protected]> 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 <[email protected]>

--- /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 [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux