Re: Int64GetDatum

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: John R Pierce <pierce(at)hogranch(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Int64GetDatum
Date: 2010-04-20 03:02:19
Message-ID: 201004200302.o3K32JZ02464@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

John R Pierce wrote:
> there's a definite structural problem in that the 32 bit and 64 bit
> Solaris binaries are in the same tree, with just the bin and lib
> directories differentiated. you can in theory install them both, and
> point them to different $PGDATA directories, and have them both running
> at once, but they share the include directory, so anything like a
> pl/*** you build from source against this tree will have problems.
>
> A temporary acceptable solution would be to simply acknowlege this
> problem in the build release notes and specify that you either only
> install the one package you want, or if you install them both, the one
> you install *last* will be the only one you can build something like
> pl/java against. This is somewhat sketchy, but still an
> improvement over the current.
>
> I don't know if the build trees can be structured so the include
> directories can be differentiated the same as the bin and lib... I see
> the include dir location is supplied by pg_config, but I don't know how
> consistently this is used by something like pl/java's build.
>
> # /usr/postgres/8.4-community/bin/pg_config # 32bit version
> BINDIR = /usr/postgres/8.4-community/bin
> DOCDIR = /usr/postgres/8.4-community/share/doc
> HTMLDIR = /usr/postgres/8.4-community/share/doc
> INCLUDEDIR = /usr/postgres/8.4-community/include
> PKGINCLUDEDIR = /usr/postgres/8.4-community/include
> INCLUDEDIR-SERVER = /usr/postgres/8.4-community/include/server
> LIBDIR = /usr/postgres/8.4-community/lib
> PKGLIBDIR = /usr/postgres/8.4-community/lib
> LOCALEDIR = /usr/postgres/8.4-community/share/locale
> MANDIR = /usr/postgres/8.4-community/man
> SHAREDIR = /usr/postgres/8.4-community/share
> SYSCONFDIR = /usr/postgres/8.4-community/etc
> PGXS = /usr/postgres/8.4-community/lib/pgxs/src/makefiles/pgxs.mk
> .......rest deleted.....
>
> # /usr/postgres/8.4-community/bin/64/pg_config # 64bit version
> BINDIR = /usr/postgres/8.4-community/bin/64
> DOCDIR = /usr/postgres/8.4-community/share/doc
> HTMLDIR = /usr/postgres/8.4-community/share/doc
> INCLUDEDIR = /usr/postgres/8.4-community/include
> PKGINCLUDEDIR = /usr/postgres/8.4-community/include
> INCLUDEDIR-SERVER = /usr/postgres/8.4-community/include/server
> LIBDIR = /usr/postgres/8.4-community/lib/64
> PKGLIBDIR = /usr/postgres/8.4-community/lib/64
> LOCALEDIR = /usr/postgres/8.4-community/share/locale
> MANDIR = /usr/postgres/8.4-community/man
> SHAREDIR = /usr/postgres/8.4-community/share
> SYSCONFDIR = /usr/postgres/8.4-community/etc
> PGXS = /usr/postgres/8.4-community/lib/64/pgxs/src/makefiles/pgxs.mk
> .......rest deleted.....

OK, I see your bin and lib 64-bit files are places into a "64"
subdirectory. Logic dictates that the include files should be in
/usr/postgres/8.4-community/include/64, and
/usr/postgres/8.4-community/bin/64/pg_config should report that
location. If it does, all the PGXS stuff will use it.

I don't think we ever considered this kind of setup, but that seem to be
the proper direction.

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2010-04-20 03:03:43 Re: Int64GetDatum
Previous Message Tom Lane 2010-04-20 03:01:26 Re: Int64GetDatum