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

Commit 25a5d23b authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'kbuild-fixes-v4.14-2' of...

Merge tag 'kbuild-fixes-v4.14-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild

Pull Kbuild fixes from Masahiro Yamada:

 - fix O= building on dash

 - remove unused dependency in Makefile

 - fix default of a choice in Kconfig

 - fix typos and documentation style

 - fix command options unrecognized by sparse

* tag 'kbuild-fixes-v4.14-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
  kbuild: clang: fix build failures with sparse check
  kbuild doc: a bundle of fixes on makefiles.txt
  Makefile: kselftest: fix grammar typo
  kbuild: Fix optimization level choice default
  kbuild: drop unused symverfile in Makefile.modpost
  kbuild: revert $(realpath ...) to $(shell cd ... && /bin/pwd)
parents a7d3e63f bb3f38c3
Loading
Loading
Loading
Loading
+18 −13
Original line number Diff line number Diff line
@@ -1108,14 +1108,6 @@ When kbuild executes, the following steps are followed (roughly):
    ld
	Link target. Often, LDFLAGS_$@ is used to set specific options to ld.

    objcopy
	Copy binary. Uses OBJCOPYFLAGS usually specified in
	arch/$(ARCH)/Makefile.
	OBJCOPYFLAGS_$@ may be used to set additional options.

    gzip
	Compress target. Use maximum compression to compress target.

	Example:
		#arch/x86/boot/Makefile
		LDFLAGS_bootsect := -Ttext 0x0 -s --oformat binary
@@ -1139,6 +1131,19 @@ When kbuild executes, the following steps are followed (roughly):
	      resulting in the target file being recompiled for no
	      obvious reason.

    objcopy
	Copy binary. Uses OBJCOPYFLAGS usually specified in
	arch/$(ARCH)/Makefile.
	OBJCOPYFLAGS_$@ may be used to set additional options.

    gzip
	Compress target. Use maximum compression to compress target.

	Example:
		#arch/x86/boot/compressed/Makefile
		$(obj)/vmlinux.bin.gz: $(vmlinux.bin.all-y) FORCE
			$(call if_changed,gzip)

    dtc
	Create flattened device tree blob object suitable for linking
	into vmlinux. Device tree blobs linked into vmlinux are placed
@@ -1219,7 +1224,7 @@ When kbuild executes, the following steps are followed (roughly):
	that may be shared between individual architectures.
	The recommended approach how to use a generic header file is
	to list the file in the Kbuild file.
	See "7.3 generic-y" for further info on syntax etc.
	See "7.2 generic-y" for further info on syntax etc.

--- 6.11 Post-link pass

@@ -1299,7 +1304,7 @@ See subsequent chapter for the syntax of the Kbuild file.
			#arch/x86/include/asm/Kbuild
			generated-y += syscalls_32.h

	--- 7.5 mandatory-y
--- 7.4 mandatory-y

	mandatory-y is essentially used by include/uapi/asm-generic/Kbuild.asm
	to define the minimum set of headers that must be exported in
+5 −5
Original line number Diff line number Diff line
@@ -130,8 +130,8 @@ endif
ifneq ($(KBUILD_OUTPUT),)
# check that the output directory actually exists
saved-output := $(KBUILD_OUTPUT)
$(shell [ -d $(KBUILD_OUTPUT) ] || mkdir -p $(KBUILD_OUTPUT))
KBUILD_OUTPUT := $(realpath $(KBUILD_OUTPUT))
KBUILD_OUTPUT := $(shell mkdir -p $(KBUILD_OUTPUT) && cd $(KBUILD_OUTPUT) \
								&& /bin/pwd)
$(if $(KBUILD_OUTPUT),, \
     $(error failed to create output directory "$(saved-output)"))

@@ -697,11 +697,11 @@ KBUILD_CFLAGS += $(stackp-flag)

ifeq ($(cc-name),clang)
ifneq ($(CROSS_COMPILE),)
CLANG_TARGET	:= -target $(notdir $(CROSS_COMPILE:%-=%))
CLANG_TARGET	:= --target=$(notdir $(CROSS_COMPILE:%-=%))
GCC_TOOLCHAIN	:= $(realpath $(dir $(shell which $(LD)))/..)
endif
ifneq ($(GCC_TOOLCHAIN),)
CLANG_GCC_TC	:= -gcc-toolchain $(GCC_TOOLCHAIN)
CLANG_GCC_TC	:= --gcc-toolchain=$(GCC_TOOLCHAIN)
endif
KBUILD_CFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC)
KBUILD_AFLAGS += $(CLANG_TARGET) $(CLANG_GCC_TC)
@@ -1399,7 +1399,7 @@ help:
	@echo  '                    Build, install, and boot kernel before'
	@echo  '                    running kselftest on it'
	@echo  '  kselftest-clean - Remove all generated kselftest files'
	@echo  '  kselftest-merge - Merge all the config dependencies of kselftest to existed'
	@echo  '  kselftest-merge - Merge all the config dependencies of kselftest to existing'
	@echo  '                    .config.'
	@echo  ''
	@echo 'Userspace tools targets:'
+1 −1
Original line number Diff line number Diff line
@@ -1033,7 +1033,7 @@ endif

choice
	prompt "Compiler optimization level"
	default CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE
	default CC_OPTIMIZE_FOR_PERFORMANCE

config CC_OPTIMIZE_FOR_PERFORMANCE
	bool "Optimize for performance"
+0 −1
Original line number Diff line number Diff line
@@ -97,7 +97,6 @@ vmlinux.o: FORCE
	$(call cmd,kernel-mod)

# Declare generated files as targets for modpost
$(symverfile):         __modpost ;
$(modules:.ko=.mod.c): __modpost ;


+1 −1
Original line number Diff line number Diff line
@@ -26,7 +26,7 @@ endif

ifneq ($(OUTPUT),)
# check that the output directory actually exists
OUTDIR := $(realpath $(OUTPUT))
OUTDIR := $(shell cd $(OUTPUT) && /bin/pwd)
$(if $(OUTDIR),, $(error output directory "$(OUTPUT)" does not exist))
endif

Loading