gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gcl-devel] Re: Building GCL 2.6.1 on FreeBSD 4.8


From: Magnus Henoch
Subject: [Gcl-devel] Re: Building GCL 2.6.1 on FreeBSD 4.8
Date: Fri, 14 May 2004 19:07:53 +0200
User-agent: Gnus/5.1006 (Gnus v5.10.6) Emacs/21.3 (gnu/linux)

Chris Hall <address@hidden> writes:

> -----------( start
> make[1]: Entering directory `/data/home/cjh/lisp/build/gcl-2.6.1/o'
> gcc -c -Wall -DVOL=volatile -fsigned-char -fwritable-strings -pipe -O3
> -fomit-frame-pointer -I/usr/include/machine -I/usr/src/include
> -I/data/home/cjh/lisp/build/gcl-2.6.1/o -I../h -I../gcl-tk number.c
> In file included from ../h/include.h:36,
>                  from number.c:31:
> ../h/gclincl.h:128: #error "No isnormal found"
> number.c: In function `number_to_double':
> number.c:253: warning: implicit declaration of function `ISNORMAL'
> make[1]: *** [number.o] Error 1
> make[1]: Leaving directory `/data/home/cjh/lisp/build/gcl-2.6.1/o'
> make: *** [unixport/saved_pre_gcl] Error 2
> -----------( end
>
> (The extra -I flags to gcc were put into makedefs by me in an effort to
> resolve this.)
>
> A Google search brought up this:
> http://article.gmane.org/gmane.lisp.gcl.devel/2195
>
> The patches seem to be there, since the h/gclincl.h has:
>
> ----------( start
> #ifdef IN_NUM_CO
> #ifdef HAVE_ISNORMAL
> #define _GNU_SOURCE
> #include <math.h>
> #define ISNORMAL(a) isnormal(a)
> #else
> #ifdef HAVE_IEEEFP
> #include <ieeefp.h>
> #define ISNORMAL(a) (fpclass(a)>=FP_NZERO)
> #else
> #error "No isnormal found"
> #endif
> #endif
> #endif
> ----------( end

Try replacing

#error "No isnormal found"

with

#include <math.h>
#define ISNORMAL(a) (finite(a) && (a) != 0.0)

That worked for me on OpenBSD.

(gclincl.h will be overwritten every time you run configure;  you can
change gclincl.h.in instead to make the change persist)

> Is there specific version of float.h that I need to use?

isnormal was added to FreeBSD in version 5.1, but an upgrade should
hopefully not be necessary.

Regards,
Magnus





reply via email to

[Prev in Thread] Current Thread [Next in Thread]