diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-12-20 16:31:14 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-12-20 16:31:14 -0500 |
commit | d08372ca2800e23c51e76dea5fc516781e82722e (patch) | |
tree | b93ff38ddc8d931598d7aa56a32ec4c889be0a50 | |
parent | ecb5ec044ab99be1f35e93962fa43e4bb3120d9e (diff) | |
parent | 1846dfbde3e8a53f3673dcb1c1b79fd9b3f8d40d (diff) |
Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild
Pull kbuild updates from Michal Marek:
"Here are the kbuild changes for v3.19-rc1:
- Cleanups and deduplication in the main Makefile and
scripts/Makefile.*
- Sort the output of *config targets in make help
- Old <linux/version.h> is always removed to avoid a surprise during
bisecting
- Warning fix in kconfig"
* 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
kbuild: remove redundant -rR flag of hdr-inst
kbuild: Fix make help-<board series> on powerpc
kbuild: Automatically remove stale <linux/version.h> file
kconfig: Fix warning "‘jump’ may be used uninitialized"
Makefile: sort list of defconfig targets in make help output
kbuild: Remove duplicate $(cmd) definition in Makefile.clean
kbuild: collect shorthands into scripts/Kbuild.include
-rw-r--r-- | Makefile | 17 | ||||
-rw-r--r-- | scripts/Kbuild.include | 12 | ||||
-rw-r--r-- | scripts/Makefile.clean | 10 | ||||
-rw-r--r-- | scripts/Makefile.headersinst | 1 | ||||
-rw-r--r-- | scripts/kconfig/menu.c | 4 |
5 files changed, 21 insertions, 23 deletions
@@ -481,9 +481,10 @@ asm-generic: | |||
481 | # of make so .config is not included in this case either (for *config). | 481 | # of make so .config is not included in this case either (for *config). |
482 | 482 | ||
483 | version_h := include/generated/uapi/linux/version.h | 483 | version_h := include/generated/uapi/linux/version.h |
484 | old_version_h := include/linux/version.h | ||
484 | 485 | ||
485 | no-dot-config-targets := clean mrproper distclean \ | 486 | no-dot-config-targets := clean mrproper distclean \ |
486 | cscope gtags TAGS tags help %docs check% coccicheck \ | 487 | cscope gtags TAGS tags help% %docs check% coccicheck \ |
487 | $(version_h) headers_% archheaders archscripts \ | 488 | $(version_h) headers_% archheaders archscripts \ |
488 | kernelversion %src-pkg | 489 | kernelversion %src-pkg |
489 | 490 | ||
@@ -1005,6 +1006,7 @@ endef | |||
1005 | 1006 | ||
1006 | $(version_h): $(srctree)/Makefile FORCE | 1007 | $(version_h): $(srctree)/Makefile FORCE |
1007 | $(call filechk,version.h) | 1008 | $(call filechk,version.h) |
1009 | $(Q)rm -f $(old_version_h) | ||
1008 | 1010 | ||
1009 | include/generated/utsrelease.h: include/config/kernel.release FORCE | 1011 | include/generated/utsrelease.h: include/config/kernel.release FORCE |
1010 | $(call filechk,utsrelease.h) | 1012 | $(call filechk,utsrelease.h) |
@@ -1036,8 +1038,6 @@ firmware_install: FORCE | |||
1036 | #Default location for installed headers | 1038 | #Default location for installed headers |
1037 | export INSTALL_HDR_PATH = $(objtree)/usr | 1039 | export INSTALL_HDR_PATH = $(objtree)/usr |
1038 | 1040 | ||
1039 | hdr-inst := -rR -f $(srctree)/scripts/Makefile.headersinst obj | ||
1040 | |||
1041 | # If we do an all arch process set dst to asm-$(hdr-arch) | 1041 | # If we do an all arch process set dst to asm-$(hdr-arch) |
1042 | hdr-dst = $(if $(KBUILD_HEADERS), dst=include/asm-$(hdr-arch), dst=include/asm) | 1042 | hdr-dst = $(if $(KBUILD_HEADERS), dst=include/asm-$(hdr-arch), dst=include/asm) |
1043 | 1043 | ||
@@ -1175,7 +1175,7 @@ MRPROPER_FILES += .config .config.old .version .old_version $(version_h) \ | |||
1175 | Module.symvers tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS \ | 1175 | Module.symvers tags TAGS cscope* GPATH GTAGS GRTAGS GSYMS \ |
1176 | signing_key.priv signing_key.x509 x509.genkey \ | 1176 | signing_key.priv signing_key.x509 x509.genkey \ |
1177 | extra_certificates signing_key.x509.keyid \ | 1177 | extra_certificates signing_key.x509.keyid \ |
1178 | signing_key.x509.signer include/linux/version.h | 1178 | signing_key.x509.signer |
1179 | 1179 | ||
1180 | # clean - Delete most, but leave enough to build external modules | 1180 | # clean - Delete most, but leave enough to build external modules |
1181 | # | 1181 | # |
@@ -1235,7 +1235,7 @@ rpm: include/config/kernel.release FORCE | |||
1235 | # --------------------------------------------------------------------------- | 1235 | # --------------------------------------------------------------------------- |
1236 | 1236 | ||
1237 | boards := $(wildcard $(srctree)/arch/$(SRCARCH)/configs/*_defconfig) | 1237 | boards := $(wildcard $(srctree)/arch/$(SRCARCH)/configs/*_defconfig) |
1238 | boards := $(notdir $(boards)) | 1238 | boards := $(sort $(notdir $(boards))) |
1239 | board-dirs := $(dir $(wildcard $(srctree)/arch/$(SRCARCH)/configs/*/*_defconfig)) | 1239 | board-dirs := $(dir $(wildcard $(srctree)/arch/$(SRCARCH)/configs/*/*_defconfig)) |
1240 | board-dirs := $(sort $(notdir $(board-dirs:/=))) | 1240 | board-dirs := $(sort $(notdir $(board-dirs:/=))) |
1241 | 1241 | ||
@@ -1326,7 +1326,7 @@ help-board-dirs := $(addprefix help-,$(board-dirs)) | |||
1326 | 1326 | ||
1327 | help-boards: $(help-board-dirs) | 1327 | help-boards: $(help-board-dirs) |
1328 | 1328 | ||
1329 | boards-per-dir = $(notdir $(wildcard $(srctree)/arch/$(SRCARCH)/configs/$*/*_defconfig)) | 1329 | boards-per-dir = $(sort $(notdir $(wildcard $(srctree)/arch/$(SRCARCH)/configs/$*/*_defconfig))) |
1330 | 1330 | ||
1331 | $(help-board-dirs): help-%: | 1331 | $(help-board-dirs): help-%: |
1332 | @echo 'Architecture specific targets ($(SRCARCH) $*):' | 1332 | @echo 'Architecture specific targets ($(SRCARCH) $*):' |
@@ -1581,11 +1581,6 @@ ifneq ($(cmd_files),) | |||
1581 | include $(cmd_files) | 1581 | include $(cmd_files) |
1582 | endif | 1582 | endif |
1583 | 1583 | ||
1584 | # Shorthand for $(Q)$(MAKE) -f scripts/Makefile.clean obj=dir | ||
1585 | # Usage: | ||
1586 | # $(Q)$(MAKE) $(clean)=dir | ||
1587 | clean := -f $(srctree)/scripts/Makefile.clean obj | ||
1588 | |||
1589 | endif # skip-makefile | 1584 | endif # skip-makefile |
1590 | 1585 | ||
1591 | PHONY += FORCE | 1586 | PHONY += FORCE |
diff --git a/scripts/Kbuild.include b/scripts/Kbuild.include index 5374b1bdf02f..edd2794569db 100644 --- a/scripts/Kbuild.include +++ b/scripts/Kbuild.include | |||
@@ -185,6 +185,18 @@ modbuiltin := -f $(srctree)/scripts/Makefile.modbuiltin obj | |||
185 | # $(Q)$(MAKE) $(dtbinst)=dir | 185 | # $(Q)$(MAKE) $(dtbinst)=dir |
186 | dtbinst := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.dtbinst obj | 186 | dtbinst := -f $(if $(KBUILD_SRC),$(srctree)/)scripts/Makefile.dtbinst obj |
187 | 187 | ||
188 | ### | ||
189 | # Shorthand for $(Q)$(MAKE) -f scripts/Makefile.clean obj= | ||
190 | # Usage: | ||
191 | # $(Q)$(MAKE) $(clean)=dir | ||
192 | clean := -f $(srctree)/scripts/Makefile.clean obj | ||
193 | |||
194 | ### | ||
195 | # Shorthand for $(Q)$(MAKE) -f scripts/Makefile.headersinst obj= | ||
196 | # Usage: | ||
197 | # $(Q)$(MAKE) $(hdr-inst)=dir | ||
198 | hdr-inst := -f $(srctree)/scripts/Makefile.headersinst obj | ||
199 | |||
188 | # Prefix -I with $(srctree) if it is not an absolute path. | 200 | # Prefix -I with $(srctree) if it is not an absolute path. |
189 | # skip if -I has no parameter | 201 | # skip if -I has no parameter |
190 | addtree = $(if $(patsubst -I%,%,$(1)), \ | 202 | addtree = $(if $(patsubst -I%,%,$(1)), \ |
diff --git a/scripts/Makefile.clean b/scripts/Makefile.clean index b1c668dc6815..1bca180db8ad 100644 --- a/scripts/Makefile.clean +++ b/scripts/Makefile.clean | |||
@@ -7,10 +7,7 @@ src := $(obj) | |||
7 | PHONY := __clean | 7 | PHONY := __clean |
8 | __clean: | 8 | __clean: |
9 | 9 | ||
10 | # Shorthand for $(Q)$(MAKE) scripts/Makefile.clean obj=dir | 10 | include scripts/Kbuild.include |
11 | # Usage: | ||
12 | # $(Q)$(MAKE) $(clean)=dir | ||
13 | clean := -f $(srctree)/scripts/Makefile.clean obj | ||
14 | 11 | ||
15 | # The filename Kbuild has precedence over Makefile | 12 | # The filename Kbuild has precedence over Makefile |
16 | kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src)) | 13 | kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src)) |
@@ -91,11 +88,6 @@ PHONY += $(subdir-ymn) | |||
91 | $(subdir-ymn): | 88 | $(subdir-ymn): |
92 | $(Q)$(MAKE) $(clean)=$@ | 89 | $(Q)$(MAKE) $(clean)=$@ |
93 | 90 | ||
94 | # If quiet is set, only print short version of command | ||
95 | |||
96 | cmd = @$(if $($(quiet)cmd_$(1)),echo ' $($(quiet)cmd_$(1))' &&) $(cmd_$(1)) | ||
97 | |||
98 | |||
99 | # Declare the contents of the .PHONY variable as phony. We keep that | 91 | # Declare the contents of the .PHONY variable as phony. We keep that |
100 | # information in a variable se we can use it in if_changed and friends. | 92 | # information in a variable se we can use it in if_changed and friends. |
101 | 93 | ||
diff --git a/scripts/Makefile.headersinst b/scripts/Makefile.headersinst index 8ccf83056a7a..1106d6ca3a38 100644 --- a/scripts/Makefile.headersinst +++ b/scripts/Makefile.headersinst | |||
@@ -122,7 +122,6 @@ $(check-file): scripts/headers_check.pl $(output-files) FORCE | |||
122 | endif | 122 | endif |
123 | 123 | ||
124 | # Recursion | 124 | # Recursion |
125 | hdr-inst := -rR -f $(srctree)/scripts/Makefile.headersinst obj | ||
126 | .PHONY: $(subdirs) | 125 | .PHONY: $(subdirs) |
127 | $(subdirs): | 126 | $(subdirs): |
128 | $(Q)$(MAKE) $(hdr-inst)=$(obj)/$@ dst=$(_dst)/$@ | 127 | $(Q)$(MAKE) $(hdr-inst)=$(obj)/$@ dst=$(_dst)/$@ |
diff --git a/scripts/kconfig/menu.c b/scripts/kconfig/menu.c index a26cc5d2a9b0..72c9dba84c5d 100644 --- a/scripts/kconfig/menu.c +++ b/scripts/kconfig/menu.c | |||
@@ -548,7 +548,7 @@ static void get_prompt_str(struct gstr *r, struct property *prop, | |||
548 | { | 548 | { |
549 | int i, j; | 549 | int i, j; |
550 | struct menu *submenu[8], *menu, *location = NULL; | 550 | struct menu *submenu[8], *menu, *location = NULL; |
551 | struct jump_key *jump; | 551 | struct jump_key *jump = NULL; |
552 | 552 | ||
553 | str_printf(r, _("Prompt: %s\n"), _(prop->text)); | 553 | str_printf(r, _("Prompt: %s\n"), _(prop->text)); |
554 | menu = prop->menu->parent; | 554 | menu = prop->menu->parent; |
@@ -586,7 +586,7 @@ static void get_prompt_str(struct gstr *r, struct property *prop, | |||
586 | str_printf(r, _(" Location:\n")); | 586 | str_printf(r, _(" Location:\n")); |
587 | for (j = 4; --i >= 0; j += 2) { | 587 | for (j = 4; --i >= 0; j += 2) { |
588 | menu = submenu[i]; | 588 | menu = submenu[i]; |
589 | if (head && location && menu == location) | 589 | if (jump && menu == location) |
590 | jump->offset = strlen(r->s); | 590 | jump->offset = strlen(r->s); |
591 | str_printf(r, "%*c-> %s", j, ' ', | 591 | str_printf(r, "%*c-> %s", j, ' ', |
592 | _(menu_get_prompt(menu))); | 592 | _(menu_get_prompt(menu))); |