|
@@ -331,12 +331,11 @@ $(sort $(subdir-obj-y)): $(subdir-ym) ;
|
|
|
# Rule to compile a set of .o files into one .o file
|
|
|
#
|
|
|
ifdef builtin-target
|
|
|
-quiet_cmd_link_o_target = LD $@
|
|
|
+quiet_cmd_link_o_target = AR $@
|
|
|
# If the list of objects to link is empty, just create an empty built-in.o
|
|
|
cmd_link_o_target = $(if $(strip $(obj-y)),\
|
|
|
- $(LD) $(ld_flags) -r -o $@ $(filter $(obj-y), $^) \
|
|
|
- $(cmd_secanalysis),\
|
|
|
- rm -f $@; $(AR) rcs$(KBUILD_ARFLAGS) $@)
|
|
|
+ rm -f $@; $(AR) cDPrsT $@ $(filter $(obj-y), $^), \
|
|
|
+ rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@)
|
|
|
|
|
|
$(builtin-target): $(obj-y) FORCE
|
|
|
$(call if_changed,link_o_target)
|
|
@@ -362,7 +361,7 @@ $(modorder-target): $(subdir-ym) FORCE
|
|
|
#
|
|
|
ifdef lib-target
|
|
|
quiet_cmd_link_l_target = AR $@
|
|
|
-cmd_link_l_target = rm -f $@; $(AR) rcs$(KBUILD_ARFLAGS) $@ $(lib-y)
|
|
|
+cmd_link_l_target = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(lib-y)
|
|
|
|
|
|
$(lib-target): $(lib-y) FORCE
|
|
|
$(call if_changed,link_l_target)
|
|
@@ -382,10 +381,11 @@ $(filter $(addprefix $(obj)/, \
|
|
|
$($(subst $(obj)/,,$(@:.o=-objs))) \
|
|
|
$($(subst $(obj)/,,$(@:.o=-y)))), $^)
|
|
|
|
|
|
-quiet_cmd_link_multi-y = LD $@
|
|
|
-cmd_link_multi-y = $(LD) $(ld_flags) -r -o $@ $(link_multi_deps) $(cmd_secanalysis)
|
|
|
|
|
|
-quiet_cmd_link_multi-m = LD [M] $@
|
|
|
+quiet_cmd_link_multi-y = AR $@
|
|
|
+cmd_link_multi-y = rm -f $@; $(AR) cDPrsT$(KBUILD_ARFLAGS) $@ $(link_multi_deps)
|
|
|
+
|
|
|
+quiet_cmd_link_multi-m = AR [M] $@
|
|
|
cmd_link_multi-m = $(cmd_link_multi-y)
|
|
|
|
|
|
$(multi-used-y): FORCE
|