From 135ca51314a437cbb50bafb8ed24b48b2d7c5127 Mon Sep 17 00:00:00 2001 From: Nico Huber Date: Tue, 8 Sep 2015 12:38:57 +0200 Subject: [PATCH] crossgcc: Preparations for building Ada frontend As with most other languages, a pre-installed Ada toolchain is needed to build gcc's Ada frontend. To support building with older host tool- chains, the patch `gcc-5.2.0_gnat.patch` disables warnings for unknown pragmas. Building has been tested with host gcc-4.9 and hopefully works with newer versions, too. For convenience, the gnattools (e.g. gnatmake etc.) will be build if 'ada' is specified as a target language. Change-Id: Ia78c29d1aba2943de5238421a324cfff8eb08875 Signed-off-by: Nico Huber Reviewed-on: http://review.coreboot.org/11590 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi Reviewed-by: Paul Menzel --- util/crossgcc/buildgcc | 5 +++++ util/crossgcc/patches/gcc-5.2.0_gnat.patch | 11 +++++++++++ 2 files changed, 16 insertions(+) create mode 100644 util/crossgcc/patches/gcc-5.2.0_gnat.patch diff --git a/util/crossgcc/buildgcc b/util/crossgcc/buildgcc index 049ace40b3..4bd89a26b6 100755 --- a/util/crossgcc/buildgcc +++ b/util/crossgcc/buildgcc @@ -425,6 +425,11 @@ build_GCC() { --with-pkgversion="coreboot toolchain v$CROSSGCC_VERSION $CROSSGCC_DATE" \ || touch .failed $MAKE $JOBS CFLAGS_FOR_BUILD="$HOSTCFLAGS" all-gcc || touch .failed + + if [ "$(echo ${LANGUAGES} | grep -c '\')" -gt 0 ]; then + $MAKE $JOBS CFLAGS_FOR_BUILD="$HOSTCFLAGS" -Cgcc/ cross-gnattools || touch .failed + fi + $MAKE install-gcc DESTDIR=$DESTDIR || touch .failed if [ "$(echo $TARGETARCH | grep -c -- -mingw32)" -eq 0 ]; then diff --git a/util/crossgcc/patches/gcc-5.2.0_gnat.patch b/util/crossgcc/patches/gcc-5.2.0_gnat.patch new file mode 100644 index 0000000000..1e0a5bbbff --- /dev/null +++ b/util/crossgcc/patches/gcc-5.2.0_gnat.patch @@ -0,0 +1,11 @@ +--- gcc-5.2.0/gcc/ada/gcc-interface/Make-lang.in.bak 2015-08-24 16:23:25.004493665 +0200 ++++ gcc-5.2.0/gcc/ada/gcc-interface/Make-lang.in 2015-08-24 17:53:52.496636113 +0200 +@@ -45,7 +45,7 @@ + + + # Extra flags to pass to recursive makes. +-COMMON_ADAFLAGS= -gnatpg ++COMMON_ADAFLAGS= -gnatpg -gnatwG + ifeq ($(TREECHECKING),) + CHECKING_ADAFLAGS= + else