|
@@ -55,13 +55,11 @@ info()
|
|
|
#
|
|
|
archive_builtin()
|
|
|
{
|
|
|
- if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
|
|
- info AR built-in.o
|
|
|
- rm -f built-in.o;
|
|
|
- ${AR} rcsTP${KBUILD_ARFLAGS} built-in.o \
|
|
|
- ${KBUILD_VMLINUX_INIT} \
|
|
|
- ${KBUILD_VMLINUX_MAIN}
|
|
|
- fi
|
|
|
+ info AR built-in.o
|
|
|
+ rm -f built-in.o;
|
|
|
+ ${AR} rcsTP${KBUILD_ARFLAGS} built-in.o \
|
|
|
+ ${KBUILD_VMLINUX_INIT} \
|
|
|
+ ${KBUILD_VMLINUX_MAIN}
|
|
|
}
|
|
|
|
|
|
# Link of vmlinux.o used for section mismatch analysis
|
|
@@ -70,20 +68,13 @@ modpost_link()
|
|
|
{
|
|
|
local objects
|
|
|
|
|
|
- if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
|
|
- objects="--whole-archive \
|
|
|
- built-in.o \
|
|
|
- --no-whole-archive \
|
|
|
- --start-group \
|
|
|
- ${KBUILD_VMLINUX_LIBS} \
|
|
|
- --end-group"
|
|
|
- else
|
|
|
- objects="${KBUILD_VMLINUX_INIT} \
|
|
|
- --start-group \
|
|
|
- ${KBUILD_VMLINUX_MAIN} \
|
|
|
- ${KBUILD_VMLINUX_LIBS} \
|
|
|
- --end-group"
|
|
|
- fi
|
|
|
+ objects="--whole-archive \
|
|
|
+ built-in.o \
|
|
|
+ --no-whole-archive \
|
|
|
+ --start-group \
|
|
|
+ ${KBUILD_VMLINUX_LIBS} \
|
|
|
+ --end-group"
|
|
|
+
|
|
|
${LD} ${LDFLAGS} -r -o ${1} ${objects}
|
|
|
}
|
|
|
|
|
@@ -96,46 +87,28 @@ vmlinux_link()
|
|
|
local objects
|
|
|
|
|
|
if [ "${SRCARCH}" != "um" ]; then
|
|
|
- if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
|
|
- objects="--whole-archive \
|
|
|
- built-in.o \
|
|
|
- --no-whole-archive \
|
|
|
- --start-group \
|
|
|
- ${KBUILD_VMLINUX_LIBS} \
|
|
|
- --end-group \
|
|
|
- ${1}"
|
|
|
- else
|
|
|
- objects="${KBUILD_VMLINUX_INIT} \
|
|
|
- --start-group \
|
|
|
- ${KBUILD_VMLINUX_MAIN} \
|
|
|
- ${KBUILD_VMLINUX_LIBS} \
|
|
|
- --end-group \
|
|
|
- ${1}"
|
|
|
- fi
|
|
|
-
|
|
|
- ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} \
|
|
|
+ objects="--whole-archive \
|
|
|
+ built-in.o \
|
|
|
+ --no-whole-archive \
|
|
|
+ --start-group \
|
|
|
+ ${KBUILD_VMLINUX_LIBS} \
|
|
|
+ --end-group \
|
|
|
+ ${1}"
|
|
|
+
|
|
|
+ ${LD} ${LDFLAGS} ${LDFLAGS_vmlinux} -o ${2} \
|
|
|
-T ${lds} ${objects}
|
|
|
else
|
|
|
- if [ -n "${CONFIG_THIN_ARCHIVES}" ]; then
|
|
|
- objects="-Wl,--whole-archive \
|
|
|
- built-in.o \
|
|
|
- -Wl,--no-whole-archive \
|
|
|
- -Wl,--start-group \
|
|
|
- ${KBUILD_VMLINUX_LIBS} \
|
|
|
- -Wl,--end-group \
|
|
|
- ${1}"
|
|
|
- else
|
|
|
- objects="${KBUILD_VMLINUX_INIT} \
|
|
|
- -Wl,--start-group \
|
|
|
- ${KBUILD_VMLINUX_MAIN} \
|
|
|
- ${KBUILD_VMLINUX_LIBS} \
|
|
|
- -Wl,--end-group \
|
|
|
- ${1}"
|
|
|
- fi
|
|
|
-
|
|
|
- ${CC} ${CFLAGS_vmlinux} -o ${2} \
|
|
|
- -Wl,-T,${lds} \
|
|
|
- ${objects} \
|
|
|
+ objects="-Wl,--whole-archive \
|
|
|
+ built-in.o \
|
|
|
+ -Wl,--no-whole-archive \
|
|
|
+ -Wl,--start-group \
|
|
|
+ ${KBUILD_VMLINUX_LIBS} \
|
|
|
+ -Wl,--end-group \
|
|
|
+ ${1}"
|
|
|
+
|
|
|
+ ${CC} ${CFLAGS_vmlinux} -o ${2} \
|
|
|
+ -Wl,-T,${lds} \
|
|
|
+ ${objects} \
|
|
|
-lutil -lrt -lpthread
|
|
|
rm -f linux
|
|
|
fi
|