Thread: Build problems for PostgreSQL v7.4 on FreeBSD v4.1

Build problems for PostgreSQL v7.4 on FreeBSD v4.1

From
Richard Scranton
Date:
In file postgresql-7.4/src/interfaces/ecpg/ecpglib/misc.c, this version
of FreeBSD has no definition of LONG_LONG_MIN, although it does
support an int64_t integral type.  Compilation was successful after
inserting
a definition immediately following the block of included files:

/* XXX */
#define LONG_LONG_MIN (1LL << 63)


In file
postgresql-7.4/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java,
the JDBC version 1 driver cannot be built with JDK v1.1.8 because that
version of the Double class does not include a static parseDouble(String)
method, which first appeared in JDK 1.2.  The driver will compile if
line 836 is
modified as below.

                // XXX if (Double.parseDouble(s)==1)
                if (Double.valueOf(s).doubleValue()==1)


--
_______________________________________________________
When you can see a light at the end of the tunnel, it
will be a guy with a flashlight bringing more bad news.

Re: Build problems for PostgreSQL v7.4 on FreeBSD v4.1

From
Kris Jurka
Date:

On Tue, 18 Nov 2003, Richard Scranton wrote:

> In file
> postgresql-7.4/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java,
> the JDBC version 1 driver cannot be built with JDK v1.1.8 because that
> version of the Double class does not include a static parseDouble(String)
> method, which first appeared in JDK 1.2.  The driver will compile if
> line 836 is
> modified as below.
>
>                 // XXX if (Double.parseDouble(s)==1)
>                 if (Double.valueOf(s).doubleValue()==1)
>

Here's a patch for the fix you describe.  Not that a one liner needs one,
but less work for the committers as well as getting it to the JDBC list.

Kris Jurka

Attachment

Re: Build problems for PostgreSQL v7.4 on FreeBSD v4.1

From
Bruce Momjian
Date:
Richard Scranton wrote:
>
> In file postgresql-7.4/src/interfaces/ecpg/ecpglib/misc.c, this version
> of FreeBSD has no definition of LONG_LONG_MIN, although it does
> support an int64_t integral type.  Compilation was successful after
> inserting
> a definition immediately following the block of included files:
>
> /* XXX */
> #define LONG_LONG_MIN (1LL << 63)

I am not sure it was reported to you but this was fixed and is in 7.4:

revision 1.16
date: 2003/10/21 15:34:34;  author: tgl;  state: Exp;  lines: +5 -1
branches:  1.16.2;
Cope with platforms that offer LONGLONG_MIN in place of the C99-spec
LLONG_MIN.  One example is AIX, per report from Andreas.


--
  Bruce Momjian                        |  http://candle.pha.pa.us
  pgman@candle.pha.pa.us               |  (610) 359-1001
  +  If your life is a hard drive,     |  13 Roberts Road
  +  Christ can be your backup.        |  Newtown Square, Pennsylvania 19073