Skip to content
Snippets Groups Projects
Commit 92582b57 authored by Jens Wiklander's avatar Jens Wiklander Committed by Jérôme Forissier
Browse files

Support legacy compiler


Adds support for legacy compiler
gcc-linaro-4.9-2015.02-3-x86_64_arm-linux-gnueabihf

To compile using this compiler instead on ARMv7 systems supply
COMPILE_LEGACY=y to make.

Acked-by: default avatarJerome Forissier <jerome.forissier@linaro.org>
Signed-off-by: default avatarJens Wiklander <jens.wiklander@linaro.org>
parent f9f39124
No related branches found
No related tags found
No related merge requests found
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_PATH="%TOP_DIR%/toolchains/aarch32-legacy"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="arm-linux-gnueabihf"
BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_3_17=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
......@@ -109,10 +109,19 @@ endif
################################################################################
# set the compiler when COMPILE_xxx are defined
################################################################################
ifeq ($(COMPILE_LEGACY),)
CROSS_COMPILE_NS_USER ?= "$(CCACHE)$(AARCH$(COMPILE_NS_USER)_CROSS_COMPILE)"
CROSS_COMPILE_NS_KERNEL ?= "$(CCACHE)$(AARCH$(COMPILE_NS_KERNEL)_CROSS_COMPILE)"
CROSS_COMPILE_S_USER ?= "$(CCACHE)$(AARCH$(COMPILE_S_USER)_CROSS_COMPILE)"
CROSS_COMPILE_S_KERNEL ?= "$(CCACHE)$(AARCH$(COMPILE_S_KERNEL)_CROSS_COMPILE)"
else
CROSS_COMPILE_NS_USER ?= "$(CCACHE)$(LEGACY_AARCH$(COMPILE_NS_USER)_CROSS_COMPILE)"
CROSS_COMPILE_NS_KERNEL ?= "$(CCACHE)$(LEGACY_AARCH$(COMPILE_NS_KERNEL)_CROSS_COMPILE)"
CROSS_COMPILE_S_USER ?= "$(CCACHE)$(LEGACY_AARCH$(COMPILE_S_USER)_CROSS_COMPILE)"
CROSS_COMPILE_S_KERNEL ?= "$(CCACHE)$(LEGACY_AARCH$(COMPILE_S_KERNEL)_CROSS_COMPILE)"
endif
ifeq ($(COMPILE_S_USER),32)
OPTEE_OS_TA_DEV_KIT_DIR ?= $(OPTEE_OS_PATH)/out/arm/export-ta_arm32
......@@ -176,6 +185,11 @@ busybox-cleaner-common:
# Build root
################################################################################
BUILDROOT_ARCH=aarch$(COMPILE_NS_USER)
ifeq ($(COMPILE_LEGACY),)
BUILDROOT_TOOLCHAIN=toolchain-aarch$(COMPILE_NS_USER)
else
BUILDROOT_TOOLCHAIN=toolchain-aarch$(COMPILE_NS_USER)-legacy
endif
BUILDROOT_GETTY_PORT ?= \
$(if $(CFG_NW_CONSOLE_UART),ttyAMA$(CFG_NW_CONSOLE_UART),ttyAMA0)
.PHONY: buildroot
......@@ -213,7 +227,7 @@ endif
--top-dir "$(ROOT)" \
--br-defconfig build/br-ext/configs/optee_$(BUILDROOT_ARCH) \
--br-defconfig build/br-ext/configs/optee_generic \
--br-defconfig build/br-ext/configs/toolchain-$(BUILDROOT_ARCH)\
--br-defconfig build/br-ext/configs/$(BUILDROOT_TOOLCHAIN) \
--br-defconfig out-br/extra.conf \
--make-cmd $(MAKE))
@$(MAKE) -C ../out-br all
......
......@@ -21,6 +21,12 @@ LEGACY_AARCH64_CROSS_COMPILE ?= $(LEGACY_AARCH64_PATH)/bin/aarch64-linux-gnu-
LEGACY_AARCH64_GCC_VERSION ?= gcc-linaro-aarch64-linux-gnu-4.9-2014.08_linux
LEGACY_SRC_AARCH64_GCC ?= https://releases.linaro.org/archive/14.08/components/toolchain/binaries/${LEGACY_AARCH64_GCC_VERSION}.tar.xz
LEGACY_AARCH32_PATH ?= $(TOOLCHAIN_ROOT)/aarch32-legacy
LEGACY_AARCH32_CROSS_COMPILE ?= $(LEGACY_AARCH32_PATH)/bin/arm-linux-gnueabihf-
LEGACY_AARCH32_GCC_VERSION ?= gcc-linaro-4.9-2015.02-3-x86_64_arm-linux-gnueabihf
LEGACY_SRC_AARCH32_GCC ?= https://releases.linaro.org/archive/15.02/components/toolchain/binaries/arm-linux-gnueabihf/${LEGACY_AARCH32_GCC_VERSION}.tar.xz
# Download toolchain macro for saving some repetition
# $(1) is $AARCH.._PATH : i.e., path to the destination
# $(2) is $SRC_AARCH.._GCC : is the downloaded tar.gz file
......@@ -35,7 +41,7 @@ define dltc
endef
.PHONY: toolchains
toolchains: aarch32 aarch64 aarch64-legacy
toolchains: aarch32 aarch64 aarch64-legacy aarch32-legacy
.PHONY: aarch32
aarch32:
......@@ -49,3 +55,7 @@ aarch64:
aarch64-legacy:
$(call dltc,$(LEGACY_AARCH64_PATH),$(LEGACY_SRC_AARCH64_GCC),$(LEGACY_AARCH64_GCC_VERSION))
.PHONY: aarch32-legacy
aarch32-legacy:
$(call dltc,$(LEGACY_AARCH32_PATH),$(LEGACY_SRC_AARCH32_GCC),$(LEGACY_AARCH32_GCC_VERSION))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment