Makefile.build (b3591e061919c837c14680c1ceff8f009ed0afb4) | Makefile.build (9413e7640564fe70b24ea1a9ff3fb92c5bb52fcb) |
---|---|
1# SPDX-License-Identifier: GPL-2.0 2# ========================================================================== 3# Building 4# ========================================================================== 5 6src := $(obj) 7 8PHONY := __build --- 71 unchanged lines hidden (view full) --- 80ifneq ($(strip $(lib-y) $(lib-m) $(lib-)),) 81targets-for-builtin += $(obj)/lib.a 82endif 83 84ifdef need-builtin 85targets-for-builtin += $(obj)/built-in.a 86endif 87 | 1# SPDX-License-Identifier: GPL-2.0 2# ========================================================================== 3# Building 4# ========================================================================== 5 6src := $(obj) 7 8PHONY := __build --- 71 unchanged lines hidden (view full) --- 80ifneq ($(strip $(lib-y) $(lib-m) $(lib-)),) 81targets-for-builtin += $(obj)/lib.a 82endif 83 84ifdef need-builtin 85targets-for-builtin += $(obj)/built-in.a 86endif 87 |
88targets-for-modules := $(patsubst %.o, %.mod, $(filter %.o, $(obj-m))) | 88targets-for-modules := $(foreach x, mod $(if $(CONFIG_TRIM_UNUSED_KSYMS), usyms), \ 89 $(patsubst %.o, %.$x, $(filter %.o, $(obj-m)))) |
89 90ifneq ($(CONFIG_LTO_CLANG)$(CONFIG_X86_KERNEL_IBT),) 91targets-for-modules += $(patsubst %.o, %.prelink.o, $(filter %.o, $(obj-m))) 92endif 93 94ifdef need-modorder 95targets-for-modules += $(obj)/modules.order 96endif --- 154 unchanged lines hidden (view full) --- 251$(obj)/%.o: objtool-enabled = $(if $(filter-out y%, \ 252 $(OBJECT_FILES_NON_STANDARD_$(basetarget).o)$(OBJECT_FILES_NON_STANDARD)n),y) 253 254endif 255 256ifdef CONFIG_TRIM_UNUSED_KSYMS 257cmd_gen_ksymdeps = \ 258 $(CONFIG_SHELL) $(srctree)/scripts/gen_ksymdeps.sh $@ >> $(dot-target).cmd | 90 91ifneq ($(CONFIG_LTO_CLANG)$(CONFIG_X86_KERNEL_IBT),) 92targets-for-modules += $(patsubst %.o, %.prelink.o, $(filter %.o, $(obj-m))) 93endif 94 95ifdef need-modorder 96targets-for-modules += $(obj)/modules.order 97endif --- 154 unchanged lines hidden (view full) --- 252$(obj)/%.o: objtool-enabled = $(if $(filter-out y%, \ 253 $(OBJECT_FILES_NON_STANDARD_$(basetarget).o)$(OBJECT_FILES_NON_STANDARD)n),y) 254 255endif 256 257ifdef CONFIG_TRIM_UNUSED_KSYMS 258cmd_gen_ksymdeps = \ 259 $(CONFIG_SHELL) $(srctree)/scripts/gen_ksymdeps.sh $@ >> $(dot-target).cmd |
259 260# List module undefined symbols 261undefined_syms = $(NM) $< | $(AWK) '$$1 == "U" { printf("%s%s", x++ ? " " : "", $$2) }'; | |
262endif 263 264define rule_cc_o_c 265 $(call cmd_and_fixdep,cc_o_c) 266 $(call cmd,gen_ksymdeps) 267 $(call cmd,checksrc) 268 $(call cmd,checkdoc) 269 $(call cmd,gen_objtooldep) --- 30 unchanged lines hidden (view full) --- 300# modules into native code 301$(obj)/%.prelink.o: objtool-enabled = y 302$(obj)/%.prelink.o: part-of-module := y 303 304$(obj)/%.prelink.o: $(obj)/%.o FORCE 305 $(call if_changed,cc_prelink_modules) 306endif 307 | 260endif 261 262define rule_cc_o_c 263 $(call cmd_and_fixdep,cc_o_c) 264 $(call cmd,gen_ksymdeps) 265 $(call cmd,checksrc) 266 $(call cmd,checkdoc) 267 $(call cmd,gen_objtooldep) --- 30 unchanged lines hidden (view full) --- 298# modules into native code 299$(obj)/%.prelink.o: objtool-enabled = y 300$(obj)/%.prelink.o: part-of-module := y 301 302$(obj)/%.prelink.o: $(obj)/%.o FORCE 303 $(call if_changed,cc_prelink_modules) 304endif 305 |
308cmd_mod = { \ 309 echo $(addprefix $(obj)/, $(call real-search, $*.o, .o, -objs -y -m)); \ 310 $(undefined_syms) echo; \ 311 } > $@ | 306cmd_mod = echo $(addprefix $(obj)/, $(call real-search, $*.o, .o, -objs -y -m)) > $@ |
312 313$(obj)/%.mod: $(obj)/%$(mod-prelink-ext).o FORCE 314 $(call if_changed,mod) 315 | 307 308$(obj)/%.mod: $(obj)/%$(mod-prelink-ext).o FORCE 309 $(call if_changed,mod) 310 |
311# List module undefined symbols 312cmd_undefined_syms = $(NM) $< | sed -n 's/^ *U //p' > $@ 313 314$(obj)/%.usyms: $(obj)/%$(mod-prelink-ext).o FORCE 315 $(call if_changed,undefined_syms) 316 |
|
316quiet_cmd_cc_lst_c = MKLST $@ 317 cmd_cc_lst_c = $(CC) $(c_flags) -g -c -o $*.o $< && \ 318 $(CONFIG_SHELL) $(srctree)/scripts/makelst $*.o \ 319 System.map $(OBJDUMP) > $@ 320 321$(obj)/%.lst: $(src)/%.c FORCE 322 $(call if_changed_dep,cc_lst_c) 323 --- 240 unchanged lines hidden --- | 317quiet_cmd_cc_lst_c = MKLST $@ 318 cmd_cc_lst_c = $(CC) $(c_flags) -g -c -o $*.o $< && \ 319 $(CONFIG_SHELL) $(srctree)/scripts/makelst $*.o \ 320 System.map $(OBJDUMP) > $@ 321 322$(obj)/%.lst: $(src)/%.c FORCE 323 $(call if_changed_dep,cc_lst_c) 324 --- 240 unchanged lines hidden --- |