summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2016-01-19 23:30:29 -0500
committerBruce Momjian <bruce@momjian.us>2016-01-19 23:30:29 -0500
commit8b3d5280125f25c9eee5531fe5ff059f5e922da5 (patch)
tree7de871abcae5e9ff17e6c2edb939433607b3c6a0 /src
parentfc5d5e9de7b9f972633569fd6932b0582630671f (diff)
Properly install dynloader.h on MSVC builds
This will enable PL/Java to be cleanly compiled, as dynloader.h is a requirement. Report by Chapman Flack Patch by Michael Paquier Backpatch through 9.1
Diffstat (limited to 'src')
-rw-r--r--src/backend/utils/fmgr/dfmgr.c4
-rw-r--r--src/tools/msvc/Install.pm5
-rw-r--r--src/tools/msvc/Solution.pm8
-rwxr-xr-xsrc/tools/msvc/clean.bat1
4 files changed, 12 insertions, 6 deletions
diff --git a/src/backend/utils/fmgr/dfmgr.c b/src/backend/utils/fmgr/dfmgr.c
index 042af7877bf..11e07a23e2d 100644
--- a/src/backend/utils/fmgr/dfmgr.c
+++ b/src/backend/utils/fmgr/dfmgr.c
@@ -16,11 +16,7 @@
#include <sys/stat.h>
-#ifndef WIN32_ONLY_COMPILER
#include "dynloader.h"
-#else
-#include "port/dynloader/win32.h"
-#endif
#include "lib/stringinfo.h"
#include "miscadmin.h"
#include "utils/dynamic_loader.h"
diff --git a/src/tools/msvc/Install.pm b/src/tools/msvc/Install.pm
index ce17f72ec5a..809060343a8 100644
--- a/src/tools/msvc/Install.pm
+++ b/src/tools/msvc/Install.pm
@@ -530,7 +530,7 @@ sub CopyIncludeFiles
'Public headers', $target . '/include/',
'src/include/', 'postgres_ext.h',
'pg_config.h', 'pg_config_ext.h',
- 'pg_config_os.h', 'pg_config_manual.h');
+ 'pg_config_os.h', 'dynloader.h', 'pg_config_manual.h');
lcopy('src/include/libpq/libpq-fs.h', $target . '/include/libpq/')
|| croak 'Could not copy libpq-fs.h';
@@ -553,7 +553,8 @@ sub CopyIncludeFiles
CopyFiles(
'Server headers',
$target . '/include/server/',
- 'src/include/', 'pg_config.h', 'pg_config_ext.h', 'pg_config_os.h');
+ 'src/include/', 'pg_config.h', 'pg_config_ext.h', 'pg_config_os.h',
+ 'dynloader.h');
CopyFiles(
'Grammar header',
$target . '/include/server/parser/',
diff --git a/src/tools/msvc/Solution.pm b/src/tools/msvc/Solution.pm
index f7a5abbd6af..720362aff7f 100644
--- a/src/tools/msvc/Solution.pm
+++ b/src/tools/msvc/Solution.pm
@@ -289,6 +289,14 @@ s{PG_VERSION_STR "[^"]+"}{__STRINGIFY(x) #x\n#define __STRINGIFY2(z) __STRINGIFY
'src\include\utils\fmgroids.h');
}
+ if (IsNewer(
+ 'src/include/dynloader.h',
+ 'src/backend/port/dynloader/win32.h'))
+ {
+ copyFile('src/backend/port/dynloader/win32.h',
+ 'src/include/dynloader.h');
+ }
+
if (IsNewer('src\include\utils\probes.h', 'src\backend\utils\probes.d'))
{
print "Generating probes.h...\n";
diff --git a/src/tools/msvc/clean.bat b/src/tools/msvc/clean.bat
index b071cb740cc..33784cd2b3b 100755
--- a/src/tools/msvc/clean.bat
+++ b/src/tools/msvc/clean.bat
@@ -24,6 +24,7 @@ REM Delete files created with GenerateFiles() in Solution.pm
if exist src\include\pg_config.h del /q src\include\pg_config.h
if exist src\include\pg_config_ext.h del /q src\include\pg_config_ext.h
if exist src\include\pg_config_os.h del /q src\include\pg_config_os.h
+if exist src\include\dynloader.h del /q src\include\dynloader.h
if %DIST%==1 if exist src\backend\parser\gram.h del /q src\backend\parser\gram.h
if exist src\include\utils\errcodes.h del /q src\include\utils\errcodes.h
if exist src\include\utils\fmgroids.h del /q src\include\utils\fmgroids.h