Thread: Re: [BUGS] (Modified) Patch request for PostgreSQL 7.4 for HP-UX IA-64

Re: [BUGS] (Modified) Patch request for PostgreSQL 7.4 for HP-UX IA-64

From
"ViSolve Open Source Team"
Date:
Bruce,
 
Thanks for the comments/questions.  A couple of points in response:
 
1. About the #if defined (_HP_aCC) || defined (_HP_cc)
 
We agree.  That line can go.
 
2. About the TMPFILE definition change from .c to .h:  Unfortunately,  the -V option does not work the same way across HP compilers (it works as expected with HP aCC, but not with HP cc).  

We have a couple of alternatives here.  
 
a. Using `uname` (to look for HP-UX)  and checking to see if $CPP is set to /usr/bin/cc or /opt/aCC/bin/aCC. Not good.
b. Doing nothing. The TMPFILE mod is a trivial change to make with each new version of PostgreSQL that we build for HP-UX.  (We had in fact suggested this in our original request email). So if  you make no changes to the TMPFILE code, that will be fine too.
 
thanks
ViSolve OpenSource Team
 
============================================================================
Return-Path: <pgman@candle.pha.pa.us
Received: (qmail 20935 invoked from network); 30 Nov 2003 04:33:45 -0000
Received: from canlde.pha.pa.us (HELO candle.pha.pa.us) ([207.106.42.251])
          (envelope-sender <pgman@candle.pha.pa.us)
          by visolve.com (qmail-ldap-1.03) with SMTP
          for <opensrc_support_hp@visolve.com; 30 Nov 2003 04:33:45 -0000
Received: (from pgman@localhost)
by candle.pha.pa.us (8.11.6/8.11.6) id hAU4Xcs26486;
Sat, 29 Nov 2003 23:33:38 -0500 (EST)
From: Bruce Momjian <pgman@candle.pha.pa.us
Message-Id: <200311300433.hAU4Xcs26486@candle.pha.pa.us
Subject: Re: [BUGS] (Modified) Patch request for PostgreSQL 7.4 for HP-UX
IA-64
In-Reply-To: <019301c3af01$029c9470$70800d0f@NETMERCURY
To: ViSolve Open Source Team <opensrc_support_hp@visolve.com
Date: Sat, 29 Nov 2003 23:33:38 -0500 (EST)
CC: PostgreSQL-patches <pgsql-patches@postgresql.org,
   Peter Eisentraut <peter_e@gmx.net
X-Mailer: ELM [version 2.4ME+ PL108 (25)]
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset=US-ASCII
 
ViSolve Open Source Team wrote:
Subject: PostgreSQL Patch: Modified Test-and-set routine for HP-UX
(IA-64) specifically for the HP-C compiler
 
With reference to Tom Lane's response to our previous patch request  (at
http://archives.postgresql.org/pgsql-bugs/2003-10/msg00149.php)
this is a modified and more focussed patch request for PostgreSQL for
for HP-UX 11i V2  for the Intel Itanium architecture  (known to the
PostgreSQL code as IA-64).
 
Peter mentioned:
 
>What is this line all about?
 
>+#if defined(__HP_aCC) || defined(__HP_cc)
 
>There are no other compilers supported, so this seems redundant.
 
OK, I will remove this check.
 
Peter also mentioned:
 
>You're doing this:
 
>-TMPFILE="$TMPDIR/genbkitmp$$.c"
>+TMPFILE="$TMPDIR/genbkitmp$$.h"
 
I'm afraid this will not fly, because calling the preprocessor is only
portable on .c files.  Generally, it's also unwise to rely in this kind
of subtle side effect.  We need a general solution.
 
Can you give us a way to test for your preprocessor?  Is there some
unique output like --version or -V that we can test and use *.h only
in that case?
 
--
  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
====================================================================================
 

 
 
 
 

Re: [BUGS] (Modified) Patch request for PostgreSQL 7.4

From
Andrew Dunstan
Date:
It just struck me that *maybe* a portable solution would be to put the
awk output inside genbki.sh in a .h file and then #include it in a one
line .c file which is passed to the preprocessor. Would that keep the
(strange) HP compiler happy?

cheers

andrew



ViSolve Open Source Team wrote:

>
> **
> *2. About the TMPFILE definition change from .c to .h:*
> Unfortunately,  the -V option does not work the same way across HP
> compilers (it works as expected with HP aCC, but not with HP cc).
>
> We have a couple of alternatives here.
>
> a. Using `uname` (to look for HP-UX)  /and/ checking to see if
> *$CPP* is set to //usr/bin/cc/ or //opt/aCC/bin/aCC./ Not good.
> b. Doing nothing. The TMPFILE mod is a trivial change to make with
> each new version of PostgreSQL that we build for HP-UX.  (We had in
> fact suggested this in our original request email). So if  you make no
> changes to the TMPFILE code, that will be fine too.
>
> thanks
> ViSolve OpenSource Team
>
> ============================================================================
>
> From: Bruce Momjian <pgman@candle.pha.pa.us
> <mailto:pgman@candle.pha.pa.us>
>
> Subject: Re: [BUGS] (Modified) Patch request for PostgreSQL 7.4 for HP-UX
> IA-64
>
>
> Peter also mentioned:
>
> >You're doing this:
>
> >-TMPFILE="$TMPDIR/genbkitmp$$.c"
> >+TMPFILE="$TMPDIR/genbkitmp$$.h"
>
> I'm afraid this will not fly, because calling the preprocessor is only
> portable on .c files.  Generally, it's also unwise to rely in this kind
> of subtle side effect.  We need a general solution.
>
> Can you give us a way to test for your preprocessor?  Is there some
> unique output like --version or -V that we can test and use *.h only
> in that case?
>
> --
>   Bruce Momjian                        |  http://candle.pha.pa.us
>   pgman@candle.pha.pa.us <mailto: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
> ====================================================================================
>
>
>
>
>
>




Re: [BUGS] (Modified) Patch request for PostgreSQL 7.4 for

From
Bruce Momjian
Date:
ViSolve Open Source Team wrote:
> Bruce,
>
> Thanks for the comments/questions.  A couple of points in response:
>
> 1. About the #if defined (_HP_aCC) || defined (_HP_cc)
>
> We agree.  That line can go.

OK.

> 2. About the TMPFILE definition change from .c to .h:  Unfortunately,  the -V option does not work the same way
acrossHP compilers (it works as expected with HP aCC, but not with HP cc).    
>
> We have a couple of alternatives here.
>
> a. Using `uname` (to look for HP-UX)  and checking to see if $CPP is set to /usr/bin/cc or /opt/aCC/bin/aCC. Not
good. 
> b. Doing nothing. The TMPFILE mod is a trivial change to make with each new version of PostgreSQL that we build for
HP-UX. (We had in fact suggested this in our original request email). So if  you make no changes to the TMPFILE code,
thatwill be fine too. 

Shame that there is no clean solution.  Shame there some output from -V
that would identifity it as the HPUX compiler.  I am not worried about
your making a custom version, but buy folks who download the community
release and get failures.  Well, I guess we will just wait and see how
often it happens.

--
  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