On Fri, Jun 27, 2014 at 8:26 AM, Asif Naeem <anaeem...@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
diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm index f7a5abb..d53803e 100644 --- a/src/tools/msvc/Solution.pm +++ b/src/tools/msvc/Solution.pm @@ -164,9 +164,9 @@ sub GenerateFiles || confess "Could not write to pg_config.h\n"; while (<I>) { - s{PG_VERSION "[^"]+"}{PG_VERSION "$self->{strver}"}; + s{PG_VERSION "[^"]+"}{PG_VERSION "$self->{strver}$self->{options}->{extraver}"}; s{PG_VERSION_NUM \d+}{PG_VERSION_NUM $self->{numver}}; -s{PG_VERSION_STR "[^"]+"}{__STRINGIFY(x) #x\n#define __STRINGIFY2(z) __STRINGIFY(z)\n#define PG_VERSION_STR "PostgreSQL $self->{strver}, compiled by Visual C++ build " __STRINGIFY2(_MSC_VER) ", $bits-bit"}; + s{PG_VERSION_STR "[^"]+"}{__STRINGIFY(x) #x\n#define __STRINGIFY2(z) __STRINGIFY(z)\n#define PG_VERSION_STR "PostgreSQL $self->{strver}$self->{options}->{extraver}, compiled by Visual C++ build " __STRINGIFY2(_MSC_VER) ", $bits-bit"}; print O; } print O "#define PG_MAJORVERSION \"$self->{majorver}\"\n"; @@ -625,14 +625,15 @@ sub GetFakeConfigure $cfg .= ' --enable-nls' if ($self->{options}->{nls}); $cfg .= ' --with-ldap' if ($self->{options}->{ldap}); $cfg .= ' --without-zlib' unless ($self->{options}->{zlib}); - $cfg .= ' --with-openssl' if ($self->{options}->{ssl}); - $cfg .= ' --with-ossp-uuid' if ($self->{options}->{uuid}); - $cfg .= ' --with-libxml' if ($self->{options}->{xml}); - $cfg .= ' --with-libxslt' if ($self->{options}->{xslt}); - $cfg .= ' --with-gssapi' if ($self->{options}->{gss}); - $cfg .= ' --with-tcl' if ($self->{options}->{tcl}); - $cfg .= ' --with-perl' if ($self->{options}->{perl}); - $cfg .= ' --with-python' if ($self->{options}->{python}); + $cfg .= ' --with-extra-version' if ($self->{options}->{extraver}); + $cfg .= ' --with-openssl' if ($self->{options}->{ssl}); + $cfg .= ' --with-ossp-uuid' if ($self->{options}->{uuid}); + $cfg .= ' --with-libxml' if ($self->{options}->{xml}); + $cfg .= ' --with-libxslt' if ($self->{options}->{xslt}); + $cfg .= ' --with-gssapi' if ($self->{options}->{gss}); + $cfg .= ' --with-tcl' if ($self->{options}->{tcl}); + $cfg .= ' --with-perl' if ($self->{options}->{perl}); + $cfg .= ' --with-python' if ($self->{options}->{python}); return $cfg; } diff --git a/src/tools/msvc/config_default.pl b/src/tools/msvc/config_default.pl index ebb47ab..20aee8b 100644 --- a/src/tools/msvc/config_default.pl +++ b/src/tools/msvc/config_default.pl @@ -10,17 +10,18 @@ our $config = { # blocksize => 8, # --with-blocksize, 8kB by default # wal_blocksize => 8, # --with-wal-blocksize, 8kB by default # wal_segsize => 16, # --with-wal-segsize, 16MB by default - ldap => 1, # --with-ldap - nls => undef, # --enable-nls=<path> - tcl => undef, # --with-tls=<path> - perl => undef, # --with-perl - python => undef, # --with-python=<path> - openssl => undef, # --with-ssl=<path> - uuid => undef, # --with-ossp-uuid - xml => undef, # --with-libxml=<path> - xslt => undef, # --with-libxslt=<path> - iconv => undef, # (not in configure, path to iconv) - zlib => undef # --with-zlib=<path> + ldap => 1, # --with-ldap + extraver => undef, # --with-extra-version=<string> + nls => undef, # --enable-nls=<path> + tcl => undef, # --with-tls=<path> + perl => undef, # --with-perl + python => undef, # --with-python=<path> + openssl => undef, # --with-ssl=<path> + uuid => undef, # --with-ossp-uuid + xml => undef, # --with-libxml=<path> + xslt => undef, # --with-libxslt=<path> + iconv => undef, # (not in configure, path to iconv) + zlib => undef # --with-zlib=<path> }; 1;
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers