kbuild: Do not overwrite makefile as anohter user
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>
This commit is contained in:
Родитель
cc873e1aa1
Коммит
fd5f0cd6b0
16
Makefile
16
Makefile
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
Загрузка…
Ссылка в новой задаче