diff options
author | Nicholas Piggin <npiggin@gmail.com> | 2018-02-10 09:25:03 -0500 |
---|---|---|
committer | Masahiro Yamada <yamada.masahiro@socionext.com> | 2018-03-25 13:01:19 -0400 |
commit | 6358d6e8b9846c2ff6fd1d4ad2809145635dd813 (patch) | |
tree | 3e2ac4f41fef7aaa4207eec852b992f0cfa3b73c /scripts/link-vmlinux.sh | |
parent | 1fe7d2bb24d7db6175e0b0a31d8fe03dc6ffb16e (diff) |
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 'scripts/link-vmlinux.sh')
-rwxr-xr-x | scripts/link-vmlinux.sh | 91 |
1 files changed, 32 insertions, 59 deletions
diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index be56a1153014..601ca8b528b3 100755 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh | |||
@@ -55,13 +55,11 @@ info() | |||
55 | # | 55 | # |
56 | archive_builtin() | 56 | archive_builtin() |
57 | { | 57 | { |
58 | if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then | 58 | info AR built-in.o |
59 | info AR built-in.o | 59 | rm -f built-in.o; |
60 | rm -f built-in.o; | 60 | ${AR} rcsTP${KBUILD_ARFLAGS} built-in.o \ |
61 | ${AR} rcsTP${KBUILD_ARFLAGS} built-in.o \ | 61 | ${KBUILD_VMLINUX_INIT} \ |
62 | ${KBUILD_VMLINUX_INIT} \ | 62 | ${KBUILD_VMLINUX_MAIN} |
63 | ${KBUILD_VMLINUX_MAIN} | ||
64 | fi | ||
65 | } | 63 | } |
66 | 64 | ||
67 | # Link of vmlinux.o used for section mismatch analysis | 65 | # Link of vmlinux.o used for section mismatch analysis |
@@ -70,20 +68,13 @@ modpost_link() | |||
70 | { | 68 | { |
71 | local objects | 69 | local objects |
72 | 70 | ||
73 | if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then | 71 | objects="--whole-archive \ |
74 | objects="--whole-archive \ | 72 | built-in.o \ |
75 | built-in.o \ | 73 | --no-whole-archive \ |
76 | --no-whole-archive \ | 74 | --start-group \ |
77 | --start-group \ | 75 | ${KBUILD_VMLINUX_LIBS} \ |
78 | ${KBUILD_VMLINUX_LIBS} \ | 76 | --end-group" |
79 | --end-group" | 77 | |
80 | else | ||
81 | objects="${KBUILD_VMLINUX_INIT} \ | ||
82 | --start-group \ | ||
83 | ${KBUILD_VMLINUX_MAIN} \ | ||
84 | ${KBUILD_VMLINUX_LIBS} \ | ||
85 | --end-group" | ||
86 | fi | ||
87 | ${LD} ${LDFLAGS} -r -o ${1} ${objects} | 78 | ${LD} ${LDFLAGS} -r -o ${1} ${objects} |
88 | } | 79 | } |
89 | 80 | ||
@@ -96,46 +87,28 @@ vmlinux_link() | |||
96 | local objects | 87 | local objects |
97 | 88 | ||
98 | if [ "${SRCARCH}" != "um" ]; then | 89 | if [ "${SRCARCH}" != "um" ]; then |
99 | if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then | 90 | objects="--whole-archive \ |
100 | objects="--whole-archive \ | 91 | built-in.o \ |
101 | built-in.o \ | 92 | --no-whole-archive \ |
102 | --no-whole-archive \ | 93 | --start-group \ |
103 | --start-group \ | 94 | ${KBUILD_VMLINUX_LIBS} \ |
104 | ${KBUILD_VMLINUX_LIBS} \ | 95 | --end-group \ |
105 | --end-group \ | 96 | ${1}" |
106 | ${1}" | 97 | |
107 | else | 98 | ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} \ |
108 | objects="${KBUILD_VMLINUX_INIT} \ | ||
109 | --start-group \ | ||
110 | ${KBUILD_VMLINUX_MAIN} \ | ||
111 | ${KBUILD_VMLINUX_LIBS} \ | ||
112 | --end-group \ | ||
113 | ${1}" | ||
114 | fi | ||
115 | |||
116 | ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} \ | ||
117 | -T ${lds} ${objects} | 99 | -T ${lds} ${objects} |
118 | else | 100 | else |
119 | if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then | 101 | objects="-Wl,--whole-archive \ |
120 | objects="-Wl,--whole-archive \ | 102 | built-in.o \ |
121 | built-in.o \ | 103 | -Wl,--no-whole-archive \ |
122 | -Wl,--no-whole-archive \ | 104 | -Wl,--start-group \ |
123 | -Wl,--start-group \ | 105 | ${KBUILD_VMLINUX_LIBS} \ |
124 | ${KBUILD_VMLINUX_LIBS} \ | 106 | -Wl,--end-group \ |
125 | -Wl,--end-group \ | 107 | ${1}" |
126 | ${1}" | 108 | |
127 | else | 109 | ${CC} ${CFLAGS_vmlinux} -o ${2} \ |
128 | objects="${KBUILD_VMLINUX_INIT} \ | 110 | -Wl,-T,${lds} \ |
129 | -Wl,--start-group \ | 111 | ${objects} \ |
130 | ${KBUILD_VMLINUX_MAIN} \ | ||
131 | ${KBUILD_VMLINUX_LIBS} \ | ||
132 | -Wl,--end-group \ | ||
133 | ${1}" | ||
134 | fi | ||
135 | |||
136 | ${CC} ${CFLAGS_vmlinux} -o ${2} \ | ||
137 | -Wl,-T,${lds} \ | ||
138 | ${objects} \ | ||
139 | -lutil -lrt -lpthread | 112 | -lutil -lrt -lpthread |
140 | rm -f linux | 113 | rm -f linux |
141 | fi | 114 | fi |