forked from luck/tmp_suning_uos_patched
kbuild: thin archives final link close --whole-archives option
Close the --whole-archives option with --no-whole-archive. Some architectures end up including additional .o and files multiple times after this, and they get duplicate symbols when they are brought under the --whole-archives option. This matches more closely with the incremental final link. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
This commit is contained in:
parent
df91b0262e
commit
1328a1ae0e
|
@ -63,7 +63,7 @@ modpost_link()
|
||||||
local objects
|
local objects
|
||||||
|
|
||||||
if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
||||||
objects="--whole-archive built-in.o"
|
objects="--whole-archive built-in.o --no-whole-archive"
|
||||||
else
|
else
|
||||||
objects="${KBUILD_VMLINUX_INIT} \
|
objects="${KBUILD_VMLINUX_INIT} \
|
||||||
--start-group \
|
--start-group \
|
||||||
|
@ -83,7 +83,7 @@ vmlinux_link()
|
||||||
|
|
||||||
if [ "${SRCARCH}" != "um" ]; then
|
if [ "${SRCARCH}" != "um" ]; then
|
||||||
if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
||||||
objects="--whole-archive built-in.o ${1}"
|
objects="--whole-archive built-in.o ${1} --no-whole-archive"
|
||||||
else
|
else
|
||||||
objects="${KBUILD_VMLINUX_INIT} \
|
objects="${KBUILD_VMLINUX_INIT} \
|
||||||
--start-group \
|
--start-group \
|
||||||
|
@ -96,7 +96,7 @@ vmlinux_link()
|
||||||
-T ${lds} ${objects}
|
-T ${lds} ${objects}
|
||||||
else
|
else
|
||||||
if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
||||||
objects="-Wl,--whole-archive built-in.o ${1}"
|
objects="-Wl,--whole-archive built-in.o ${1} -Wl,--no-whole-archive"
|
||||||
else
|
else
|
||||||
objects="${KBUILD_VMLINUX_INIT} \
|
objects="${KBUILD_VMLINUX_INIT} \
|
||||||
-Wl,--start-group \
|
-Wl,--start-group \
|
||||||
|
|
Loading…
Reference in New Issue
Block a user