@@ -106,6 +106,9 @@ sub mkvcbuild
106106$postgres -> AddFiles(' src\port' ,@pgportfiles );
107107$postgres -> AddFiles(' src\common' ,@pgcommonbkndfiles );
108108$postgres -> AddDir(' src\timezone' );
109+ # We need source files from src\timezone, but that directory's resource
110+ # file pertains to "zic", not to the backend.
111+ $postgres -> RemoveFile(' src\timezone\win32ver.rc' );
109112$postgres -> AddFiles(' src\backend\parser' ,' scan.l' ,' gram.y' );
110113$postgres -> AddFiles(' src\backend\bootstrap' ,' bootscanner.l' ,
111114' bootparse.y' );
@@ -126,10 +129,11 @@ sub mkvcbuild
126129
127130my $snowball =$solution -> AddProject(' dict_snowball' ,' dll' ,' ' ,
128131' src\backend\snowball' );
132+ # This Makefile uses VPATH to find most source files in a subdirectory.
129133$snowball -> RelocateFiles(
130134' src\backend\snowball\libstemmer' ,
131135sub {
132- return shift !~/ dict_snowball.c$ / ;
136+ return shift !~/ ( dict_snowball.c|win32ver.rc) $ / ;
133137});
134138$snowball -> AddIncludeDir(' src\include\snowball' );
135139$snowball -> AddReference($postgres );
@@ -341,6 +345,7 @@ sub mkvcbuild
341345$pgregress_ecpg -> AddIncludeDir(' src\test\regress' );
342346$pgregress_ecpg -> AddDefine(' HOST_TUPLE="i686-pc-win32vc"' );
343347$pgregress_ecpg -> AddDefine(' FRONTEND' );
348+ $pgregress_ecpg -> AddDirResourceFile(' src\interfaces\ecpg\test' );
344349$pgregress_ecpg -> AddReference($libpgcommon ,$libpgport );
345350
346351my $isolation_tester =
@@ -356,6 +361,7 @@ sub mkvcbuild
356361$isolation_tester -> AddDefine(' HOST_TUPLE="i686-pc-win32vc"' );
357362$isolation_tester -> AddDefine(' FRONTEND' );
358363$isolation_tester -> AddLibrary(' ws2_32.lib' );
364+ $isolation_tester -> AddDirResourceFile(' src\test\isolation' );
359365$isolation_tester -> AddReference($libpq ,$libpgcommon ,$libpgport );
360366
361367my $pgregress_isolation =
@@ -366,6 +372,7 @@ sub mkvcbuild
366372$pgregress_isolation -> AddIncludeDir(' src\test\regress' );
367373$pgregress_isolation -> AddDefine(' HOST_TUPLE="i686-pc-win32vc"' );
368374$pgregress_isolation -> AddDefine(' FRONTEND' );
375+ $pgregress_isolation -> AddDirResourceFile(' src\test\isolation' );
369376$pgregress_isolation -> AddReference($libpgcommon ,$libpgport );
370377
371378# src/bin
@@ -448,6 +455,7 @@ sub mkvcbuild
448455my $zic =$solution -> AddProject(' zic' ,' exe' ,' utils' );
449456$zic -> AddFiles(' src\timezone' ,' zic.c' ,' ialloc.c' ,' scheck.c' ,
450457' localtime.c' );
458+ $zic -> AddDirResourceFile(' src\timezone' );
451459$zic -> AddReference($libpgcommon ,$libpgport );
452460
453461if ($solution -> {options }-> {xml })
@@ -582,21 +590,22 @@ sub mkvcbuild
582590$proj -> AddIncludeDir(' src\bin\pg_dump' );
583591$proj -> AddIncludeDir(' src\bin\psql' );
584592$proj -> AddReference($libpq ,$libpgcommon ,$libpgport );
585- $proj -> AddResourceFile(' src\bin\scripts' ,' PostgreSQL Utility' ,
586- ' win32' );
593+ $proj -> AddDirResourceFile(' src\bin\scripts' );
587594$proj -> AddLibrary(' ws2_32.lib' );
588595}
589596
590597# Regression DLL and EXE
591598my $regress =$solution -> AddProject(' regress' ,' dll' ,' misc' );
592599$regress -> AddFile(' src\test\regress\regress.c' );
600+ $regress -> AddDirResourceFile(' src\test\regress' );
593601$regress -> AddReference($postgres );
594602
595603my $pgregress =$solution -> AddProject(' pg_regress' ,' exe' ,' misc' );
596604$pgregress -> AddFile(' src\test\regress\pg_regress.c' );
597605$pgregress -> AddFile(' src\test\regress\pg_regress_main.c' );
598606$pgregress -> AddIncludeDir(' src\port' );
599607$pgregress -> AddDefine(' HOST_TUPLE="i686-pc-win32vc"' );
608+ $pgregress -> AddDirResourceFile(' src\test\regress' );
600609$pgregress -> AddReference($libpgcommon ,$libpgport );
601610
602611# fix up pg_xlogdump once it's been set up