diff --git a/.gitignore b/.gitignore
index d930bd8d75..12eba64dce 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,7 @@
temp/
/gen/
-output_Win32/
-output_x64/
+output_Win32_*/
+output_x64_*/
examples/prebuilt/
.vs/
m4/
diff --git a/builds/install/arch-specific/win32/BuildExecutableInstall.bat b/builds/install/arch-specific/win32/BuildExecutableInstall.bat
index b6a1463d43..672889a591 100644
--- a/builds/install/arch-specific/win32/BuildExecutableInstall.bat
+++ b/builds/install/arch-specific/win32/BuildExecutableInstall.bat
@@ -652,7 +652,7 @@ for %%v in ( %1 %2 %3 %4 %5 %6 %7 %8 %9 ) do (
pushd ..\..\..\win32
::This must be called from the directory it resides in.
-@call setenvvar.bat
+@call setenvvar.bat %*
popd
@if errorlevel 1 (goto :END)
diff --git a/builds/install/arch-specific/win32/FirebirdInstall.iss b/builds/install/arch-specific/win32/FirebirdInstall.iss
index 80c67e64a2..7741b4394f 100644
--- a/builds/install/arch-specific/win32/FirebirdInstall.iss
+++ b/builds/install/arch-specific/win32/FirebirdInstall.iss
@@ -117,8 +117,9 @@
;We speed up compilation (and hence testing) by not compressing contents.
#undef compression
-;Default to x64 for testing
+;Default to x64_release for testing
#define PlatformTarget "x64"
+#define ConfigurationTarget "release"
#endif
;-------#ifdef iss_debug
@@ -216,6 +217,15 @@
#endif
#endif
+;---- If we haven't already set ConfigurationTarget then pick it up from the environment.
+#ifndef ConfigurationTarget
+#define ConfigurationTarget GetEnv("FBBUILD_BUILDTYPE")
+#endif
+#if ConfigurationTarget == ""
+;Assume release
+#define ConfigurationTarget "release"
+#endif
+
#if FB_BUILD_TYPE == "T"
;If we are still under development we can ignore some missing files.
#define SkipFileIfDevStatus " skipifsourcedoesntexist "
@@ -224,7 +234,7 @@
#endif
;This location is relative to SourceDir (declared below)
-#define FilesDir="output_" + PlatformTarget
+#define FilesDir="output_" + PlatformTarget + "_" + ConfigurationTarget
#if PlatformTarget == "x64"
#define WOW64Dir="output_win32"
#endif
diff --git a/builds/win32/clean_all.bat b/builds/win32/clean_all.bat
index bcc53ad0bc..3cf5d940eb 100644
--- a/builds/win32/clean_all.bat
+++ b/builds/win32/clean_all.bat
@@ -1,6 +1,6 @@
@echo off
-@call setenvvar.bat
+@call setenvvar.bat %*
@if errorlevel 1 (goto :END)
set FB_CLEAN_SHARED=
diff --git a/builds/win32/create_msgs.bat b/builds/win32/create_msgs.bat
index 064d8d1ada..fb19bd6994 100644
--- a/builds/win32/create_msgs.bat
+++ b/builds/win32/create_msgs.bat
@@ -1,8 +1,7 @@
@echo off
-@call setenvvar.bat
+@call setenvvar.bat %*
@if errorlevel 1 (goto :END)
-@if not defined FB_BOOT_BIN_DIR (@call set_build_target.bat %*)
@echo Building build_msg (%FB_OBJ_DIR%)...
@call compile.bat builds\win32\%VS_VER%\FirebirdBoot build_msg_%FB_TARGET_PLATFORM%.log build_msg
diff --git a/builds/win32/make_all.bat b/builds/win32/make_all.bat
index facf459e3f..f74c0abf17 100644
--- a/builds/win32/make_all.bat
+++ b/builds/win32/make_all.bat
@@ -2,7 +2,7 @@
set ERRLEV=0
:: Set env vars
-@call setenvvar.bat
+@call setenvvar.bat %*
@if errorlevel 1 (call :ERROR Executing setenvvar.bat failed & goto :EOF)
@@ -11,8 +11,6 @@ set ERRLEV=0
@if not exist %FB_BIN_DIR%\firebird.msg (goto :HELP_BOOT & goto :EOF)
-@call set_build_target.bat %*
-
::==========
:: MAIN
diff --git a/builds/win32/make_boot.bat b/builds/win32/make_boot.bat
index 8c7789a0ab..9620b8dafd 100644
--- a/builds/win32/make_boot.bat
+++ b/builds/win32/make_boot.bat
@@ -8,11 +8,9 @@
set ERRLEV=0
:CHECK_ENV
-@call setenvvar.bat
+@call setenvvar.bat %*
@if errorlevel 1 (goto :END)
-@call set_build_target.bat %*
-
::===========
:MAIN
@@ -67,7 +65,7 @@ if "%ERRLEV%"=="1" goto :END
::=======
@echo Preprocessing the source files needed to build gpre and isql...
-@call preprocess.bat BOOT
+@call preprocess.bat %FBBUILD_BUILDTYPE% BOOT
::=======
call :engine
@@ -93,14 +91,14 @@ if "%ERRLEV%"=="1" goto :END
::=======
@echo Preprocessing the entire source tree...
-@call preprocess.bat
+@call preprocess.bat %FBBUILD_BUILDTYPE%
::=======
@call :msgs
if "%ERRLEV%"=="1" goto :END
::=======
-@call create_msgs.bat msg
+@call create_msgs.bat %FBBUILD_BUILDTYPE%
::=======
@call :NEXT_STEP
@@ -262,8 +260,6 @@ goto :EOF
@echo create database '%FB_GEN_DB_DIR%/dbs/metadata.fdb'; | "%FB_BIN_DIR%\isql" -q -sqldialect 1
@copy %FB_GEN_DIR%\dbs\metadata.fdb %FB_GEN_DIR%\dbs\yachts.lnk > nul
-@call create_msgs.bat db
-
@goto :EOF
diff --git a/builds/win32/make_examples.bat b/builds/win32/make_examples.bat
index e5e96b1c97..e1a639564c 100644
--- a/builds/win32/make_examples.bat
+++ b/builds/win32/make_examples.bat
@@ -1,11 +1,9 @@
@echo off
:: Set env vars
-@call setenvvar.bat
+@call setenvvar.bat %*
@if errorlevel 1 (goto :EOF)
-@call set_build_target.bat %*
-
:: verify that boot was run before
@if not exist %FB_BIN_DIR%\isql.exe (goto :HELP_BOOT & goto :EOF)
@if not exist %FB_BIN_DIR%\gpre.exe (goto :HELP_BOOT & goto :EOF)
diff --git a/builds/win32/make_icu.bat b/builds/win32/make_icu.bat
index e8494b6965..e4f555b049 100644
--- a/builds/win32/make_icu.bat
+++ b/builds/win32/make_icu.bat
@@ -2,9 +2,7 @@
:: Set env vars
-@call setenvvar.bat
-
-@call set_build_target.bat %* icu
+@call setenvvar.bat %*
::==========
:: MAIN
diff --git a/builds/win32/msvc15/chacha.vcxproj b/builds/win32/msvc15/chacha.vcxproj
index 13a415efc3..5cad10b81c 100644
--- a/builds/win32/msvc15/chacha.vcxproj
+++ b/builds/win32/msvc15/chacha.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
diff --git a/builds/win32/msvc15/common_test.vcxproj b/builds/win32/msvc15/common_test.vcxproj
index 775335ad5a..ca9271b8ba 100644
--- a/builds/win32/msvc15/common_test.vcxproj
+++ b/builds/win32/msvc15/common_test.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/engine.vcxproj b/builds/win32/msvc15/engine.vcxproj
index 4385dffa95..1ec40958da 100644
--- a/builds/win32/msvc15/engine.vcxproj
+++ b/builds/win32/msvc15/engine.vcxproj
@@ -151,10 +151,10 @@
engine13
engine13
engine13
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
true
diff --git a/builds/win32/msvc15/engine_test.vcxproj b/builds/win32/msvc15/engine_test.vcxproj
index 5a07b67559..0835ce3a6c 100644
--- a/builds/win32/msvc15/engine_test.vcxproj
+++ b/builds/win32/msvc15/engine_test.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/fb_lock_print.vcxproj b/builds/win32/msvc15/fb_lock_print.vcxproj
index 223bcae116..520fff4818 100644
--- a/builds/win32/msvc15/fb_lock_print.vcxproj
+++ b/builds/win32/msvc15/fb_lock_print.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/fbguard.vcxproj b/builds/win32/msvc15/fbguard.vcxproj
index 84701b8722..b7adc0e2dc 100644
--- a/builds/win32/msvc15/fbguard.vcxproj
+++ b/builds/win32/msvc15/fbguard.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/fbrmclib.vcxproj b/builds/win32/msvc15/fbrmclib.vcxproj
index dc4ad8357f..cbca965f06 100644
--- a/builds/win32/msvc15/fbrmclib.vcxproj
+++ b/builds/win32/msvc15/fbrmclib.vcxproj
@@ -59,10 +59,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\bin\
- ..\..\..\output_$(PlatformName)\bin\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\bin\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\bin\
diff --git a/builds/win32/msvc15/fbserver.vcxproj b/builds/win32/msvc15/fbserver.vcxproj
index cec2190b17..5f68bb0a57 100644
--- a/builds/win32/msvc15/fbserver.vcxproj
+++ b/builds/win32/msvc15/fbserver.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
firebird
firebird
firebird
diff --git a/builds/win32/msvc15/fbsvcmgr.vcxproj b/builds/win32/msvc15/fbsvcmgr.vcxproj
index d6cf7122e2..0896595ac2 100644
--- a/builds/win32/msvc15/fbsvcmgr.vcxproj
+++ b/builds/win32/msvc15/fbsvcmgr.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/fbtrace.vcxproj b/builds/win32/msvc15/fbtrace.vcxproj
index 532c33859a..d1c9791008 100644
--- a/builds/win32/msvc15/fbtrace.vcxproj
+++ b/builds/win32/msvc15/fbtrace.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
diff --git a/builds/win32/msvc15/fbtracemgr.vcxproj b/builds/win32/msvc15/fbtracemgr.vcxproj
index f341d95433..7cd132680d 100644
--- a/builds/win32/msvc15/fbtracemgr.vcxproj
+++ b/builds/win32/msvc15/fbtracemgr.vcxproj
@@ -105,10 +105,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/gbak.vcxproj b/builds/win32/msvc15/gbak.vcxproj
index 74e3b98c43..51a8c32d7d 100644
--- a/builds/win32/msvc15/gbak.vcxproj
+++ b/builds/win32/msvc15/gbak.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/gfix.vcxproj b/builds/win32/msvc15/gfix.vcxproj
index e48788f726..6c769f030b 100644
--- a/builds/win32/msvc15/gfix.vcxproj
+++ b/builds/win32/msvc15/gfix.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/gpre.vcxproj b/builds/win32/msvc15/gpre.vcxproj
index 6f9c91677b..2c48566e58 100644
--- a/builds/win32/msvc15/gpre.vcxproj
+++ b/builds/win32/msvc15/gpre.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/gsec.vcxproj b/builds/win32/msvc15/gsec.vcxproj
index c933a7c9a5..6a655eade5 100644
--- a/builds/win32/msvc15/gsec.vcxproj
+++ b/builds/win32/msvc15/gsec.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/gsplit.vcxproj b/builds/win32/msvc15/gsplit.vcxproj
index 8abed21f15..61b929bca3 100644
--- a/builds/win32/msvc15/gsplit.vcxproj
+++ b/builds/win32/msvc15/gsplit.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/gstat.vcxproj b/builds/win32/msvc15/gstat.vcxproj
index 2327df541a..40592de37a 100644
--- a/builds/win32/msvc15/gstat.vcxproj
+++ b/builds/win32/msvc15/gstat.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/ib_util.vcxproj b/builds/win32/msvc15/ib_util.vcxproj
index 0e8156c85a..fc0000f644 100644
--- a/builds/win32/msvc15/ib_util.vcxproj
+++ b/builds/win32/msvc15/ib_util.vcxproj
@@ -107,10 +107,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/instclient.vcxproj b/builds/win32/msvc15/instclient.vcxproj
index 0350a7260d..4c033c7f8f 100644
--- a/builds/win32/msvc15/instclient.vcxproj
+++ b/builds/win32/msvc15/instclient.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/instreg.vcxproj b/builds/win32/msvc15/instreg.vcxproj
index b67b1fe6da..4286a9f066 100644
--- a/builds/win32/msvc15/instreg.vcxproj
+++ b/builds/win32/msvc15/instreg.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/instsvc.vcxproj b/builds/win32/msvc15/instsvc.vcxproj
index dc6be2cfc8..94de00b8b2 100644
--- a/builds/win32/msvc15/instsvc.vcxproj
+++ b/builds/win32/msvc15/instsvc.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/intl.vcxproj b/builds/win32/msvc15/intl.vcxproj
index a37f37291f..fe6a65c0d6 100644
--- a/builds/win32/msvc15/intl.vcxproj
+++ b/builds/win32/msvc15/intl.vcxproj
@@ -107,10 +107,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\intl\
- ..\..\..\output_$(PlatformName)\intl\
- ..\..\..\output_$(PlatformName)\intl\
- ..\..\..\output_$(PlatformName)\intl\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\intl\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\intl\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\intl\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\intl\
fbintl
fbintl
fbintl
diff --git a/builds/win32/msvc15/isql.vcxproj b/builds/win32/msvc15/isql.vcxproj
index b22e52bfb7..144996f2e4 100644
--- a/builds/win32/msvc15/isql.vcxproj
+++ b/builds/win32/msvc15/isql.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/legacy_auth.vcxproj b/builds/win32/msvc15/legacy_auth.vcxproj
index 4659e95b4b..a5893b9f05 100644
--- a/builds/win32/msvc15/legacy_auth.vcxproj
+++ b/builds/win32/msvc15/legacy_auth.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
diff --git a/builds/win32/msvc15/legacy_usermanager.vcxproj b/builds/win32/msvc15/legacy_usermanager.vcxproj
index c53a39f41c..448559e412 100644
--- a/builds/win32/msvc15/legacy_usermanager.vcxproj
+++ b/builds/win32/msvc15/legacy_usermanager.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
diff --git a/builds/win32/msvc15/nbackup.vcxproj b/builds/win32/msvc15/nbackup.vcxproj
index 6d935aca3e..e5cee93c9c 100644
--- a/builds/win32/msvc15/nbackup.vcxproj
+++ b/builds/win32/msvc15/nbackup.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
diff --git a/builds/win32/msvc15/srp.vcxproj b/builds/win32/msvc15/srp.vcxproj
index bf0567bc44..6dfebf140a 100644
--- a/builds/win32/msvc15/srp.vcxproj
+++ b/builds/win32/msvc15/srp.vcxproj
@@ -104,10 +104,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
diff --git a/builds/win32/msvc15/udf_compat.vcxproj b/builds/win32/msvc15/udf_compat.vcxproj
index 60eb38b62c..86b20b9301 100644
--- a/builds/win32/msvc15/udf_compat.vcxproj
+++ b/builds/win32/msvc15/udf_compat.vcxproj
@@ -103,10 +103,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\plugins\udr\
- ..\..\..\output_$(PlatformName)\plugins\udr\
- ..\..\..\output_$(PlatformName)\plugins\udr\
- ..\..\..\output_$(PlatformName)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
true
diff --git a/builds/win32/msvc15/udr_engine.vcxproj b/builds/win32/msvc15/udr_engine.vcxproj
index f8a6c378b5..21cccd9fe9 100644
--- a/builds/win32/msvc15/udr_engine.vcxproj
+++ b/builds/win32/msvc15/udr_engine.vcxproj
@@ -107,10 +107,10 @@
AllRules.ruleset
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
- ..\..\..\output_$(PlatformName)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\
diff --git a/builds/win32/msvc15/udrcpp_example.vcxproj b/builds/win32/msvc15/udrcpp_example.vcxproj
index c448ff193c..802e7e5245 100644
--- a/builds/win32/msvc15/udrcpp_example.vcxproj
+++ b/builds/win32/msvc15/udrcpp_example.vcxproj
@@ -109,16 +109,16 @@
- ..\..\..\output_$(PlatformName)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
- ..\..\..\output_$(PlatformName)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
- ..\..\..\output_$(PlatformName)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
- ..\..\..\output_$(PlatformName)\plugins\udr\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\plugins\udr\
diff --git a/builds/win32/msvc15/yvalve.vcxproj b/builds/win32/msvc15/yvalve.vcxproj
index 8ba5a117e9..9df9d84ee6 100644
--- a/builds/win32/msvc15/yvalve.vcxproj
+++ b/builds/win32/msvc15/yvalve.vcxproj
@@ -171,10 +171,10 @@
fbclient
fbclient
fbclient
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
- ..\..\..\output_$(PlatformName)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
+ ..\..\..\output_$(PlatformName)_$(Configuration)\
true
diff --git a/builds/win32/parse.bat b/builds/win32/parse.bat
index fe7f44a5a8..e2ea85fd63 100644
--- a/builds/win32/parse.bat
+++ b/builds/win32/parse.bat
@@ -2,11 +2,9 @@
@echo.
-@call setenvvar.bat
+@call setenvvar.bat %*
@if errorlevel 1 (goto :END)
-@call set_build_target.bat %*
-
@echo Generating parse.cpp and dsql.tab.h
@sed -n "/%%type .*/p" < %FB_ROOT_PATH%\src\dsql\parse.y > types.y
diff --git a/builds/win32/preprocess.bat b/builds/win32/preprocess.bat
index 49293d65fd..620d5b893d 100644
--- a/builds/win32/preprocess.bat
+++ b/builds/win32/preprocess.bat
@@ -15,10 +15,12 @@
::===========
:MAIN
-@call setenvvar.bat
-@if not defined FB_BIN_DIR (@call set_build_target.bat %*)
+@call setenvvar.bat %*
+
+for %%v in ( %* ) do (
+ @if "%%v"=="BOOT" (set BOOTBUILD=1) else (set BOOTBUILD=0)
+)
-@if "%1"=="BOOT" (set BOOTBUILD=1) else (set BOOTBUILD=0)
@echo.
@if "%BOOTBUILD%"=="1" (call :BOOT_PROCESS) else (call :MASTER_PROCESS)
@set BOOTBUILD=
diff --git a/builds/win32/run_all.bat b/builds/win32/run_all.bat
index 5316efe02e..b485ab63c0 100644
--- a/builds/win32/run_all.bat
+++ b/builds/win32/run_all.bat
@@ -41,9 +41,9 @@ if defined FBBUILD_MAKE_KITS_ONLY (goto :MAKE_KITS & goto :EOF)
:: Go to work
-if not defined FBBUILD_NOCLEAN (call clean_all %FBBUILD_REAL_CLEAN%)
+if not defined FBBUILD_NOCLEAN (call clean_all %FBBUILD_BUILDTYPE% %FBBUILD_REAL_CLEAN%)
:: We do not support debug builds of icu, so we don't pass %FBBUILD_BUILDTYPE%
-call make_icu
+call make_icu %FBBUILD_BUILDTYPE%
if "%ERRLEV%"=="1" goto :END
call make_boot %FBBUILD_BUILDTYPE%
if "%ERRLEV%"=="1" goto :END
@@ -104,7 +104,7 @@ goto :END
::===============================
:: Set up the compiler environment
-@call setenvvar.bat
+@call setenvvar.bat %*
if "%ERRLEV%"=="1" goto :END
diff --git a/builds/win32/run_tests.bat b/builds/win32/run_tests.bat
index baff20a320..db1094898b 100644
--- a/builds/win32/run_tests.bat
+++ b/builds/win32/run_tests.bat
@@ -2,11 +2,9 @@
@echo.
-@call setenvvar.bat
+@call setenvvar.bat %*
@if errorlevel 1 (goto :END)
-@call set_build_target.bat %*
-
@%FB_BIN_DIR%\common_test --log_level=all
@%FB_BIN_DIR%\engine_test --log_level=all
diff --git a/builds/win32/set_build_target.bat b/builds/win32/set_build_target.bat
deleted file mode 100644
index 35889ff625..0000000000
--- a/builds/win32/set_build_target.bat
+++ /dev/null
@@ -1,19 +0,0 @@
-@echo off
-set FB_DBG=
-set FB_CONFIG=release
-set FB_CLEAN=
-set FB_ICU=
-
-for %%v in ( %* ) do (
- ( if /I "%%v"=="DEBUG" ( (set FB_DBG=TRUE) && (set FB_CONFIG=debug) ) )
- ( if /I "%%v"=="CLEAN" (set FB_CLEAN=:rebuild) )
- ( if /I "%%v"=="ICU" ( (set FB_ICU=1) && (set FB_DBG=) ) )
- ( if /I "%%v"=="RELEASE" ( (set FB_DBG=) && (set FB_CONFIG=release) ) )
-)
-
-set FB_OBJ_DIR=%FB_TARGET_PLATFORM%\%FB_CONFIG%
-set FB_BOOT_BIN_DIR=%FB_ROOT_PATH%\temp\%FB_OBJ_DIR%\firebird
-set FB_BIN_DIR=%FB_ROOT_PATH%\output_%FB_TARGET_PLATFORM%
-
-@echo Executed %0
-@echo.
diff --git a/builds/win32/setenvvar.bat b/builds/win32/setenvvar.bat
index 834311e203..3c757307ef 100644
--- a/builds/win32/setenvvar.bat
+++ b/builds/win32/setenvvar.bat
@@ -4,9 +4,22 @@
:: FB_DB_PATH unix format path of the main directory
:: (This is used by gpre and preprocess.bat)
:: VS_VER VisualStudio version (msvc15)
+:: FB_OBJ_DIR
+:: FB_BOOT_BIN_DIR
+:: FB_BIN_DIR
@echo off
+set FB_DBG=
+set FB_CONFIG=release
+set FB_CLEAN=
+
+for %%v in ( %* ) do (
+ ( if /I "%%v"=="DEBUG" ( (set FB_DBG=TRUE) && (set FB_CONFIG=debug) ) )
+ ( if /I "%%v"=="CLEAN" (set FB_CLEAN=:rebuild) )
+ ( if /I "%%v"=="RELEASE" ( (set FB_DBG=) && (set FB_CONFIG=release) ) )
+)
+
:: Default target CPU architecture is the native environment
@if NOT DEFINED FB_PROCESSOR_ARCHITECTURE (
set FB_PROCESSOR_ARCHITECTURE=%PROCESSOR_ARCHITECTURE%
@@ -117,7 +130,7 @@
@if "%FB_PROCESSOR_ARCHITECTURE%"=="AMD64" (set FB_TARGET_PLATFORM=x64)
-@set FB_OUTPUT_DIR=%FB_ROOT_PATH%\output_%FB_TARGET_PLATFORM%
+@set FB_OUTPUT_DIR=%FB_ROOT_PATH%\output_%FB_TARGET_PLATFORM%_%FB_CONFIG%
@set FB_TEMP_DIR=%FB_ROOT_PATH%\temp\%FB_TARGET_PLATFORM%
@set FB_INSTALL_SCRIPTS=%FB_ROOT_PATH%\builds\install\arch-specific\win32
@set FB_GEN_DIR=%FB_ROOT_PATH%\gen
@@ -125,7 +138,9 @@
@set FB_ICU_SOURCE_BIN=%FB_ROOT_PATH%\extern\icu\%FB_TARGET_PLATFORM%\release\bin\
@set FIREBIRD_BOOT_BUILD=1
-
+@set FB_OBJ_DIR=%FB_TARGET_PLATFORM%\%FB_CONFIG%
+@set FB_BOOT_BIN_DIR=%FB_ROOT_PATH%\temp\%FB_OBJ_DIR%\firebird
+@set FB_BIN_DIR=%FB_OUTPUT_DIR%
goto :END
diff --git a/examples/build_win32/clean_api.bat b/examples/build_win32/clean_api.bat
index ddcf5540c5..2ddb73984a 100644
--- a/examples/build_win32/clean_api.bat
+++ b/examples/build_win32/clean_api.bat
@@ -1,5 +1,5 @@
-call setenvvar.bat
+call setenvvar.bat %*
@echo.
@echo cleaning api
diff --git a/examples/build_win32/clean_dyn.bat b/examples/build_win32/clean_dyn.bat
index 80ff4c55d1..c52b7b81fc 100644
--- a/examples/build_win32/clean_dyn.bat
+++ b/examples/build_win32/clean_dyn.bat
@@ -1,5 +1,5 @@
-call setenvvar.bat
+call setenvvar.bat %*
@echo.
@echo cleaning dyn
diff --git a/examples/build_win32/clean_stat.bat b/examples/build_win32/clean_stat.bat
index ae9d00aa6c..9e0a2f7eae 100644
--- a/examples/build_win32/clean_stat.bat
+++ b/examples/build_win32/clean_stat.bat
@@ -1,5 +1,5 @@
-call setenvvar.bat
+call setenvvar.bat %*
@echo.
@echo cleaning stat
diff --git a/examples/build_win32/clean_udf.bat b/examples/build_win32/clean_udf.bat
index ede0c0190b..9c11bc002b 100644
--- a/examples/build_win32/clean_udf.bat
+++ b/examples/build_win32/clean_udf.bat
@@ -1,5 +1,5 @@
-call setenvvar.bat
+call setenvvar.bat %*
@echo.
@echo cleaning udf
diff --git a/examples/build_win32/make_api.bat b/examples/build_win32/make_api.bat
index 4797a1cd06..6e4ba08188 100644
--- a/examples/build_win32/make_api.bat
+++ b/examples/build_win32/make_api.bat
@@ -1,5 +1,5 @@
-call setenvvar.bat
+call setenvvar.bat %*
:: CLEANING
call clean_api.bat
@@ -11,7 +11,7 @@ call clean_api.bat
cd %ROOT_PATH%\examples\api\
:: OLD FLAGS (to analyze)
:: /c /AL /Ge /Zi /Mq /Od /G2 /Zp1 /W3
-set CLFLAGS=-I %ROOT_PATH%\include -I %ROOT_PATH%\examples\include
+set CLFLAGS=-I %ROOT_PATH%\include -I %ROOT_PATH%\examples\include
cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\api\api1.c
cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\api\api2.c
diff --git a/examples/build_win32/make_dyn.bat b/examples/build_win32/make_dyn.bat
index 5fde1de99b..2dafa7c997 100644
--- a/examples/build_win32/make_dyn.bat
+++ b/examples/build_win32/make_dyn.bat
@@ -1,5 +1,5 @@
-call setenvvar.bat
+call setenvvar.bat %*
:: CLEANING
@call clean_dyn.bat
@@ -14,11 +14,11 @@ call setenvvar.bat
%ROOT_PATH%\bin\gpre -r -m -n -z %ROOT_PATH%\examples\dyn\dynfull.e %ROOT_PATH%\examples\dyn\dynfull.c -b localhost:%ROOT_PATH%\examples\empbuild\
cd %ROOT_PATH%\examples\dyn\
-set CLFLAGS=-I %ROOT_PATH%\include -I %ROOT_PATH%\examples\include
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn1.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn2.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn3.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn4.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn5.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dynfull.c
+set CLFLAGS=-I %ROOT_PATH%\include -I %ROOT_PATH%\examples\include
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn1.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn2.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn3.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn4.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dyn5.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\dyn\dynfull.c
cd %ROOT_PATH%\examples\build_win32
diff --git a/examples/build_win32/make_stat.bat b/examples/build_win32/make_stat.bat
index 2bef1762a8..422ba6bf94 100644
--- a/examples/build_win32/make_stat.bat
+++ b/examples/build_win32/make_stat.bat
@@ -1,5 +1,5 @@
-call setenvvar.bat
+call setenvvar.bat %*
:: CLEANING
@call clean_stat.bat
@@ -22,20 +22,20 @@ call setenvvar.bat
%ROOT_PATH%\bin\gpre -c -m -n -z %ROOT_PATH%\examples\stat\stat12t.e %ROOT_PATH%\examples\stat\stat12t.c -b localhost:%DB_PATH%/examples/empbuild/
cd %ROOT_PATH%\examples\stat\
-set CLFLAGS=-I %ROOT_PATH%\include -I %ROOT_PATH%\examples\include
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat1.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat2.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat3.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat4.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat5.c
+set CLFLAGS=-I %ROOT_PATH%\include -I %ROOT_PATH%\examples\include
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat1.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat2.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat3.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat4.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat5.c
:: TODO
-:: cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat6.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat7.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat8.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat9.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat10.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat11.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat12.c
-cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat12t.c
+:: cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat6.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat7.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat8.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat9.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat10.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat11.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat12.c
+cl %CLFLAGS% %ROOT_PATH%\lib\gds32_ms.lib %ROOT_PATH%\examples\stat\stat12t.c
cd %ROOT_PATH%\examples\build_win32
diff --git a/examples/build_win32/make_udf.bat b/examples/build_win32/make_udf.bat
index 52f888e770..b2b61e3745 100644
--- a/examples/build_win32/make_udf.bat
+++ b/examples/build_win32/make_udf.bat
@@ -1,7 +1,7 @@
-call setenvvar.bat
+call setenvvar.bat %*
:: CLEANING
@call clean_udf.bat
-:: TODO
\ No newline at end of file
+:: TODO
diff --git a/examples/dbcrypt/msvc/DbCryptApp_MSVC15.vcxproj b/examples/dbcrypt/msvc/DbCryptApp_MSVC15.vcxproj
index 9bb2f63f9c..3c4b258730 100644
--- a/examples/dbcrypt/msvc/DbCryptApp_MSVC15.vcxproj
+++ b/examples/dbcrypt/msvc/DbCryptApp_MSVC15.vcxproj
@@ -110,7 +110,7 @@
Console
- ..\..\..\output_$(Platform)\lib\
+ ..\..\..\output_$(Platform)_$(Configuration)\lib\
fbclient_ms.lib;%(AdditionalDependencies)
@@ -125,7 +125,7 @@
Console
- ..\..\..\output_$(Platform)\lib\
+ ..\..\..\output_$(Platform)_$(Configuration)\lib\
fbclient_ms.lib;%(AdditionalDependencies)
@@ -144,7 +144,7 @@
Console
true
true
- ..\..\..\output_$(Platform)\lib\
+ ..\..\..\output_$(Platform)_$(Configuration)\lib\
fbclient_ms.lib;%(AdditionalDependencies)
@@ -163,7 +163,7 @@
Console
true
true
- ..\..\..\output_$(Platform)\lib\
+ ..\..\..\output_$(Platform)_$(Configuration)\lib\
fbclient_ms.lib;%(AdditionalDependencies)