On 21 March 2016 at 10:52, Tom Lane <t...@sss.pgh.pa.us> wrote:
> Best-guess attempt at fixing MSVC build for 68ab8e8ba4a471d9.
>
> pgbench now needs to use src/bin/psql/psqlscan.l, but it's not very clear
> how to fit that into the MSVC build system.  If this doesn't work I'm going
> to need some help from somebody who actually understands those scripts ...

I see this didn't fix the problem :-(

Perl is not my native tongue, but after a little study and some
testing on a windows machine, the attached seems to fix the problem.

I've never much looked at these script before, but it seems that the
parsing of the Makefile just assumes that psqlscan.c is in the same
path as the rest of the stuff. The patch just uses some already
defined file replace functions to switch the wrong filename out for
the correct one before the Visual Studios project file is created.

-- 
 David Rowley                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services
diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm
index 3d929e6..ab65fa3 100644
--- a/src/tools/msvc/Mkvcbuild.pm
+++ b/src/tools/msvc/Mkvcbuild.pm
@@ -71,7 +71,7 @@ my $frontend_extrasource = {
            'src/bin/psql/psqlscan.l' ] };
 my @frontend_excludes = (
        'pgevent',     'pg_basebackup', 'pg_rewind', 'pg_dump',
-       'pg_xlogdump', 'scripts');
+       'pg_xlogdump', 'scripts',       'pgbench');
 
 sub mkvcbuild
 {
@@ -674,6 +674,11 @@ sub mkvcbuild
        }
        $pg_xlogdump->AddFile('src/backend/access/transam/xlogreader.c');
 
+       # fix up pgbench once it's been set up
+       # we're borrowing psqlscan.c from psql, so grab it from the correct 
place
+       my $pgbench = AddSimpleFrontend('pgbench');
+       $pgbench->ReplaceFile('src/bin/pgbench/psqlscan.c', 
'src/bin/psql/psqlscan.c');
+
        $solution->Save();
        return $solution->{vcver};
 }
-- 
Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-committers

Reply via email to