Skip to content

Commit

Permalink
toolchain: Update to GCC 8.3 and update kernel headers
Browse files Browse the repository at this point in the history
In the GCC v8.2-2018.08 toolchain (previous default in OP-TEE) the
GDB/TUI mode was disabled, which made debugging using GDB slightly more
complicated. However, in more recent versions of GCC like the one
introduced here, i.e., GCC8.3-2019.03, Arm have re-enabled the TUI mode.

But to be able to upgrade the toolchain, one must also step up kernel
headers so that the toolchain matches the kernel headers used by
Buildroot. This means that we are stepping up from 4.18 kernel headers
to 4.19 kernel headers, which seems to be compatible with the version of
GCC that is being introduced in this patch.

Note that after this commit, older GCC versions will not work any
longer when building full OP-TEE developer setups using OP-TEE's
manifest.git and build.git, i.e., trying to run GCC8.2 for example will
give a kernel header mismatch error.

Fixes #334.

Signed-off-by: Joakim Bech <joakim.bech@linaro.org>
Tested-by: Joakim Bech <joakim.bech@linaro.org> (QEMU v7, v8)
Acked-by: Jerome Forissier <jerome.forissier@linaro.org>
  • Loading branch information
jbech-linaro authored and jforissier committed May 18, 2019
1 parent 8229264 commit e029816
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 6 deletions.
2 changes: 1 addition & 1 deletion br-ext/configs/toolchain-aarch32
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_PATH="%TOP_DIR%/toolchains/aarch32"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="arm-linux-gnueabihf"
BR2_TOOLCHAIN_EXTERNAL_GCC_8=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_18=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y

2 changes: 1 addition & 1 deletion br-ext/configs/toolchain-aarch64
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_PATH="%TOP_DIR%/toolchains/aarch64"
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_PREFIX="aarch64-linux-gnu"
BR2_TOOLCHAIN_EXTERNAL_GCC_8=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_18=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_19=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_GLIBC=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y

8 changes: 4 additions & 4 deletions toolchain.mk
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@ TOOLCHAIN_ROOT ?= $(ROOT)/toolchains

AARCH32_PATH ?= $(TOOLCHAIN_ROOT)/aarch32
AARCH32_CROSS_COMPILE ?= $(AARCH32_PATH)/bin/arm-linux-gnueabihf-
AARCH32_GCC_VERSION ?= gcc-arm-8.2-2018.08-x86_64-arm-linux-gnueabihf
SRC_AARCH32_GCC ?= https://developer.arm.com/-/media/Files/downloads/gnu-a/8.2-2018.08/${AARCH32_GCC_VERSION}.tar.xz
AARCH32_GCC_VERSION ?= gcc-arm-8.3-2019.03-x86_64-arm-linux-gnueabihf
SRC_AARCH32_GCC ?= https://developer.arm.com/-/media/Files/downloads/gnu-a/8.3-2019.03/binrel/${AARCH32_GCC_VERSION}.tar.xz

AARCH64_PATH ?= $(TOOLCHAIN_ROOT)/aarch64
AARCH64_CROSS_COMPILE ?= $(AARCH64_PATH)/bin/aarch64-linux-gnu-
AARCH64_GCC_VERSION ?= gcc-arm-8.2-2018.08-x86_64-aarch64-linux-gnu
SRC_AARCH64_GCC ?= https://developer.arm.com/-/media/Files/downloads/gnu-a/8.2-2018.08/${AARCH64_GCC_VERSION}.tar.xz
AARCH64_GCC_VERSION ?= gcc-arm-8.3-2019.03-x86_64-aarch64-linux-gnu
SRC_AARCH64_GCC ?= https://developer.arm.com/-/media/Files/downloads/gnu-a/8.3-2019.03/binrel/${AARCH64_GCC_VERSION}.tar.xz

# Download toolchain macro for saving some repetition
# $(1) is $AARCH.._PATH : i.e., path to the destination
Expand Down

0 comments on commit e029816

Please sign in to comment.