Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dc3d532a authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* git://git.kernel.org/pub/scm/linux/kernel/git/sam/fix-kbuild:
  kbuild: fix building with O=.. options
  kbuild: fix building with redirected output.
parents af1bff4f 18c32dac
Loading
Loading
Loading
Loading
+6 −8
Original line number Original line Diff line number Diff line
@@ -108,6 +108,9 @@ endif
PHONY := _all
PHONY := _all
_all:
_all:


# Cancel implicit rules on top Makefile
$(CURDIR)/Makefile Makefile: ;

ifneq ($(KBUILD_OUTPUT),)
ifneq ($(KBUILD_OUTPUT),)
# Invoke a second make in the output directory, passing relevant variables
# Invoke a second make in the output directory, passing relevant variables
# check that the output directory actually exists
# check that the output directory actually exists
@@ -115,13 +118,10 @@ saved-output := $(KBUILD_OUTPUT)
KBUILD_OUTPUT := $(shell cd $(KBUILD_OUTPUT) && /bin/pwd)
KBUILD_OUTPUT := $(shell cd $(KBUILD_OUTPUT) && /bin/pwd)
$(if $(KBUILD_OUTPUT),, \
$(if $(KBUILD_OUTPUT),, \
     $(error output directory "$(saved-output)" does not exist))
     $(error output directory "$(saved-output)" does not exist))
# Check that OUTPUT directory is not the same as where we have kernel src
$(if $(filter-out $(KBUILD_OUTPUT),$(shell /bin/pwd)),, \
     $(error Output directory (O=...) specifies kernel src dir))


PHONY += $(MAKECMDGOALS) sub-make
PHONY += $(MAKECMDGOALS) sub-make


$(filter-out _all sub-make,$(MAKECMDGOALS)) _all: sub-make
$(filter-out _all sub-make $(CURDIR)/Makefile, $(MAKECMDGOALS)) _all: sub-make
	$(Q)@:
	$(Q)@:


sub-make: FORCE
sub-make: FORCE
@@ -291,7 +291,8 @@ export quiet Q KBUILD_VERBOSE
# Look for make include files relative to root of kernel src
# Look for make include files relative to root of kernel src
MAKEFLAGS += --include-dir=$(srctree)
MAKEFLAGS += --include-dir=$(srctree)


# We need some generic definitions.
# We need some generic definitions (do not try to remake the file).
$(srctree)/scripts/Kbuild.include: ;
include $(srctree)/scripts/Kbuild.include
include $(srctree)/scripts/Kbuild.include


# Make variables (CC, etc...)
# Make variables (CC, etc...)
@@ -1560,9 +1561,6 @@ endif # skip-makefile
PHONY += FORCE
PHONY += FORCE
FORCE:
FORCE:


# Cancel implicit rules on top Makefile, `-rR' will apply to sub-makes.
Makefile: ;

# Declare the contents of the .PHONY variable as phony.  We keep that
# Declare the contents of the .PHONY variable as phony.  We keep that
# information in a variable se we can use it in if_changed and friends.
# information in a variable se we can use it in if_changed and friends.
.PHONY: $(PHONY)
.PHONY: $(PHONY)
+6 −0
Original line number Original line Diff line number Diff line
@@ -11,6 +11,12 @@




test ! -r $2/Makefile -o -O $2/Makefile || exit 0
test ! -r $2/Makefile -o -O $2/Makefile || exit 0
# Only overwrite automatically generated Makefiles
# (so we do not overwrite kernel Makefile)
if ! grep -q Automatically $2/Makefile
then
	exit 0
fi
echo "  GEN     $2/Makefile"
echo "  GEN     $2/Makefile"


cat << EOF > $2/Makefile
cat << EOF > $2/Makefile