The build is broken when using clang on ARM. -mcx16 is being passed to
clang when building natively on ARM. This combined with -Werror causes
the breakage. Fix it by skipping anything related to -mcx16 when not
building for x86-based architectures. See [1] for details.

[1] https://lists.linaro.org/pipermail/lng-odp/2017-April/029684.html

v2
 - Add more description to commit message (Dmitry)

Signed-off-by: Brian Brooks <brian.bro...@arm.com>
---
 configure.ac | 30 ++++++++++++++++--------------
 1 file changed, 16 insertions(+), 14 deletions(-)

diff --git a/configure.ac b/configure.ac
index 9320f360..d364b8dd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -303,20 +303,22 @@ ODP_CFLAGS="$ODP_CFLAGS -std=c99"
 # Extra flags for example to suppress certain warning types
 ODP_CFLAGS="$ODP_CFLAGS $ODP_CFLAGS_EXTRA"
 
-#########################################################################
-# Check if compiler supports cmpxchng16
-##########################################################################
-if test "${CC}" != "gcc" -o ${CC_VERSION_MAJOR} -ge 5; then
-   my_save_cflags="$CFLAGS"
-
-   CFLAGS=-mcx16
-   AC_MSG_CHECKING([whether CC supports -mcx16])
-   AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
-           [AC_MSG_RESULT([yes])]
-           [ODP_CFLAGS="$ODP_CFLAGS $CFLAGS"],
-           [AC_MSG_RESULT([no])]
-           )
-   CFLAGS="$my_save_cflags"
+##########################################################################
+# Check if compiler supports cmpxchng16 on x86-based architectures
+##########################################################################
+if "${host}" == i?86* -o "${host}" == x86*; then
+  if test "${CC}" != "gcc" -o ${CC_VERSION_MAJOR} -ge 5; then
+     my_save_cflags="$CFLAGS"
+
+     CFLAGS=-mcx16
+     AC_MSG_CHECKING([whether CC supports -mcx16])
+     AC_COMPILE_IFELSE([AC_LANG_PROGRAM([])],
+           [AC_MSG_RESULT([yes])]
+           [ODP_CFLAGS="$ODP_CFLAGS $CFLAGS"],
+           [AC_MSG_RESULT([no])]
+           )
+     CFLAGS="$my_save_cflags"
+  fi
 fi
 
 ##########################################################################
-- 
2.12.2

Reply via email to