From e583ffe947de7a6e3be49a0f267234616f390485 Mon Sep 17 00:00:00 2001
From: Andrew Dunstan <andrew@dunslane.net>
Date: Thu, 11 Oct 2012 12:36:42 -0400
Subject: [PATCH] Unbreak MSVC builds after recent Makefile refactoring.

Based on a suggestion by Peter Eisentraut.
---
 src/tools/msvc/pgbison.pl | 3 ++-
 src/tools/msvc/pgflex.pl  | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/tools/msvc/pgbison.pl b/src/tools/msvc/pgbison.pl
index d6f2444841d..31e75403f59 100644
--- a/src/tools/msvc/pgbison.pl
+++ b/src/tools/msvc/pgbison.pl
@@ -42,7 +42,8 @@ open($mf, $makefile);
 local $/ = undef;
 $make = <$mf>;
 close($mf);
-my $headerflag = ($make =~ /\$\(BISON\)\s+-d/ ? '-d' : '');
+my $basetarg = basename($output);
+my $headerflag = ($make =~ /^$basetarg:\s+BISONFLAGS\b.*-d/m ? '-d' : '');
 
 system("bison $headerflag $input -o $output");
 exit $? >> 8;
diff --git a/src/tools/msvc/pgflex.pl b/src/tools/msvc/pgflex.pl
index 259f2187ed3..7e4c0f90b70 100644
--- a/src/tools/msvc/pgflex.pl
+++ b/src/tools/msvc/pgflex.pl
@@ -44,7 +44,8 @@ open($mf, $makefile);
 local $/ = undef;
 $make = <$mf>;
 close($mf);
-my $flexflags = ($make =~ /^\s*FLEXFLAGS\s*=\s*(\S.*)/m ? $1 : '');
+my $basetarg = basename($output);
+my $flexflags = ($make =~ /^$basetarg:\s*FLEXFLAGS\s*=\s*(\S.*)/m ? $1 : '');
 
 system("flex $flexflags -o$output $input");
 if ($? == 0)
-- 
GitLab