diff --git a/build.config.mtk.aarch64 b/build.config.mtk.aarch64 index acbb561facbe..a67e2b8cf532 100644 --- a/build.config.mtk.aarch64 +++ b/build.config.mtk.aarch64 @@ -1,12 +1,18 @@ ARCH=arm64 -CLANG_TRIPLE=aarch64-linux-gnu- -CROSS_COMPILE=aarch64-linux-androidkernel- -CC=clang -LD=ld.lld +CROSS_COMPILE=aarch64-linux-gnu- +LLVM=1 +LLVM_IAS=1 LD_LIBRARY_PATH=prebuilts/clang/host/linux-x86/clang-r383902/lib64:$$LD_LIBRARY_PATH -NM=llvm-nm -OBJCOPY=llvm-objcopy # DEFCONFIG=defconfig KERNEL_DIR=kernel-4.19 CLANG_PREBUILT_BIN=prebuilts/clang/host/linux-x86/clang-r383902/bin -LINUX_GCC_CROSS_COMPILE_PREBUILTS_BIN=prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin +# for check scripts +CC=clang +LD=ld.lld +AR=llvm-ar +NM=llvm-nm +OBJCOPY=llvm-objcopy +OBJDUMP=llvm-objdump +READELF=llvm-readelf +OBJSIZE=llvm-size +STRIP=llvm-strip diff --git a/build.config.mtk.aarch64.kasan b/build.config.mtk.aarch64.kasan index acbb561facbe..a67e2b8cf532 100644 --- a/build.config.mtk.aarch64.kasan +++ b/build.config.mtk.aarch64.kasan @@ -1,12 +1,18 @@ ARCH=arm64 -CLANG_TRIPLE=aarch64-linux-gnu- -CROSS_COMPILE=aarch64-linux-androidkernel- -CC=clang -LD=ld.lld +CROSS_COMPILE=aarch64-linux-gnu- +LLVM=1 +LLVM_IAS=1 LD_LIBRARY_PATH=prebuilts/clang/host/linux-x86/clang-r383902/lib64:$$LD_LIBRARY_PATH -NM=llvm-nm -OBJCOPY=llvm-objcopy # DEFCONFIG=defconfig KERNEL_DIR=kernel-4.19 CLANG_PREBUILT_BIN=prebuilts/clang/host/linux-x86/clang-r383902/bin -LINUX_GCC_CROSS_COMPILE_PREBUILTS_BIN=prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin +# for check scripts +CC=clang +LD=ld.lld +AR=llvm-ar +NM=llvm-nm +OBJCOPY=llvm-objcopy +OBJDUMP=llvm-objdump +READELF=llvm-readelf +OBJSIZE=llvm-size +STRIP=llvm-strip diff --git a/build.config.mtk.aarch64.ubsan b/build.config.mtk.aarch64.ubsan index acbb561facbe..a67e2b8cf532 100644 --- a/build.config.mtk.aarch64.ubsan +++ b/build.config.mtk.aarch64.ubsan @@ -1,12 +1,18 @@ ARCH=arm64 -CLANG_TRIPLE=aarch64-linux-gnu- -CROSS_COMPILE=aarch64-linux-androidkernel- -CC=clang -LD=ld.lld +CROSS_COMPILE=aarch64-linux-gnu- +LLVM=1 +LLVM_IAS=1 LD_LIBRARY_PATH=prebuilts/clang/host/linux-x86/clang-r383902/lib64:$$LD_LIBRARY_PATH -NM=llvm-nm -OBJCOPY=llvm-objcopy # DEFCONFIG=defconfig KERNEL_DIR=kernel-4.19 CLANG_PREBUILT_BIN=prebuilts/clang/host/linux-x86/clang-r383902/bin -LINUX_GCC_CROSS_COMPILE_PREBUILTS_BIN=prebuilts/gcc/linux-x86/aarch64/aarch64-linux-android-4.9/bin +# for check scripts +CC=clang +LD=ld.lld +AR=llvm-ar +NM=llvm-nm +OBJCOPY=llvm-objcopy +OBJDUMP=llvm-objdump +READELF=llvm-readelf +OBJSIZE=llvm-size +STRIP=llvm-strip diff --git a/build.config.mtk.arm b/build.config.mtk.arm index fb120d014a04..9a9b31a841fe 100644 --- a/build.config.mtk.arm +++ b/build.config.mtk.arm @@ -1,9 +1,19 @@ ARCH=arm -CLANG_TRIPLE=arm-linux-gnueabi- -CROSS_COMPILE=arm-linux-androidkernel- -CC=clang -LD=ld.lld + +CROSS_COMPILE=arm-linux-gnueabi- +LLVM=1 + # DEFCONFIG=defconfig KERNEL_DIR=kernel-4.19 CLANG_PREBUILT_BIN=prebuilts/clang/host/linux-x86/clang-r383902/bin -LINUX_GCC_CROSS_COMPILE_PREBUILTS_BIN=prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.9/bin +LINUX_GCC_CROSS_COMPILE_PREBUILTS_BIN=prebuilts/gas/linux-x86 +# for check scripts +CC=clang +LD=ld.lld +AR=llvm-ar +NM=llvm-nm +OBJCOPY=llvm-objcopy +OBJDUMP=llvm-objdump +READELF=llvm-readelf +OBJSIZE=llvm-size +STRIP=llvm-strip diff --git a/kenv.mk b/kenv.mk index 1e37e4901b5e..a82831bca871 100644 --- a/kenv.mk +++ b/kenv.mk @@ -38,38 +38,37 @@ ifneq ($(strip $(TARGET_NO_KERNEL)),true) endif ARGS := CROSS_COMPILE=$(CROSS_COMPILE) - ifneq ($(CLANG_TRIPLE),) - ARGS += CLANG_TRIPLE=$(CLANG_TRIPLE) - endif - ifneq ($(LD),) - ARGS += LD=$(LD) - endif - ifneq ($(LD_LIBRARY_PATH),) - ARGS += LD_LIBRARY_PATH=$(KERNEL_ROOT_DIR)/$(LD_LIBRARY_PATH) - endif - ifneq ($(NM),) - ARGS += NM=$(NM) - endif - ifneq ($(OBJCOPY),) - ARGS += OBJCOPY=$(OBJCOPY) - endif - ifeq ("$(CC)", "gcc") - CC := - endif - - ifneq ($(filter-out false,$(USE_CCACHE)),) - CCACHE_EXEC ?= /usr/bin/ccache - CCACHE_EXEC := $(abspath $(wildcard $(CCACHE_EXEC))) - else - CCACHE_EXEC := - endif - ifneq ($(CCACHE_EXEC),) - ifneq ($(CC),) - ARGS += CCACHE_CPP2=yes CC='$(CCACHE_EXEC) $(CC)' + ifneq ($(LLVM),) + ARGS += LLVM=1 + ifneq ($(filter-out false,$(USE_CCACHE)),) + CCACHE_EXEC ?= /usr/bin/ccache + CCACHE_EXEC := $(abspath $(wildcard $(CCACHE_EXEC))) + else + CCACHE_EXEC := endif - else - ifneq ($(CC),) - ARGS += CC=$(CC) + ifneq ($(CCACHE_EXEC),) + ARGS += CCACHE_CPP2=yes CC='$(CCACHE_EXEC) clang' + else + ARGS += CC=clang + endif + ifneq ($(LLVM_IAS),) + ARGS += LLVM_IAS=$(LLVM_IAS) + endif + ifeq ($(HOSTCC),) + ifneq ($(CC),) + ARGS += HOSTCC=$(CC) + endif + else + ARGS += HOSTCC=$(HOSTCC) + endif + ifneq ($(LD),) + ARGS += LD=$(LD) HOSTLD=$(LD) + ifneq ($(suffix $(LD)),) + ARGS += HOSTLDFLAGS=-fuse-ld=$(subst .,,$(suffix $(LD))) + endif + endif + ifneq ($(LD_LIBRARY_PATH),) + ARGS += LD_LIBRARY_PATH=$(KERNEL_ROOT_DIR)/$(LD_LIBRARY_PATH) endif endif