Re: bug in PG_VERSION_NUM patch - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: bug in PG_VERSION_NUM patch
Date
Msg-id 200602282233.k1SMXje06870@candle.pha.pa.us
Whole thread Raw
In response to Re: bug in PG_VERSION_NUM patch  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > OK, I reread the manual page:
> 
> >        As  each input record is read, gawk splits the record into
> >        fields, using the value of the FS variable  as  the  field
> >        separator.   If FS is a single character, fields are sepa-
> >        rated by that character.  If FS is the null  string,  then
> >        each  individual character becomes a separate field.  Oth-
> >        erwise, FS is expected to be a  full  regular  expression.
> 
> Hpmh.  The HPUX man page for plain awk says
> 
>           -F fs          Specify regular expression used to separate
>                          fields.  The default is to recognize space and tab
>                          characters, and to discard leading spaces and
>                          tabs.  If the -F option is used, leading input
>                          field separators are no longer discarded.
> 
> which makes me think we are treading on mighty thin ice here --- there
> are lots of different versions of awk around, and some of them are
> probably going to treat -F '.' as a regexp.
> 
> I'd suggest splitting the input with something more standardized.
> Perhaps
> 
> sed 's/\./ /g' | $AWK '{printf ...

Good idea, new code applied:
# Supply a numeric version string for use by 3rd party add-ons# awk -F is a regex on some platforms, and not on others,
somake "." a tabPG_VERSION_NUM="`echo "$PACKAGE_VERSION" | sed 's/[A-Za-z].*$//' |tr '.' '    ' |$AWK '{printf
\"%d%02d%02d\",$1, $2, (NF >= 3) ? $3 : 0}'`"AC_DEFINE_UNQUOTED(PG_VERSION_NUM, $PG_VERSION_NUM, [PostgreSQL version as
anumber])
 

--  Bruce Momjian   http://candle.pha.pa.us SRA OSS, Inc.   http://www.sraoss.com
 + If your life is a hard drive, Christ can be your backup. +


pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: bug in PG_VERSION_NUM patch
Next
From: Mark Kirkwood
Date:
Subject: Re: pg_config, pg_service.conf, postgresql.conf ....