With the incremental linking entirely dropped, we can simplify the Makefile. While I am here, I renamed cmd_link_o_target to cmd_ar_builtin.
Showing the changes to scripts (1 of 1 file). Show all
Unified · Split
| @@ -450,17 +450,12 @@ ifdef builtin-target · 449 unmodified lines | ||
| 450 | 450 | # makes them small and fast, but unable to be used by the linker. |
| 451 | 451 | # scripts/link-vmlinux.sh builds an aggregate built-in.a with a symbol |
| 452 | 452 | # table and index. |
| 453 | −cmd_make_builtin = rm -f $@; $(AR) rcSTP$(KBUILD_ARFLAGS) | |
| 454 | −cmd_make_empty_builtin = rm -f $@; $(AR) rcSTP$(KBUILD_ARFLAGS) | |
| 455 | −quiet_cmd_link_o_target = AR $@ | |
| 456 | − | |
| 457 | −# If the list of objects to link is empty, just create an empty built-in.a | |
| 458 | −cmd_link_o_target = $(if $(strip $(real-obj-y)),\ | |
| 459 | − $(cmd_make_builtin) $@ $(filter $(real-obj-y), $^), \ | |
| 460 | − $(cmd_make_empty_builtin) $@) | |
| 453 | +quiet_cmd_ar_builtin = AR $@ | |
| 454 | + cmd_ar_builtin = rm -f $@; \ | |
| 455 | + $(AR) rcSTP$(KBUILD_ARFLAGS) $@ $(filter $(real-obj-y), $^) | |
| 461 | 456 | |
| 462 | 457 | $(builtin-target): $(real-obj-y) FORCE |
| 463 | − $(call if_changed,link_o_target) | |
| 458 | + $(call if_changed,ar_builtin) | |
| 464 | 459 | |
| 465 | 460 | targets += $(builtin-target) |
| 466 | 461 | endif # builtin-target |