aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--kernel/Makefile.in2
-rw-r--r--kernel/configure.ac10
3 files changed, 16 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index c024c77..50bd2db 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2005-11-29 Miklos Szeredi <miklos@szeredi.hu>
+
+ * Check if '-msoft-float' option is supported by compiler when
+ configuring for a 2.4.x kernel. Bug report by Mark Haney
+
2005-11-28 Miklos Szeredi <miklos@szeredi.hu>
* Fix bug in 32-bit file handle compatibility
diff --git a/kernel/Makefile.in b/kernel/Makefile.in
index 8bf1081..34d376d 100644
--- a/kernel/Makefile.in
+++ b/kernel/Makefile.in
@@ -56,7 +56,7 @@ ifeq ($(majver), 2.4)
CC = gcc
LD = ld
-CFLAGS = -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -pipe -msoft-float
+CFLAGS = -O2 -Wall -Wstrict-prototypes -fno-strict-aliasing -pipe @KERNELCFLAGS@
CPPFLAGS = -I@kernelsrc@/include -I. -D__KERNEL__ -DMODULE -D_LOOSE_KERNEL_NAMES -DFUSE_VERSION=\"$(VERSION)\" @KERNELCPPFLAGS@
fuse_objs = dev.o dir.o file.o inode.o compat/parser.o
diff --git a/kernel/configure.ac b/kernel/configure.ac
index dfe7b67..eca3a3b 100644
--- a/kernel/configure.ac
+++ b/kernel/configure.ac
@@ -5,6 +5,7 @@ AC_PROG_INSTALL
runver=`uname -r`
ENABLE_FUSE_MODULE=y
+KERNELCFLAGS=
kernelsrc=
kernelbuild=
@@ -100,6 +101,14 @@ if test "$ENABLE_FUSE_MODULE" = y; then
AC_DEFINE(HAVE_RECALC_SIGPENDING_TSK, 1,
[Kernel has recalc_sigpending_tsk() function]),,
[#include <linux/sched.h>])
+ AC_MSG_CHECKING([if '-msoft-float' option is valid])
+ CFLAGS="-msoft-float"
+ have_msoft_float=no
+ AC_TRY_COMPILE([], [], [have_msoft_float=yes])
+ AC_MSG_RESULT([$have_msoft_float])
+ if test "$have_msoft_float" = yes; then
+ KERNELCFLAGS="$CFLAGS"
+ fi
CFLAGS="$old_cflags"
else
fuse_configured=no
@@ -161,6 +170,7 @@ if test "$ENABLE_FUSE_MODULE" = y; then
fi
AC_SUBST(KERNELMAKE_PARAMS)
AC_SUBST(KERNELCPPFLAGS)
+ AC_SUBST(KERNELCFLAGS)
fi
AC_CONFIG_FILES([Makefile])