From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Mark Hollomon <mhh(at)mindspring(dot)com> |
Cc: | pgsql-hackers(at)postgreSQL(dot)org |
Subject: | Nasty portability glitch in plperl |
Date: | 2000-02-19 19:21:18 |
Message-ID: | 17951.950988078@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
I tried today for the first time to compile plperl, and didn't have
much success. After fixing a couple of simple problems, I was left
with
cc -c -D_HPUX_SOURCE -Aa -I/usr/local/include -I/opt/perl5/lib/5.00503/PA-RISC2.0/CORE +z -I../../../src/interfaces/libpq -I../../../src/include -I../../../src/backend plperl.c
cpp: "perl.h", line 136: warning 2001: Redefinition of macro VOIDUSED.
cpp: "perl.h", line 1474: warning 2001: Redefinition of macro DEBUG.
cc: "../../../src/include/utils/int8.h", line 34: error 1681: Must use +e or -Ae for long long in ANSI mode.
make: *** [plperl.o] Error 1
This is with a plain-vanilla installation of perl 5.005_03 on HPUX 10.20.
Perl's configure script chooses HP's cc in strict-ANSI (-Aa) mode,
and I let it have its head on the issue. I could work around it by
reinstalling Perl using gcc and/or forcing -Ae (not-so-strict ANSI mode)
in Perl's installation CFLAGS, but if I'm running into this problem with
the standard setup then so will a lot of other people on HPUX. I don't
think we can say "you have to have a nonstandard Perl installation to
use this".
But short of that I don't see a clean answer. We select -Ae in the
hpux_cc template, but I usually don't use the hpux_cc template ---
I prefer hpux_gcc for development. (In fact, the first problem I had to
fix was that plperl's makefile tried to use CFLAGS taken from postgres's
configuration with CC taken from perl's. HP's cc does not like gcc-
specific compiler switches, nor vice versa.) So there's noplace for
plperl to cleanly pull -Ae from.
The only thing I can think of at the moment is to do something like
if (platform-is-HPUX-and-CC-is-cc)
CFLAGS+= -Ae
endif
in plperl's Makefile.PL, but that sure strikes me as awfully ugly.
Anyone have a better answer?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2000-02-19 22:25:35 | Re: [HACKERS] Date/time types: big change |
Previous Message | Tom Lane | 2000-02-19 17:16:10 | Re: [HACKERS] Re: SQL compliance |