| From d619ccf6c11ab574466914c57994a82fb99401af Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Wed, 22 Mar 2017 16:06:55 +0000 |
| Subject: [PATCH] configure: Check for clang |
| |
| Disable gcc specific options if using clang |
| |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| Upstream-Status: Pending |
| |
| configure.ac | 19 +++++++++++++++++-- |
| 1 file changed, 17 insertions(+), 2 deletions(-) |
| |
| diff --git a/configure.ac b/configure.ac |
| index 28b0a14..2d4e984 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -98,6 +98,16 @@ AC_ARG_ENABLE(examples, |
| |
| AM_CONDITIONAL(BUILD_EXAMPLES, [test "x$enable_examples" = xyes]) |
| |
| +AC_MSG_CHECKING([whether C compiler is clang]) |
| +$CC -x c /dev/null -dM -E > conftest.txt 2>&1 |
| +if grep "__clang__" conftest.txt >/dev/null 2>&1; then |
| + AC_SUBST([CC_CLANG], [1]) |
| + AC_MSG_RESULT([yes]) |
| + else |
| + AC_SUBST([CC_CLANG], [0]) |
| + AC_MSG_RESULT([no]) |
| +fi |
| + |
| dnl -------------------------------------------------- |
| dnl Set build flags based on environment |
| dnl -------------------------------------------------- |
| @@ -132,10 +142,15 @@ else |
| AC_MSG_RESULT([$GCC_VERSION]) |
| case $host in |
| *86-*-linux*) |
| + if test "$CC_CLANG" = "1"; then |
| + ieeefp="" |
| + else |
| + ieefp="-mno-ieee-fp" |
| + fi |
| DEBUG="-g -Wall -Wextra -D_REENTRANT -D__NO_MATH_INLINES -fsigned-char" |
| - CFLAGS="-O3 -Wall -Wextra -ffast-math -mno-ieee-fp -D_REENTRANT -fsigned-char" |
| + CFLAGS="-O3 -Wall -Wextra -ffast-math -D_REENTRANT -fsigned-char ${ieefp}" |
| # PROFILE="-Wall -Wextra -pg -g -O3 -ffast-math -D_REENTRANT -fsigned-char -fno-inline -static" |
| - PROFILE="-Wall -Wextra -pg -g -O3 -ffast-math -mno-ieee-fp -D_REENTRANT -fsigned-char -fno-inline" |
| + PROFILE="-Wall -Wextra -pg -g -O3 -ffast-math ${ieefp} -D_REENTRANT -fsigned-char -fno-inline" |
| |
| # glibc < 2.1.3 has a serious FP bug in the math inline header |
| # that will cripple Vorbis. Look to see if the magic FP stack |
| -- |
| 2.17.0 |
| |