History

kbuild: add kbuild-file macro

While building, installing, cleaning, Kbuild visits sub-directories and includes 'Kbuild' or 'Makefile' that exists there. Add 'kbuild-file' macro, and reuse it from scripts/Makefie.*

Masahiro Yamada committed 3 years ago

Commit a2430b21 parent 5724ac56 files · +12 −14Browse files

Unified · Split

6 files
  1. scripts/Kbuild.include +5 −0
  2. scripts/Makefile.asm-generic +3 −3
  3. scripts/Makefile.build +1 −5
  4. scripts/Makefile.clean +1 −4
  5. scripts/Makefile.dtbinst +1 −1
  6. scripts/Makefile.modpost +1 −1
scripts/Kbuild.include+5−0
@@ -40,6 +40,11 @@ escsq = $(subst $(squote),'\$(squote)',$1) · 39 unmodified lines
40# Quote a string to pass it to C files. foo => '"foo"'40# Quote a string to pass it to C files. foo => '"foo"'
41stringify = $(squote)$(quote)$1$(quote)$(squote)41stringify = $(squote)$(quote)$1$(quote)$(squote)
42 42
43###
44# The path to Kbuild or Makefile. Kbuild has precedence over Makefile.
45kbuild-dir = $(if $(filter /%,$(src)),$(src),$(srctree)/$(src))
46kbuild-file = $(or $(wildcard $(kbuild-dir)/Kbuild),$(kbuild-dir)/Makefile)
47
43###48###
44# Easy method for doing a status message49# Easy method for doing a status message
45 kecho := :50 kecho := :
scripts/Makefile.asm-generic+3−3
@@ -10,15 +10,15 @@ PHONY := all · 9 unmodified lines
10all:10all:
11 11
12src := $(subst /generated,,$(obj))12src := $(subst /generated,,$(obj))
13-include $(src)/Kbuild13
14include $(srctree)/scripts/Kbuild.include
15-include $(kbuild-file)
14 16
15# $(generic)/Kbuild lists mandatory-y. Exclude um since it is a special case.17# $(generic)/Kbuild lists mandatory-y. Exclude um since it is a special case.
16ifneq ($(SRCARCH),um)18ifneq ($(SRCARCH),um)
17include $(srctree)/$(generic)/Kbuild19include $(srctree)/$(generic)/Kbuild
18endif20endif
19 21
20include $(srctree)/scripts/Kbuild.include
21
22redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))22redundant := $(filter $(mandatory-y) $(generated-y), $(generic-y))
23redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f)))23redundant += $(foreach f, $(generic-y), $(if $(wildcard $(srctree)/$(src)/$(f)),$(f)))
24redundant := $(sort $(redundant))24redundant := $(sort $(redundant))
scripts/Makefile.build+1−5
@@ -38,11 +38,7 @@ subdir-ccflags-y := · 37 unmodified lines
38 38
39include $(srctree)/scripts/Kbuild.include39include $(srctree)/scripts/Kbuild.include
40include $(srctree)/scripts/Makefile.compiler40include $(srctree)/scripts/Makefile.compiler
41 41include $(kbuild-file)
42# The filename Kbuild has precedence over Makefile
43kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src))
44include $(or $(wildcard $(kbuild-dir)/Kbuild),$(kbuild-dir)/Makefile)
45
46include $(srctree)/scripts/Makefile.lib42include $(srctree)/scripts/Makefile.lib
47 43
48# Do not include hostprogs rules unless needed.44# Do not include hostprogs rules unless needed.
scripts/Makefile.clean+1−4
@@ -9,10 +9,7 @@ PHONY := __clean · 8 unmodified lines
9__clean:9__clean:
10 10
11include $(srctree)/scripts/Kbuild.include11include $(srctree)/scripts/Kbuild.include
12 12include $(kbuild-file)
13# The filename Kbuild has precedence over Makefile
14kbuild-dir := $(if $(filter /%,$(src)),$(src),$(srctree)/$(src))
15include $(or $(wildcard $(kbuild-dir)/Kbuild),$(kbuild-dir)/Makefile)
16 13
17# Figure out what we need to build from the various variables14# Figure out what we need to build from the various variables
18# ==========================================================================15# ==========================================================================
scripts/Makefile.dtbinst+1−1
@@ -15,7 +15,7 @@ __dtbs_install: · 14 unmodified lines
15 15
16include include/config/auto.conf16include include/config/auto.conf
17include $(srctree)/scripts/Kbuild.include17include $(srctree)/scripts/Kbuild.include
18include $(src)/Makefile18include $(kbuild-file)
19 19
20dtbs := $(addprefix $(dst)/, $(dtb-y) $(if $(CONFIG_OF_ALL_DTBS),$(dtb-)))20dtbs := $(addprefix $(dst)/, $(dtb-y) $(if $(CONFIG_OF_ALL_DTBS),$(dtb-)))
21subdirs := $(addprefix $(obj)/, $(subdir-y) $(subdir-m))21subdirs := $(addprefix $(obj)/, $(subdir-y) $(subdir-m))
scripts/Makefile.modpost+1−1
@@ -93,7 +93,7 @@ obj := $(KBUILD_EXTMOD) · 92 unmodified lines
93src := $(obj)93src := $(obj)
94 94
95# Include the module's Makefile to find KBUILD_EXTRA_SYMBOLS95# Include the module's Makefile to find KBUILD_EXTRA_SYMBOLS
96include $(or $(wildcard $(src)/Kbuild), $(src)/Makefile)96include $(kbuild-file)
97 97
98module.symvers-if-present := $(wildcard Module.symvers)98module.symvers-if-present := $(wildcard Module.symvers)
99output-symdump := $(KBUILD_EXTMOD)/Module.symvers99output-symdump := $(KBUILD_EXTMOD)/Module.symvers

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t