* configure.ac: Use -no-integrated-as on arm with clang.

* INSTALL: Mention ARM compilation with clang.
This commit is contained in:
Vladimir Serbinenko 2013-11-14 08:36:35 +01:00
parent 2416415c53
commit 2312f06c30
3 changed files with 9 additions and 2 deletions

View file

@ -1,3 +1,8 @@
2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
* configure.ac: Use -no-integrated-as on arm with clang.
* INSTALL: Mention ARM compilation with clang.
2013-11-14 Vladimir Serbinenko <phcoder@gmail.com> 2013-11-14 Vladimir Serbinenko <phcoder@gmail.com>
* conf/Makefile.common (CCASFLAGS_PLATFORM) [COND_arm]: Add * conf/Makefile.common (CCASFLAGS_PLATFORM) [COND_arm]: Add

View file

@ -15,6 +15,7 @@ configuring the GRUB.
Note: older versions may work but support is limited Note: older versions may work but support is limited
Note: clang 3.2 or later works for i386 and x86_64 targets but results in Note: clang 3.2 or later works for i386 and x86_64 targets but results in
much bigger binaries. much bigger binaries.
Note: clang 3.2 or later works for arm
Note: clang 3.4 or later works for powerpc Note: clang 3.4 or later works for powerpc
* GNU Make * GNU Make
* GNU Bison 2.3 or later * GNU Bison 2.3 or later

View file

@ -487,8 +487,9 @@ AC_CACHE_CHECK([if compiling with clang], [grub_cv_cc_target_clang]
]])], ]])],
[grub_cv_cc_target_clang=no], [grub_cv_cc_target_clang=yes])]) [grub_cv_cc_target_clang=no], [grub_cv_cc_target_clang=yes])])
# clang doesn't support .code16 # on x86 clang doesn't support .code16
if test "x$grub_cv_cc_target_clang" = xyes && ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 ); then # on arm clang doesn't support .arch directive
if test "x$grub_cv_cc_target_clang" = xyes && ( test "x$target_cpu" = xi386 || test "x$target_cpu" = xx86_64 || test "x$target_cpu" = xarm ); then
TARGET_CCASFLAGS="$TARGET_CCASFLAGS -no-integrated-as" TARGET_CCASFLAGS="$TARGET_CCASFLAGS -no-integrated-as"
fi fi