Re: Extending MSVC scripts to support --with-extra-version - Mailing list pgsql-hackers

From Asif Naeem
Subject Re: Extending MSVC scripts to support --with-extra-version
Date
Msg-id CAEB4t-O7Fv1bduOPqv5dbf7tG8FyJHL70-Qne-JXw9Rd_F1YJw@mail.gmail.com
Whole thread Raw
In response to Re: Extending MSVC scripts to support --with-extra-version  (Michael Paquier <michael.paquier@gmail.com>)
Responses Re: Extending MSVC scripts to support --with-extra-version  (Michael Paquier <michael.paquier@gmail.com>)
List pgsql-hackers
Thank you for sharing updated patch. I have compared it with MSVC and configure generated build i.e. 

MacOSX (--with-extra-version "-30JUN")

pc1dotnetpk:inst asif$ ./bin/psql -d postgres
psql (9.5devel-30JUN)
Type "help" for help.
postgres=# select version();
                                                                  version
--------------------------------------------------------------------------------------------------------------------------------------------
 PostgreSQL 9.5devel-30JUN on x86_64-apple-darwin13.2.0, compiled by Apple LLVM version 5.1 (clang-503.0.40) (based on LLVM 3.4svn), 64-bit
(1 row)
pc1dotnetpk:inst asif$ ./bin/initdb -V
initdb (PostgreSQL) 9.5devel-30JUN

Windows7 64bit (extraver => '-30JUN')

C:\PG\postgresql\inst_withpatch_v2_extra-version>bin\psql -d postgres
psql (9.5devel-30JUN)
WARNING: Console code page (437) differs from Windows code page (1252)
         8-bit characters might not work correctly. See psql reference
         page "Notes for Windows users" for details.
Type "help" for help.
postgres=# select version();
                               version
----------------------------------------------------------------------
 PostgreSQL 9.5devel-30JUN, compiled by Visual C++ build 1600, 64-bit
(1 row)
C:\PG\postgresql\inst_withpatch_v2_extra-version>bin\initdb.exe -V
initdb (PostgreSQL) 9.5devel-30JUN

Patch looks good to me. I think it is ready for committer. Thanks.

Regards,
Muhammad Asif Naeem


On Fri, Jun 27, 2014 at 5:00 AM, Michael Paquier <michael.paquier@gmail.com> wrote:



On Fri, Jun 27, 2014 at 8:26 AM, Asif Naeem <anaeem.it@gmail.com> wrote:
I have spent some time reviewing the code. It applies well and PG master branch build fine with setting extraver or keep it undefined.
Thanks for reviewing that.
 
I have observed the following output applying the patch i.e.
It seems that extraver information only appears when version function is being used. If we use -V (--version)  with pg utilities/binaries, it does not include additional provided information. 
You are right. The first version of this patch updates PG_VERSION_STR but not PG_VERSION, which is the string used for all the binaries to report the version.
 
Can you please guide how can I perform similar functionality via configure script (that can be used on Unix like OS/MinGW) or It is intended for Window specific requirement ?. Thanks.
Sure, you can do the equivalent with plain configure like that:
./configure --with-extra-version="-foo" --prefix=/to/path/
And here is the output that I get with such options on OSX for example:
$ psql -c 'select substring(version(), 1, 52)'
                      substring                      
------------------------------------------------------
 PostgreSQL 9.5devel-foo on x86_64-apple-darwin13.2.0
(1 row)
$ initdb --version
initdb (PostgreSQL) 9.5devel-foo

With the new patch attached, the following output is generated for an MSVC build:
$ psql -c 'select version()'
                              version
--------------------------------------------------------------------
 PostgreSQL 9.5devel-foo, compiled by Visual C++ build 1600, 64-bit
(1 row)
$ initdb --version
initdb (PostgreSQL) 9.5devel-foo

Regards,
--
Michael

pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: uninitialized values in revised prepared xact code
Next
From:
Date:
Subject: Re: pg_receivexlog add synchronous mode