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 ---