aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancisco Franco <franciscofranco.1990@gmail.com>2016-10-22 00:41:15 +0000
committerMoyster <oysterized@gmail.com>2016-11-07 13:47:03 +0100
commite6d67e4723fdbe806eab6f6c05fe0efb633a325b (patch)
treeda861fc99d04b9a51cf4dbc76ebe8be33a20a989
parent81cd48af4ce91983fa556039f52bdede850c4e52 (diff)
arm64: kill off the libgcc dependency
The arm64 kernel builds fine without the libgcc. Actually it should not be used at all in the kernel. The following are the reasons indicated by Russell King: Although libgcc is part of the compiler, libgcc is built with the expectation that it will be running in userland - it expects to link to a libc. That's why you can't build libgcc without having the glibc headers around. [...] Meanwhile, having the kernel build the compiler support functions that it needs ensures that (a) we know what compiler support functions are being used, (b) we know the implementation of those support functions are sane for use in the kernel, (c) we can build them with appropriate compiler flags for best performance, and (d) we remove an unnecessary dependency on the build toolchain. Signed-off-by: Kevin Hao <haokexin@gmail.com> Acked-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> (cherry picked from commit d67703a) Signed-off-by: Alex Shi <alex.shi@linaro.org> Signed-off-by: Francisco Franco <franciscofranco.1990@gmail.com>
-rwxr-xr-xarch/arm64/Makefile3
1 files changed, 0 insertions, 3 deletions
diff --git a/arch/arm64/Makefile b/arch/arm64/Makefile
index 43869bdb6..2477743d9 100755
--- a/arch/arm64/Makefile
+++ b/arch/arm64/Makefile
@@ -15,8 +15,6 @@ CPPFLAGS_vmlinux.lds = -DTEXT_OFFSET=$(TEXT_OFFSET)
OBJCOPYFLAGS :=-O binary -R .note -R .note.gnu.build-id -R .comment -S
GZFLAGS :=-9
-LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name)
-
ifeq ($(CHINAUNICOM_CUSTOMIZE),true)
cflags-$(CONFIG_ARCH_MT6753) += -DMEIZU_OP_CUSTOMIZE
endif
@@ -45,7 +43,6 @@ export TEXT_OFFSET GZFLAGS
core-y += arch/arm64/kernel/ arch/arm64/mm/
core-$(CONFIG_CRYPTO) += arch/arm64/crypto/
libs-y := arch/arm64/lib/ $(libs-y)
-libs-y += $(LIBGCC)
# Default target when executing plain make
ifeq ($(CONFIG_BUILD_ARM64_APPENDED_DTB_IMAGE),y)