diff options
author | Nicholas Piggin <npiggin@gmail.com> | 2018-02-11 00:25:03 +1000 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-03-26 02:01:19 +0900 |
commit | 6358d6e8b9846c2ff6fd1d4ad2809145635dd813 (patch) | |
tree | 3e2ac4f41fef7aaa4207eec852b992f0cfa3b73c /Documentation/kbuild/makefiles.txt | |
parent | 1fe7d2bb24d7db6175e0b0a31d8fe03dc6ffb16e (diff) | |
download | lwn-6358d6e8b9846c2ff6fd1d4ad2809145635dd813.tar.gz lwn-6358d6e8b9846c2ff6fd1d4ad2809145635dd813.zip |
kbuild: remove incremental linking option
This removes the old `ld -r` incremental link option, which has not
been selected by any architecture since June 2017.
Signed-off-by: Nicholas Piggin <npiggin@gmail.com>
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
Diffstat (limited to 'Documentation/kbuild/makefiles.txt')
-rw-r--r-- | Documentation/kbuild/makefiles.txt | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/Documentation/kbuild/makefiles.txt b/Documentation/kbuild/makefiles.txt index 71e9feefb63c..750aea9edd35 100644 --- a/Documentation/kbuild/makefiles.txt +++ b/Documentation/kbuild/makefiles.txt @@ -153,8 +153,14 @@ more details, with real examples. configuration. Kbuild compiles all the $(obj-y) files. It then calls - "$(LD) -r" to merge these files into one built-in.o file. - built-in.o is later linked into vmlinux by the parent Makefile. + "$(AR) rcSTP" to merge these files into one built-in.o file. + This is a thin archive without a symbol table, which makes it + unsuitable as a linker input. + + The scripts/link-vmlinux.sh script later makes an aggregate + built-in.o with "${AR} rcsTP", which creates the thin archive + with a symbol table and an index, making it a valid input for + the final vmlinux link passes. The order of files in $(obj-y) is significant. Duplicates in the lists are allowed: the first instance will be linked into |