aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2018-05-18 11:53:18 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2018-05-18 11:53:18 -0400
commita194106c1b4468c74dbf6e83d845be86239844aa (patch)
treef4bc7d847c0a3e79f18e06f5a6ee8b930a90b09f
parent3dacd9bf32873c80045a2b758d64c031d70dac83 (diff)
downloadpostgresql-a194106c1b4468c74dbf6e83d845be86239844aa.tar.gz
postgresql-a194106c1b4468c74dbf6e83d845be86239844aa.zip
MSVC builds must use a separate stamp file for copying generated headers.
Commit bad51a49a tried to use a shortcut with just one stamp file recording the actions of generating the pg_*_d.h headers and copying them to the src/include/catalog/ directory. That doesn't work in all scenarios though, so we must use two stamp files like the Makefiles do. John Naylor Discussion: https://postgr.es/m/CANFyU944GdHr=puPbA78STnqr=8kgMrGF-VDHck6aO_-qNDALg@mail.gmail.com
-rw-r--r--src/tools/msvc/Solution.pm8
-rwxr-xr-xsrc/tools/msvc/clean.bat1
2 files changed, 9 insertions, 0 deletions
diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm
index 4ad1f8f8b4a..a33e68eccf0 100644
--- a/src/tools/msvc/Solution.pm
+++ b/src/tools/msvc/Solution.pm
@@ -501,7 +501,12 @@ EOF
|| confess "Could not touch bki-stamp";
close($f);
chdir('../../..');
+ }
+ if (IsNewer(
+ 'src/include/catalog/header-stamp',
+ 'src/backend/catalog/bki-stamp'))
+ {
# Copy generated headers to include directory.
opendir(my $dh, 'src/backend/catalog/')
|| die "Can't opendir src/backend/catalog/ $!";
@@ -516,6 +521,9 @@ EOF
copyFile(
'src/backend/catalog/schemapg.h',
'src/include/catalog/schemapg.h');
+ open(my $chs, '>', 'src/include/catalog/header-stamp')
+ || confess "Could not touch header-stamp";
+ close($chs);
}
open(my $o, '>', "doc/src/sgml/version.sgml")
diff --git a/src/tools/msvc/clean.bat b/src/tools/msvc/clean.bat
index a041ef2ebde..65454421d70 100755
--- a/src/tools/msvc/clean.bat
+++ b/src/tools/msvc/clean.bat
@@ -49,6 +49,7 @@ if exist src\include\storage\lwlocknames.h del /q src\include\storage\lwlockname
if exist src\include\utils\probes.h del /q src\include\utils\probes.h
if exist src\include\catalog\schemapg.h del /q src\include\catalog\schemapg.h
if exist src\include\catalog\pg_*_d.h del /q src\include\catalog\pg_*_d.h
+if exist src\include\catalog\header-stamp del /q src\include\catalog\header-stamp
if exist doc\src\sgml\version.sgml del /q doc\src\sgml\version.sgml
if %DIST%==1 if exist src\backend\utils\fmgroids.h del /q src\backend\utils\fmgroids.h