about summary refs log tree commit diff
path: root/sysdeps/unix/sysv/linux/powerpc/configure.in
blob: 1768ab1f994904e6a1c27238e12d1d553852a617 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
sinclude(./aclocal.m4)dnl Autoconf lossage
GLIBC_PROVIDES dnl See aclocal.m4 in the top level source directory.
# Local configure fragment for sysdeps/unix/sysv/linux/powerpc/.

AC_CACHE_CHECK(whether $CC $CFLAGS -mlong-double-128 uses IBM extended format,
	       libc_cv_mlong_double_128ibm, [dnl
save_CFLAGS="$CFLAGS"
CFLAGS="$CFLAGS -mlong-double-128"
AC_TRY_COMPILE([#include <float.h>], [
#if LDBL_MANT_DIG != 106
# error "compiler doesn't implement IBM extended format of long double"
#endif
long double foobar (long double x) { return x; }],
	       libc_cv_mlong_double_128ibm=yes,
	       libc_cv_mlong_double_128ibm=no)
CFLAGS="$save_CFLAGS"])

if test "$libc_cv_mlong_double_128ibm" = no; then
  AC_CACHE_CHECK(whether $CC $CFLAGS supports -mabi=ibmlongdouble,
		 libc_cv_mabi_ibmlongdouble, [dnl
  save_CFLAGS="$CFLAGS"
  CFLAGS="$CFLAGS -mlong-double-128 -mabi=ibmlongdouble"
  AC_TRY_COMPILE([#include <float.h>], [
#if LDBL_MANT_DIG != 106
# error "compiler doesn't implement IBM extended format of long double"
#endif
long double foobar (long double x) { return x; }],
		 libc_cv_mabi_ibmlongdouble=yes,
		 libc_cv_mabi_ibmlongdouble=no)
  CFLAGS="$save_CFLAGS"])

  if test "$libc_cv_mabi_ibmlongdouble" = yes; then
    CFLAGS="$CFLAGS -mabi=ibmlongdouble"
  else
    AC_MSG_ERROR([this configuration requires -mlong-double-128 IBM extended format support])
  fi
fi