Skip to content

Commit

Permalink
kbuild: Do not overwrite makefile as anohter user
Browse files Browse the repository at this point in the history
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>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
  • Loading branch information
Jan Beulich authored and Sam Ravnborg committed May 8, 2006
1 parent cc873e1 commit fd5f0cd
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 10 deletions.
16 changes: 7 additions & 9 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
5 changes: 4 additions & 1 deletion scripts/mkmakefile
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down

0 comments on commit fd5f0cd

Please sign in to comment.