diff --git a/doit.cmd b/doit.cmd
new file mode 100644
index 00000000..cc29bc88
--- /dev/null
+++ b/doit.cmd
@@ -0,0 +1 @@
+perl win32build.pl "C:\Program Files\PostgresProEnterprise\10" "C:\projects\pgwininstall2\pgwininstall\builddir\postgresql\postgresql-10.3\src"
\ No newline at end of file
diff --git a/msvs/pg_probackup.sln b/msvs/pg_probackup.sln
new file mode 100644
index 00000000..2df4b404
--- /dev/null
+++ b/msvs/pg_probackup.sln
@@ -0,0 +1,28 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Express 2013 for Windows Desktop
+VisualStudioVersion = 12.0.31101.0
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "pg_probackup", "pg_probackup.vcxproj", "{4886B21A-D8CA-4A03-BADF-743B24C88327}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Debug|x64 = Debug|x64
+ Release|Win32 = Release|Win32
+ Release|x64 = Release|x64
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Debug|Win32.ActiveCfg = Debug|Win32
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Debug|Win32.Build.0 = Debug|Win32
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Debug|x64.ActiveCfg = Debug|x64
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Debug|x64.Build.0 = Debug|x64
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Release|Win32.ActiveCfg = Release|Win32
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Release|Win32.Build.0 = Release|Win32
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Release|x64.ActiveCfg = Release|x64
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}.Release|x64.Build.0 = Release|x64
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/msvs/template.pg_probackup.vcxproj b/msvs/template.pg_probackup.vcxproj
new file mode 100644
index 00000000..8c731e28
--- /dev/null
+++ b/msvs/template.pg_probackup.vcxproj
@@ -0,0 +1,203 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}
+ Win32Proj
+ pg_probackup
+
+
+
+ Application
+ true
+ v120
+ MultiByte
+
+
+ Application
+ true
+ v120
+ MultiByte
+
+
+ Application
+ false
+ v120
+ true
+ MultiByte
+
+
+ Application
+ false
+ v120
+ true
+ MultiByte
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+ true
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+ false
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+ false
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+
+
+
+ Level3
+ Disabled
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ @ADDLIBS32@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+
+ Level3
+ Disabled
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ @ADDLIBS@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+ @ADDLIBS32@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+ libc;%(IgnoreSpecificDefaultLibraries)
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+ @ADDLIBS@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+ libc;%(IgnoreSpecificDefaultLibraries)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/msvs/template.pg_probackup_2.vcxproj b/msvs/template.pg_probackup_2.vcxproj
new file mode 100644
index 00000000..2fc101a4
--- /dev/null
+++ b/msvs/template.pg_probackup_2.vcxproj
@@ -0,0 +1,203 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ {4886B21A-D8CA-4A03-BADF-743B24C88327}
+ Win32Proj
+ pg_probackup
+
+
+
+ Application
+ true
+ v120
+ MultiByte
+
+
+ Application
+ true
+ v120
+ MultiByte
+
+
+ Application
+ false
+ v120
+ true
+ MultiByte
+
+
+ Application
+ false
+ v120
+ true
+ MultiByte
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ true
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+ true
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+ false
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+ false
+ ../;@PGSRC@\include;@PGSRC@\bin\pg_basebackup;@PGSRC@\bin\pg_rewind;@PGSRC@\include\port\win32_msvc;@PGSRC@\interfaces\libpq;@PGSRC@\include\port\win32;@PGSRC@\port;@ADDINCLUDE@;$(IncludePath)
+ @PGROOT@\lib;@$(LibraryPath)
+
+
+
+
+
+ Level3
+ Disabled
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ @ADDLIBS@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+
+
+
+
+
+
+
+ Level3
+ Disabled
+ _CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ @ADDLIBS@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+ @ADDLIBS@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+ libc;%(IgnoreSpecificDefaultLibraries)
+
+
+
+
+ Level3
+
+
+ MaxSpeed
+ true
+ true
+ _CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_DEPRECATE;WIN32;NDEBUG;_CONSOLE;_LIB;%(PreprocessorDefinitions)
+ true
+
+
+ Console
+ true
+ true
+ true
+ @ADDLIBS@;libpgfeutils.lib;libpgcommon.lib;libpgport.lib;libpq.lib;ws2_32.lib;%(AdditionalDependencies)
+ libc;%(IgnoreSpecificDefaultLibraries)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/win32build.pl b/win32build.pl
new file mode 100644
index 00000000..14864181
--- /dev/null
+++ b/win32build.pl
@@ -0,0 +1,240 @@
+#!/usr/bin/perl
+use JSON;
+our $repack_version;
+our $pgdir;
+our $pgsrc;
+if (@ARGV!=2) {
+ print STDERR "Usage $0 postgress-instalation-root pg-source-dir \n";
+ exit 1;
+}
+
+
+our $liblist="";
+
+
+$pgdir = shift @ARGV;
+$pgsrc = shift @ARGV if @ARGV;
+
+
+our $arch = $ENV{'ARCH'} || "x64";
+$arch='Win32' if ($arch eq 'x86' || $arch eq 'X86');
+$arch='x64' if $arch eq 'X64';
+
+$conffile = $pgsrc."/tools/msvc/config.pl";
+
+
+die 'Could not find config.pl'
+ unless (-f $conffile);
+
+our $config;
+do $conffile;
+
+
+if (! -d "$pgdir/bin" || !-d "$pgdir/include" || !-d "$pgdir/lib") {
+ print STDERR "Directory $pgdir doesn't look like root of postgresql installation\n";
+ exit 1;
+}
+our $includepath="";
+our $libpath="";
+our $libpath32="";
+AddProject();
+
+print "\n\n";
+print $libpath."\n";
+print $includepath."\n";
+
+# open F,"<","META.json" or die "Cannot open META.json: $!\n";
+# {
+# local $/ = undef;
+# $decoded = decode_json();
+# $repack_version= $decoded->{'version'};
+# }
+
+# substitute new path in the project files
+
+
+
+preprocess_project("./msvs/template.pg_probackup.vcxproj","./msvs/pg_probackup.vcxproj");
+
+exit 0;
+
+
+sub preprocess_project {
+ my $in = shift;
+ my $out = shift;
+ our $pgdir;
+ our $adddir;
+ my $libs;
+ if (defined $adddir) {
+ $libs ="$adddir;";
+ } else{
+ $libs ="";
+ }
+ open IN,"<",$in or die "Cannot open $in: $!\n";
+ open OUT,">",$out or die "Cannot open $out: $!\n";
+
+# $includepath .= ";";
+# $libpath .= ";";
+
+ while () {
+ s/\@PGROOT\@/$pgdir/g;
+ s/\@ADDLIBS\@/$libpath/g;
+ s/\@ADDLIBS32\@/$libpath32/g;
+ s/\@PGSRC\@/$pgsrc/g;
+ s/\@ADDINCLUDE\@/$includepath/g;
+
+
+ print OUT $_;
+ }
+ close IN;
+ close OUT;
+
+}
+
+
+
+# my sub
+sub AddLibrary
+{
+ $inc = shift;
+ if ($libpath ne '')
+ {
+ $libpath .= ';';
+ }
+ $libpath .= $inc;
+ if ($libpath32 ne '')
+ {
+ $libpath32 .= ';';
+ }
+ $libpath32 .= $inc;
+
+}
+sub AddLibrary32
+{
+ $inc = shift;
+ if ($libpath32 ne '')
+ {
+ $libpath32 .= ';';
+ }
+ $libpath32 .= $inc;
+
+}
+sub AddLibrary64
+{
+ $inc = shift;
+ if ($libpath ne '')
+ {
+ $libpath .= ';';
+ }
+ $libpath .= $inc;
+
+}
+
+sub AddIncludeDir
+{
+ # my ($self, $inc) = @_;
+ $inc = shift;
+ if ($includepath ne '')
+ {
+ $includepath .= ';';
+ }
+ $includepath .= $inc;
+
+}
+
+sub AddProject
+{
+ # my ($self, $name, $type, $folder, $initialdir) = @_;
+
+ if ($config->{zlib})
+ {
+ AddIncludeDir($config->{zlib} . '\include');
+ AddLibrary($config->{zlib} . '\lib\zdll.lib');
+ }
+ if ($config->{openssl})
+ {
+ AddIncludeDir($config->{openssl} . '\include');
+ if (-e "$config->{openssl}/lib/VC/ssleay32MD.lib")
+ {
+ AddLibrary(
+ $config->{openssl} . '\lib\VC\ssleay32.lib', 1);
+ AddLibrary(
+ $config->{openssl} . '\lib\VC\libeay32.lib', 1);
+ }
+ else
+ {
+ # We don't expect the config-specific library to be here,
+ # so don't ask for it in last parameter
+ AddLibrary(
+ $config->{openssl} . '\lib\ssleay32.lib', 0);
+ AddLibrary(
+ $config->{openssl} . '\lib\libeay32.lib', 0);
+ }
+ }
+ if ($config->{nls})
+ {
+ AddIncludeDir($config->{nls} . '\include');
+ AddLibrary($config->{nls} . '\lib\libintl.lib');
+ }
+ if ($config->{gss})
+ {
+ AddIncludeDir($config->{gss} . '\inc\krb5');
+ AddLibrary($config->{gss} . '\lib\i386\krb5_32.lib');
+ AddLibrary($config->{gss} . '\lib\i386\comerr32.lib');
+ AddLibrary($config->{gss} . '\lib\i386\gssapi32.lib');
+ }
+ if ($config->{iconv})
+ {
+ AddIncludeDir($config->{iconv} . '\include');
+ AddLibrary($config->{iconv} . '\lib\iconv.lib');
+ }
+ if ($config->{icu})
+ {
+ AddIncludeDir($config->{icu} . '\include');
+ AddLibrary32($config->{icu} . '\lib\icuin.lib');
+ AddLibrary32($config->{icu} . '\lib\icuuc.lib');
+ AddLibrary32($config->{icu} . '\lib\icudt.lib');
+ AddLibrary64($config->{icu} . '\lib64\icuin.lib');
+ AddLibrary64($config->{icu} . '\lib64\icuuc.lib');
+ AddLibrary64($config->{icu} . '\lib64\icudt.lib');
+ }
+ if ($config->{xml})
+ {
+ AddIncludeDir($config->{xml} . '\include');
+ AddIncludeDir($config->{xml} . '\include\libxml2');
+ AddLibrary($config->{xml} . '\lib\libxml2.lib');
+ }
+ if ($config->{xslt})
+ {
+ AddIncludeDir($config->{xslt} . '\include');
+ AddLibrary($config->{xslt} . '\lib\libxslt.lib');
+ }
+ if ($config->{libedit})
+ {
+ AddIncludeDir($config->{libedit} . '\include');
+ # AddLibrary($config->{libedit} . "\\" .
+ # ($arch eq 'x64'? 'lib64': 'lib32').'\edit.lib');
+ AddLibrary32($config->{libedit} . '\\lib32\edit.lib');
+ AddLibrary64($config->{libedit} . '\\lib64\edit.lib');
+
+
+ }
+ if ($config->{uuid})
+ {
+ AddIncludeDir($config->{uuid} . '\include');
+ AddLibrary($config->{uuid} . '\lib\uuid.lib');
+ }
+
+ if ($config->{zstd})
+ {
+ AddIncludeDir($config->{zstd});
+ # AddLibrary($config->{zstd}. "\\".($arch eq 'x64'? "zstdlib_x64.lib" : "zstdlib_x86.lib"));
+ AddLibrary32($config->{zstd}. "\\zstdlib_x86.lib");
+ AddLibrary64($config->{zstd}. "\\zstdlib_x64.lib") ;
+ }
+ # return $proj;
+}
+
+
+
+
diff --git a/win32build_2.pl b/win32build_2.pl
new file mode 100644
index 00000000..a4f75553
--- /dev/null
+++ b/win32build_2.pl
@@ -0,0 +1,219 @@
+#!/usr/bin/perl
+use JSON;
+our $repack_version;
+our $pgdir;
+our $pgsrc;
+if (@ARGV!=2) {
+ print STDERR "Usage $0 postgress-instalation-root pg-source-dir \n";
+ exit 1;
+}
+
+
+our $liblist="";
+
+
+$pgdir = shift @ARGV;
+$pgsrc = shift @ARGV if @ARGV;
+
+
+our $arch = $ENV{'ARCH'} || "x64";
+$arch='Win32' if ($arch eq 'x86' || $arch eq 'X86');
+$arch='x64' if $arch eq 'X64';
+
+$conffile = $pgsrc."/tools/msvc/config.pl";
+
+
+die 'Could not find config.pl'
+ unless (-f $conffile);
+
+our $config;
+do $conffile;
+
+
+if (! -d "$pgdir/bin" || !-d "$pgdir/include" || !-d "$pgdir/lib") {
+ print STDERR "Directory $pgdir doesn't look like root of postgresql installation\n";
+ exit 1;
+}
+our $includepath="";
+our $libpath="";
+AddProject();
+
+print "\n\n";
+print $libpath."\n";
+print $includepath."\n";
+
+# open F,"<","META.json" or die "Cannot open META.json: $!\n";
+# {
+# local $/ = undef;
+# $decoded = decode_json();
+# $repack_version= $decoded->{'version'};
+# }
+
+# substitute new path in the project files
+
+
+
+preprocess_project("./msvs/template.pg_probackup_2.vcxproj","./msvs/pg_probackup.vcxproj");
+
+exit 0;
+
+
+sub preprocess_project {
+ my $in = shift;
+ my $out = shift;
+ our $pgdir;
+ our $adddir;
+ my $libs;
+ if (defined $adddir) {
+ $libs ="$adddir;";
+ } else{
+ $libs ="";
+ }
+ open IN,"<",$in or die "Cannot open $in: $!\n";
+ open OUT,">",$out or die "Cannot open $out: $!\n";
+
+# $includepath .= ";";
+# $libpath .= ";";
+
+ while () {
+ s/\@PGROOT\@/$pgdir/g;
+ s/\@ADDLIBS\@/$libpath/g;
+ s/\@PGSRC\@/$pgsrc/g;
+ s/\@ADDINCLUDE\@/$includepath/g;
+
+
+ print OUT $_;
+ }
+ close IN;
+ close OUT;
+
+}
+
+
+
+# my sub
+sub AddLibrary
+{
+ $inc = shift;
+ if ($libpath ne '')
+ {
+ $libpath .= ';';
+ }
+ $libpath .= $inc;
+
+}
+sub AddIncludeDir
+{
+ # my ($self, $inc) = @_;
+ $inc = shift;
+ if ($includepath ne '')
+ {
+ $includepath .= ';';
+ }
+ $includepath .= $inc;
+
+}
+
+sub AddProject
+{
+ # my ($self, $name, $type, $folder, $initialdir) = @_;
+
+ if ($config->{zlib})
+ {
+ AddIncludeDir($config->{zlib} . '\include');
+ AddLibrary($config->{zlib} . '\lib\zdll.lib');
+ }
+ if ($config->{openssl})
+ {
+ AddIncludeDir($config->{openssl} . '\include');
+ if (-e "$config->{openssl}/lib/VC/ssleay32MD.lib")
+ {
+ AddLibrary(
+ $config->{openssl} . '\lib\VC\ssleay32.lib', 1);
+ AddLibrary(
+ $config->{openssl} . '\lib\VC\libeay32.lib', 1);
+ }
+ else
+ {
+ # We don't expect the config-specific library to be here,
+ # so don't ask for it in last parameter
+ AddLibrary(
+ $config->{openssl} . '\lib\ssleay32.lib', 0);
+ AddLibrary(
+ $config->{openssl} . '\lib\libeay32.lib', 0);
+ }
+ }
+ if ($config->{nls})
+ {
+ AddIncludeDir($config->{nls} . '\include');
+ AddLibrary($config->{nls} . '\lib\libintl.lib');
+ }
+ if ($config->{gss})
+ {
+ AddIncludeDir($config->{gss} . '\inc\krb5');
+ AddLibrary($config->{gss} . '\lib\i386\krb5_32.lib');
+ AddLibrary($config->{gss} . '\lib\i386\comerr32.lib');
+ AddLibrary($config->{gss} . '\lib\i386\gssapi32.lib');
+ }
+ if ($config->{iconv})
+ {
+ AddIncludeDir($config->{iconv} . '\include');
+ AddLibrary($config->{iconv} . '\lib\iconv.lib');
+ }
+ if ($config->{icu})
+ {
+ AddIncludeDir($config->{icu} . '\include');
+ if ($arch eq 'Win32')
+ {
+ AddLibrary($config->{icu} . '\lib\icuin.lib');
+ AddLibrary($config->{icu} . '\lib\icuuc.lib');
+ AddLibrary($config->{icu} . '\lib\icudt.lib');
+ }
+ else
+ {
+ AddLibrary($config->{icu} . '\lib64\icuin.lib');
+ AddLibrary($config->{icu} . '\lib64\icuuc.lib');
+ AddLibrary($config->{icu} . '\lib64\icudt.lib');
+ }
+ }
+ if ($config->{xml})
+ {
+ AddIncludeDir($config->{xml} . '\include');
+ AddIncludeDir($config->{xml} . '\include\libxml2');
+ AddLibrary($config->{xml} . '\lib\libxml2.lib');
+ }
+ if ($config->{xslt})
+ {
+ AddIncludeDir($config->{xslt} . '\include');
+ AddLibrary($config->{xslt} . '\lib\libxslt.lib');
+ }
+ if ($config->{libedit})
+ {
+ AddIncludeDir($config->{libedit} . '\include');
+ AddLibrary($config->{libedit} . "\\" .
+ ($arch eq 'x64'? 'lib64': 'lib32').'\edit.lib');
+ }
+ if ($config->{uuid})
+ {
+ AddIncludeDir($config->{uuid} . '\include');
+ AddLibrary($config->{uuid} . '\lib\uuid.lib');
+ }
+ if ($config->{libedit})
+ {
+ AddIncludeDir($config->{libedit} . '\include');
+ AddLibrary($config->{libedit} . "\\" .
+ ($arch eq 'x64'? 'lib64': 'lib32').'\edit.lib');
+ }
+ if ($config->{zstd})
+ {
+ AddIncludeDir($config->{zstd});
+ AddLibrary($config->{zstd}. "\\".
+ ($arch eq 'x64'? "zstdlib_x64.lib" : "zstdlib_x86.lib")
+ );
+ }
+ # return $proj;
+}
+
+
+
+