diff options
author | qctecmdr <qctecmdr@localhost> | 2020-02-18 00:46:00 -0800 |
---|---|---|
committer | Gerrit - the friendly Code Review server <code-review@localhost> | 2020-02-18 00:46:00 -0800 |
commit | 14ed51fef1b25f0010a703bd8f332da148ec2115 (patch) | |
tree | 59768935175d469dcb0caed2dc20d4c5f4b543fc | |
parent | 9432cabea64e68228acd9e0e3c1f95c82c24418d (diff) | |
parent | caaa95afd5a47c70dcc5b63d850de109c9736c9a (diff) |
Merge "kernelscripts: Add linker needed for CFI/LTO enablement"
-rwxr-xr-x | kernel_definitions.mk | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/kernel_definitions.mk b/kernel_definitions.mk index 4908110..2a57a49 100755 --- a/kernel_definitions.mk +++ b/kernel_definitions.mk @@ -25,8 +25,9 @@ TARGET_KERNEL_MAKE_LDFLAGS = "-L/usr/lib -L/usr/lib/x86_64-linux-gnu" BUILD_CONFIG := $(TARGET_KERNEL_SOURCE)/build.config.common CLANG_VERSION := $(shell IFS="/"; while read LINE; do if [[ $$LINE == *"CLANG_PREBUILT_BIN"* ]]; then read -ra CLANG <<< "$$LINE"; for VERSION in "$${CLANG[@]}"; do if [[ $$VERSION == *"clang-"* ]]; then echo "$$VERSION"; fi; done; fi; done < $(BUILD_CONFIG)) KERNEL_LLVM_BIN := $(lastword $(sort $(wildcard $(SOURCE_ROOT)/$(LLVM_PREBUILTS_BASE)/$(BUILD_OS)-x86/clang-4*)))/bin/clang -KERNEL_AOSP_LLVM_BIN := $(SOURCE_ROOT)/$(LLVM_PREBUILTS_BASE)/$(BUILD_OS)-x86/$(CLANG_VERSION)/bin/clang -USE_KERNEL_AOSP_LLVM := $(shell test -f "$(KERNEL_AOSP_LLVM_BIN)" && echo "true" || echo "false") +KERNEL_AOSP_LLVM_BIN := $(SOURCE_ROOT)/$(LLVM_PREBUILTS_BASE)/$(BUILD_OS)-x86/$(CLANG_VERSION)/bin +KERNEL_AOSP_LLVM_CLANG := $(KERNEL_AOSP_LLVM_BIN)/clang +USE_KERNEL_AOSP_LLVM := $(shell test -f "$(KERNEL_AOSP_LLVM_CLANG)" && echo "true" || echo "false") KERNEL_TARGET := $(strip $(INSTALLED_KERNEL_TARGET)) ifeq ($(KERNEL_TARGET),) @@ -76,16 +77,17 @@ ifeq ($(KERNEL_LLVM_SUPPORT),true) KERNEL_LLVM_BIN := $(shell pwd)/$(SDCLANG_PATH)/clang endif $(warning "Using sdllvm" $(KERNEL_LLVM_BIN)) + real_cc := REAL_CC=$(KERNEL_LLVM_BIN) CLANG_TRIPLE=aarch64-linux-gnu- else ifeq ($(USE_KERNEL_AOSP_LLVM), true) #Using kernel aosp-llvm compiler - KERNEL_LLVM_BIN := $(KERNEL_AOSP_LLVM_BIN) + KERNEL_LLVM_BIN := $(KERNEL_AOSP_LLVM_CLANG) $(warning "Using latest kernel aosp llvm" $(KERNEL_LLVM_BIN)) else KERNEL_LLVM_BIN := $(shell pwd)/$(CLANG) $(warning "Not using latest aosp-llvm" $(KERNEL_LLVM_BIN)) endif + real_cc := REAL_CC=$(KERNEL_LLVM_BIN) CLANG_TRIPLE=aarch64-linux-gnu- LLVM_AR=$(KERNEL_AOSP_LLVM_BIN)/llvm-ar LLVM_NM=$(KERNEL_AOSP_LLVM_BIN)/llvm-nm LD=$(KERNEL_AOSP_LLVM_BIN)/ld.lld endif -real_cc := REAL_CC=$(KERNEL_LLVM_BIN) CLANG_TRIPLE=aarch64-linux-gnu- else ifeq ($(strip $(KERNEL_GCC_NOANDROID_CHK)),0) KERNEL_CFLAGS := KCFLAGS=-mno-android |