From 91572ee0a6dfeb62dda6c375f613d1b7fdfc1383 Mon Sep 17 00:00:00 2001 From: Andrew Dunstan Date: Sun, 27 Nov 2011 20:14:47 -0500 Subject: [PATCH] Make pg_dumpall build with the right object files under MSVC. This fixes a longstanding but up to now benign bug in the way pg_dumpall was built. The bug was exposed by recent code adjustments. The Makefile does not use $(OBJS) to build pg_dumpall, so this fix removes their source files from the pg_dumpall object and adds in the one source file it consequently needs. --- src/tools/msvc/Mkvcbuild.pm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/tools/msvc/Mkvcbuild.pm b/src/tools/msvc/Mkvcbuild.pm index 482f10051b..94ecb657cf 100644 --- a/src/tools/msvc/Mkvcbuild.pm +++ b/src/tools/msvc/Mkvcbuild.pm @@ -344,9 +344,17 @@ sub mkvcbuild $pgdump->AddFile('src\backend\parser\kwlookup.c'); my $pgdumpall = AddSimpleFrontend('pg_dump', 1); + # pg_dumpall doesn't use the files in the Makefile's $(OBJS), unlike + # pg_dump and pg_restore. + # So remove their sources from the object, keeping the other setup that + # AddSimpleFrontend() has done. + my @nodumpall = grep { m/src\\bin\\pg_dump\\.*\.c$/ } + keys %{$pgdumpall->{files}}; + delete @{$pgdumpall->{files}}{@nodumpall}; $pgdumpall->{name} = 'pg_dumpall'; $pgdumpall->AddIncludeDir('src\backend'); $pgdumpall->AddFile('src\bin\pg_dump\pg_dumpall.c'); + $pgdumpall->AddFile('src\bin\pg_dump\dumputils.c'); $pgdumpall->AddFile('src\bin\pg_dump\keywords.c'); $pgdumpall->AddFile('src\backend\parser\kwlookup.c'); -- 2.40.0