From: Vladimir Serbinenko Date: Fri, 6 Dec 2013 10:58:17 +0000 (+0100) Subject: Don't add -mlong-calls when compiling with clang. X-Git-Tag: grub-2.02-beta1~150 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=41822625603d37495e6fdb2257100e0c393be883;p=thirdparty%2Fgrub.git Don't add -mlong-calls when compiling with clang. --- diff --git a/ChangeLog b/ChangeLog index 1f876c348..203038e1f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2013-12-06 Vladimir Serbinenko + + Don't add -mlong-calls when compiling with clang. + 2013-12-06 Vladimir Serbinenko * configure.ac: Fix a typo. diff --git a/conf/Makefile.common b/conf/Makefile.common index 811573f39..4ec2b811e 100644 --- a/conf/Makefile.common +++ b/conf/Makefile.common @@ -11,7 +11,7 @@ if COND_sparc64_ieee1275 LDFLAGS_PLATFORM = -Wl,-melf64_sparc -mno-relax endif if COND_arm - CFLAGS_PLATFORM += -mthumb-interwork -mlong-calls + CFLAGS_PLATFORM += -mthumb-interwork CCASFLAGS_PLATFORM = -mthumb-interwork LDFLAGS_PLATFORM = -Wl,--wrap=__clear_cache endif diff --git a/configure.ac b/configure.ac index 0cd666051..d13cd3d6b 100644 --- a/configure.ac +++ b/configure.ac @@ -848,6 +848,18 @@ if test "$target_cpu"-"$platform" = x86_64-efi; then TARGET_CFLAGS="$TARGET_CFLAGS -mno-red-zone" fi +if test "x$target_cpu" = xarm; then + AC_CACHE_CHECK([whether option -mlong-calls works], grub_cv_cc_mlong_calls, [ + CFLAGS="$TARGET_CFLAGS -mlong-calls -Werror" + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[]])], + [grub_cv_cc_mlong_calls=yes], + [grub_cv_cc_mlong_calls=no]) + ]) + if test "x$grub_cv_cc_mlong_calls" = xyes; then + TARGET_CFLAGS="$TARGET_CFLAGS -mlong-calls" + fi +fi + # # Compiler features. #