Обсуждение: Re: [HACKERS] port/getrusage.c?

Поиск
Список
Период
Сортировка

Re: [HACKERS] port/getrusage.c?

От
Hal Snyder
Дата:
> From: dg@illustra.com (David Gould)
> Date: Wed, 11 Mar 1998 22:37:59 -0800 (PST)

...
> > Good question. I don't see one, but the config stuff is not familiar
> > ground. There is reference to "sco" on line 85 of
> >
> >   src/include/utils/memutils.h - "#if ! defined(sco)"
> >
> > but I think nothing sets this any more. (Actually this is another
> > thing on the list of SCO breakage in 6.3). I'd add something to the
> > template for sco.

> What is the policy for defines on Postgres?
>
> It is often suggested that that 'ifdef defined(RANDOM_PLATFORM)' is not a
> nice way to proceed. Far better to use for example 'defined(HAS_FEATURE_XYZ)'
> than something like:
>
> 'defined(SOLARIS) or defined(SUNOS) or defined(PYRAMID) && !defined(WIN32)'.
>
> In the case at hand, perhaps something like  'if defined(BROKEN_CPP_GCC_271)',
> and then define it in the SCO part of the build system. After all, SCO
> might survive long enough to upgrade to a current compiler...

Ack. How about changing

  CFLAGS:

to

  CFLAGS:-DLAME_CPP

in src/templates/sco?


Re: [HACKERS] port/getrusage.c?]

От
Bruce Momjian
Дата:
> > 'defined(SOLARIS) or defined(SUNOS) or defined(PYRAMID) && !defined(WIN32)'.
> >
> > In the case at hand, perhaps something like  'if defined(BROKEN_CPP_GCC_271)',
> > and then define it in the SCO part of the build system. After all, SCO
> > might survive long enough to upgrade to a current compiler...
>
> Ack. How about changing
>
>   CFLAGS:
>
> to
>
>   CFLAGS:-DLAME_CPP
>
> in src/templates/sco?

But we don't want that if they use a good compiler under SCO.  I have
asked them to run src/tools/ccsym and send the output.  Should be
something unique in there.

--
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)

SCO vs. the monster macro

От
Hal Snyder
Дата:
> But we don't want that if they use a good compiler under SCO.  I have
> asked them to run src/tools/ccsym and send the output.  Should be
> something unique in there.

On SCO, ccsym becomes /bin/cc -b elf -ii -E foo.c, which after filtering
gives the symbols below. If I omit "-b elf", the last line is replaced
by the two lines
'-D_M_COFF'
'-D_SCO_COFF'

How about _SCO_DS as the define when testing for SCO's native
compiler? (I confess ignorance as to SCO's intended use of this symbol.)

'-D__i386'
'-D_SCO_DS=1'
'-D__unix'
'-D_M_I386'
'-D_M_XENIX'
'-D_M_UNIX'
'-D_SCO_C_DIALECT=1'
'-D_STRICT_NAMES'
'-D_M_I86'
'-D_M_I86SM'
'-D_M_SDATA'
'-D_M_STEXT'
'-D_M_BITFIELDS'
'-D_M_INTERNAT'
'-D_M_SYS5'
'-D_M_SYSV'
'-D_M_SYSIII'
'-D_M_WORDSWAP'
'-Di386'
'-Dunix'
'-DM_I386'
'-DM_UNIX'
'-DM_XENIX'
'-D_SCO_XPG_VERS=4'
'-D_SCO_ELF'


Re: [HACKERS] SCO vs. the monster macro

От
dg@illustra.com (David Gould)
Дата:
> > But we don't want that if they use a good compiler under SCO.  I have
> > asked them to run src/tools/ccsym and send the output.  Should be
> > something unique in there.
>
> On SCO, ccsym becomes /bin/cc -b elf -ii -E foo.c, which after filtering
> gives the symbols below. If I omit "-b elf", the last line is replaced
> by the two lines
> '-D_M_COFF'
> '-D_SCO_COFF'
>
> How about _SCO_DS as the define when testing for SCO's native
> compiler? (I confess ignorance as to SCO's intended use of this symbol.)
>
> '-D__i386'
> '-D_SCO_DS=1'
> '-D__unix'
> '-D_M_I386'
> '-D_M_XENIX'
> '-D_M_UNIX'
> '-D_SCO_C_DIALECT=1'
> '-D_STRICT_NAMES'
> '-D_M_I86'
> '-D_M_I86SM'
> '-D_M_SDATA'
> '-D_M_STEXT'
> '-D_M_BITFIELDS'
> '-D_M_INTERNAT'
> '-D_M_SYS5'
> '-D_M_SYSV'
> '-D_M_SYSIII'
> '-D_M_WORDSWAP'
> '-Di386'
> '-Dunix'
> '-DM_I386'
> '-DM_UNIX'
> '-DM_XENIX'
> '-D_SCO_XPG_VERS=4'
> '-D_SCO_ELF'
>

Or even: '-D_SCO_C_DIALECT=1' as in:

#if _SCO_C_DIALECT == 1 ...

Can't get much more specific than that.

-dg

David Gould            dg@illustra.com           510.628.3783 or 510.305.9468
Informix Software  (No, really)         300 Lakeside Drive  Oakland, CA 94612
 - I realize now that irony has no place in business communications.


Re: SCO vs. the monster macro

От
Bruce Momjian
Дата:
>
> > But we don't want that if they use a good compiler under SCO.  I have
> > asked them to run src/tools/ccsym and send the output.  Should be
> > something unique in there.
>
> On SCO, ccsym becomes /bin/cc -b elf -ii -E foo.c, which after filtering
> gives the symbols below. If I omit "-b elf", the last line is replaced
> by the two lines
> '-D_M_COFF'
> '-D_SCO_COFF'
>
> How about _SCO_DS as the define when testing for SCO's native
> compiler? (I confess ignorance as to SCO's intended use of this symbol.)

I am inclined to choose:

    -D_SCO_C_DIALECT=1

Not to test for the value of one, but just to test if it is defined.

--
Bruce Momjian                          |  830 Blythe Avenue
maillist@candle.pha.pa.us              |  Drexel Hill, Pennsylvania 19026
  +  If your life is a hard drive,     |  (610) 353-9879(w)
  +  Christ can be your backup.        |  (610) 853-3000(h)