[U-Boot] [PATCH v3 0/8] add clang support for some ARM boards

Jeroen Hofstee
2014-09-10T18:08:50Z

Changes since v2:
- As Albert pointed out the clang instructions don't work with
Debian based binary packages. While I was aware of that it is
for a different reason then I thought, it is not that ARM is not
enabled as a backend but older versions are a bit more picky on
the target argument and don't tolerate a trailing dash to it as
used for CROSS_COMPILE etc. The README is updated accordingly.

As a side note clang3.5-svn as shipped in Ubuntu is not the 3.5
release but an snapshot of some svn commit and hence explain why
the recompiled 3.5 can behave different then the ubuntu clang-3.5.
Since it misses some patches, the clang3.5-svn can build less
boards then 3.4 or an actual 3.5 release.

- While add it, include Masahiro suggestion to also use c++ instead
of g++.
- Drop dependencies from the cover-letter as they are merged.
- only patch 7/8 and 8/8 are reposted. 1..6 are the same as v2.

Changes since v1 (RFC):
- Update the commit message for -Werror when polling for cc-options.
As pointed out by Masahiro this is not needed for all arguments,
but only for warning options.
- drop SOC specific patch from this patchset, I will post it seperately.
- Do implement get_gd for AARCH64.
- Drop the memset patch for clearing gd / not reassinging gd and use
Simon his version.
- Drop the patch for using gnu inline version, since targets using the
generic board no longer need it.
- Limit update gd in board_init_r to ARM / ARM64, since powerpc does
need it.
- change __inline to inline and drop volatile from get_gd to make
checkpatch happy.
- add patch workaround for generated constants
- add patch default to cc for host compiler
- update README.clang
- add SOB / cc

Jeroen Hofstee (8):
board_r: ARM[64] do not set gd again
ARM: SPL: do not set gd again
cc-option: also detect unsupported warnings options
ARM: make gd a function for clang
eabi_compat: add __aeabi_memcpy __aeabi_memset
clang: workaround for generated constants
Makefile: default to cc for host compiler
README.clang: build command with clang

Kbuild | 3 +-
Makefile | 4 +--
arch/arm/include/asm/global_data.h | 25 +++++++++++++++++
arch/arm/lib/eabi_compat.c | 15 ++++++++--
arch/arm/lib/spl.c | 3 --
common/board_r.c | 2 +-
doc/README.clang | 56 ++++++++++++++++++++++++++++++++++++++
include/linux/kbuild.h | 6 ++--
scripts/Kbuild.include | 4 +--
9 files changed, 104 insertions(+), 14 deletions(-)
create mode 100644 doc/README.clang

--
2.1.0