
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