gsl: fix build on !i386 uClibc
authorThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Sat, 17 Nov 2012 12:24:04 +0000 (12:24 +0000)
committerPeter Korsgaard <jacmet@sunsite.dk>
Sat, 17 Nov 2012 22:41:58 +0000 (23:41 +0100)
uClibc pretends to implement <fenv.h> as it installs the header, but
in practice, it only implements the functions for i386. This makes gsl
unhappy as it detects fenv.h, but then cannot use the fenv functions.

Fixes:

  http://autobuild.buildroot.org/results/732cc07faeca2a9098dc5106e8f654eb1323451a/build-end.log

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
package/gsl/gsl.mk

index 71968590a6a02882f84f2f004cf7a3ee42b6ddc2..65915916cdab8b1c3de916718f26ecf1fa62e508 100644 (file)
@@ -10,4 +10,17 @@ GSL_INSTALL_STAGING = YES
 GSL_LICENSE = GPLv3
 GSL_LICENSE_FILES = COPYING
 
+# uClibc pretends to have fenv support as it installs <fenv.h>, but in
+# practice, it only implements it for i386. Problem reported upstream
+# at: http://lists.busybox.net/pipermail/uclibc/2012-October/047067.html.
+# So we tell gsl that fenv related functions are not available in this
+# case.
+ifeq ($(BR2_TOOLCHAIN_BUILDROOT)$(BR2_TOOLCHAIN_EXTERNAL_UCLIBC)$(BR2_TOOLCHAIN_CTNG_uClibc),y)
+ifneq ($(BR2_i386),y)
+GSL_CONF_ENV = \
+       ac_cv_have_decl_feenableexcept=no \
+       ac_cv_have_decl_fesettrapenable=no
+endif
+endif
+
 $(eval $(autotools-package))