mirror of
https://github.com/pocoproject/poco.git
synced 2025-03-28 01:21:31 +01:00
Fix GH ##2742
This commit is contained in:
parent
1eef62b517
commit
eea893cb4c
1
.gitignore
vendored
1
.gitignore
vendored
@ -132,3 +132,4 @@ cmake-build/
|
|||||||
*.bak
|
*.bak
|
||||||
stage/
|
stage/
|
||||||
releases/
|
releases/
|
||||||
|
/.metadata/
|
||||||
|
10
CHANGELOG
10
CHANGELOG
@ -1,10 +1,16 @@
|
|||||||
This is the changelog file for the POCO C++ Libraries.
|
This is the changelog file for the POCO C++ Libraries.
|
||||||
|
|
||||||
|
Release 1.9.3 (2019-07-16)
|
||||||
|
==========================
|
||||||
|
|
||||||
|
- fixed GH #2742: Support of vs150 & vs160 with the official Microsoft localization executable, vswhere.exe, installed by MSVC starting from VS2017
|
||||||
|
|
||||||
|
|
||||||
Release 1.9.2 (2019-07-02)
|
Release 1.9.2 (2019-07-02)
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
- fixed GH #2736: Error using CMake gui - latest version
|
- fixed GH #2736: Error using CMake gui - latest version
|
||||||
- fixed GH #2737: Bundles vulnerable copy of Expat — please upgrade to Expat 2.2.7
|
- fixed GH #2737: Bundles vulnerable copy of Expat — please upgrade to Expat 2.2.7
|
||||||
- fixed GH #2738: Poco::AccessExpireStrategy::onGet() must not extend expiration time after expiration
|
- fixed GH #2738: Poco::AccessExpireStrategy::onGet() must not extend expiration time after expiration
|
||||||
|
|
||||||
|
|
||||||
@ -43,7 +49,7 @@ Release 1.9.1 (2019-06-24)
|
|||||||
- fixed GH #2655: MongoDB Binary element to string - bug
|
- fixed GH #2655: MongoDB Binary element to string - bug
|
||||||
- fixed GH #2661: Poco::Zip::ZipArchive cannot load new tomcat.zip file
|
- fixed GH #2661: Poco::Zip::ZipArchive cannot load new tomcat.zip file
|
||||||
- fixed GH #2700: Invalid read of memory in Poco::Environment::set which may cause crashes.
|
- fixed GH #2700: Invalid read of memory in Poco::Environment::set which may cause crashes.
|
||||||
- fixed GH #2712: File_WIN32.cpp(168): error C2065: “_upath”:Undeclared identifier
|
- fixed GH #2712: File_WIN32.cpp(168): error C2065: “_upathâ€<EFBFBD>:Undeclared identifier
|
||||||
- fixed GH #2723: Access violation when trying to decompress .zip file with unsupported compression method.
|
- fixed GH #2723: Access violation when trying to decompress .zip file with unsupported compression method.
|
||||||
|
|
||||||
|
|
||||||
|
@ -4,8 +4,8 @@
|
|||||||
|
|
||||||
#include "winres.h"
|
#include "winres.h"
|
||||||
|
|
||||||
#define POCO_VERSION 1,9,2,0
|
#define POCO_VERSION 1,9,3,0
|
||||||
#define POCO_VERSION_STR "1.9.2"
|
#define POCO_VERSION_STR "1.9.3"
|
||||||
|
|
||||||
VS_VERSION_INFO VERSIONINFO
|
VS_VERSION_INFO VERSIONINFO
|
||||||
FILEVERSION POCO_VERSION
|
FILEVERSION POCO_VERSION
|
||||||
|
294
buildwin.cmd
294
buildwin.cmd
@ -1,13 +1,13 @@
|
|||||||
@echo off
|
@echo off
|
||||||
setlocal enabledelayedexpansion
|
setlocal enableextensions enabledelayedexpansion
|
||||||
|
|
||||||
rem
|
rem
|
||||||
rem buildwin.cmd
|
rem buildwin.cmd
|
||||||
rem
|
rem
|
||||||
rem POCO C++ Libraries command-line build script
|
rem POCO C++ Libraries command-line build script
|
||||||
rem for MS Visual Studio 2008 to 2019
|
rem for MS Visual Studio 2008 to 2013
|
||||||
rem
|
rem
|
||||||
rem Copyright (c) 2006-2019 by Applied Informatics Software Engineering GmbH
|
rem Copyright (c) 2006-2017 by Applied Informatics Software Engineering GmbH
|
||||||
rem and Contributors.
|
rem and Contributors.
|
||||||
rem
|
rem
|
||||||
rem Original version by Aleksandar Fabijanic.
|
rem Original version by Aleksandar Fabijanic.
|
||||||
@ -15,7 +15,7 @@ rem Modified by Guenter Obiltschnig.
|
|||||||
rem
|
rem
|
||||||
rem Usage:
|
rem Usage:
|
||||||
rem ------
|
rem ------
|
||||||
rem buildwin VS_VERSION [ACTION] [LINKMODE] [CONFIGURATION] [PLATFORM] [SAMPLES] [TESTS] [TOOL]
|
rem buildwin VS_VERSION [ACTION] [LINKMODE] [CONFIGURATION] [PLATFORM] [SAMPLES] [TESTS] [TOOL] [ENV] [VERBOSITY [LOGGER] ]
|
||||||
rem VS_VERSION: 90|100|110|120|140|150|160
|
rem VS_VERSION: 90|100|110|120|140|150|160
|
||||||
rem ACTION: build|rebuild|clean
|
rem ACTION: build|rebuild|clean
|
||||||
rem LINKMODE: static_mt|static_md|shared|all
|
rem LINKMODE: static_mt|static_md|shared|all
|
||||||
@ -24,52 +24,96 @@ rem PLATFORM: Win32|x64|WinCE|WEC2013
|
|||||||
rem SAMPLES: samples|nosamples
|
rem SAMPLES: samples|nosamples
|
||||||
rem TESTS: tests|notests
|
rem TESTS: tests|notests
|
||||||
rem TOOL: devenv|vcexpress|wdexpress|msbuild
|
rem TOOL: devenv|vcexpress|wdexpress|msbuild
|
||||||
|
rem ENV: env|noenv (active only with msbuild, defaulted to env)
|
||||||
|
rem VERBOSITY quiet|minimal|normal|detailed|diagnostic
|
||||||
|
rem LOGGER <logger path> see msbuild /?
|
||||||
rem
|
rem
|
||||||
rem VS_VERSION is required argument. Default is build all.
|
rem VS_VERSION is required argument. Default is build all.
|
||||||
|
|
||||||
rem Change OPENSSL_DIR to match your setup
|
|
||||||
set OPENSSL_DIR=C:\OpenSSL
|
|
||||||
set OPENSSL_INCLUDE=%OPENSSL_DIR%\include
|
|
||||||
set OPENSSL_LIB=%OPENSSL_DIR%\lib;%OPENSSL_DIR%\lib\VC
|
|
||||||
set INCLUDE=%INCLUDE%;%OPENSSL_INCLUDE%
|
|
||||||
set LIB=%LIB%;%OPENSSL_LIB%
|
|
||||||
|
|
||||||
rem Change MYSQL_DIR to match your setup
|
|
||||||
set MYSQL_DIR=C:\PROGRA~1\MySQL\MYSQLS~1.5
|
|
||||||
set MYSQL_INCLUDE=%MYSQL_DIR%\include
|
|
||||||
set MYSQL_LIB=%MYSQL_DIR%\lib
|
|
||||||
set INCLUDE=%INCLUDE%;%MYSQL_INCLUDE%
|
|
||||||
set LIB=%LIB%;%MYSQL_LIB%
|
|
||||||
|
|
||||||
set POCO_BASE=%CD%
|
set POCO_BASE=%CD%
|
||||||
set PATH=%POCO_BASE%\bin64;%POCO_BASE%\bin;%PATH%
|
set PATH=%POCO_BASE%\bin64;%POCO_BASE%\bin;%PATH%
|
||||||
|
|
||||||
rem VS_VERSION {90 | 100 | 110 | 120 | 140 | 150 | 160}
|
rem VS_VERSION {90 | 100 | 110 | 120 | 140 | 150 | 160}
|
||||||
if "%1"=="" goto usage
|
if "%1"=="" goto usage
|
||||||
|
|
||||||
|
rem -version ^^[16.0^^,17.0^^)
|
||||||
set VS_VERSION=vs%1
|
set VS_VERSION=vs%1
|
||||||
|
if %VS_VERSION%==vs160 (
|
||||||
|
rem should be set "VSWHERE='%ProgramFiles(x86)%\Microsoft Visual Studio\Installer\vswhere.exe -property installationPath -version ^[16.0^,17.0^)'"
|
||||||
|
set "VSWHERE='C:\PROGRA~2\MICROS~1\Installer\vswhere.exe -latest -property installationPath -version ^[16.0^,17.0^)'"
|
||||||
|
) else (
|
||||||
|
if %VS_VERSION%==vs150 (
|
||||||
|
set "VSWHERE='C:\PROGRA~2\MICROS~1\Installer\vswhere.exe -latest -property installationPath -version ^[15.0^,16.0^)'"
|
||||||
|
)
|
||||||
|
)
|
||||||
|
for /f " delims=" %%a in (%VSWHERE%) do @set "VSCOMNTOOLS=%%a"
|
||||||
|
|
||||||
|
echo ============= %VSCOMNTOOLS% =============
|
||||||
|
|
||||||
if %VS_VERSION%==vs160 (
|
if %VS_VERSION%==vs160 (
|
||||||
set VS_VARSALL=..\..\VC\Auxiliary\Build\vcvarsall.bat
|
set VS_VARSALL=..\..\VC\Auxiliary\Build\vcvarsall.bat
|
||||||
|
set "VS160COMNTOOLS=%VSCOMNTOOLS%\Common7\Tools\"
|
||||||
) else (
|
) else (
|
||||||
if %VS_VERSION%==vs150 (
|
if %VS_VERSION%==vs150 (
|
||||||
set VS_VARSALL=..\..\VC\Auxiliary\Build\vcvarsall.bat
|
set VS_VARSALL=..\..\VC\Auxiliary\Build\vcvarsall.bat
|
||||||
|
set "VS150COMNTOOLS=%VSCOMNTOOLS%\Common7\Tools\"
|
||||||
) else (
|
) else (
|
||||||
set VS_VARSALL=..\..\VC\vcvarsall.bat
|
set VS_VARSALL=..\..\VC\vcvarsall.bat
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
shift /1
|
||||||
|
rem ACTION [build|rebuild|clean]
|
||||||
|
set ACTION=%1
|
||||||
|
if "%ACTION%"=="" (set ACTION=build)
|
||||||
|
if not "%ACTION%"=="build" (
|
||||||
|
if not "%ACTION%"=="rebuild" (
|
||||||
|
if not "%ACTION%"=="clean" goto usage))
|
||||||
|
|
||||||
|
shift /1
|
||||||
|
rem LINKMODE [static_mt|static_md|shared|all]
|
||||||
|
set LINK_MODE=%1
|
||||||
|
if "%LINK_MODE%"=="" (set LINK_MODE=all)
|
||||||
|
if not "%LINK_MODE%"=="static_mt" (
|
||||||
|
if not "%LINK_MODE%"=="static_md" (
|
||||||
|
if not "%LINK_MODE%"=="shared" (
|
||||||
|
if not "%LINK_MODE%"=="all" goto usage)))
|
||||||
|
|
||||||
|
rem CONFIGURATION [release|debug|both]
|
||||||
|
set CONFIGURATION=%2
|
||||||
|
if "%CONFIGURATION%"=="" (set CONFIGURATION=both)
|
||||||
|
if not "%CONFIGURATION%"=="release" (
|
||||||
|
if not "%CONFIGURATION%"=="debug" (
|
||||||
|
if not "%CONFIGURATION%"=="both" goto usage))
|
||||||
|
|
||||||
rem PLATFORM [Win32|x64|WinCE|WEC2013]
|
rem PLATFORM [Win32|x64|WinCE|WEC2013]
|
||||||
set PLATFORM=%5
|
set PLATFORM=%3
|
||||||
if "%PLATFORM%"=="" (set PLATFORM=Win32)
|
if "%PLATFORM%"=="" (set PLATFORM=Win32)
|
||||||
if not "%PLATFORM%"=="Win32" (
|
if not "%PLATFORM%"=="Win32" (
|
||||||
if not "%PLATFORM%"=="x64" (
|
if not "%PLATFORM%"=="x64" (
|
||||||
if not "%PLATFORM%"=="WinCE" (
|
if not "%PLATFORM%"=="WinCE" (
|
||||||
if not "%PLATFORM%"=="WEC2013" goto usage)))
|
if not "%PLATFORM%"=="WEC2013" goto usage)))
|
||||||
|
|
||||||
|
if "%PLATFORM%"=="Win32" (set PLATFORM_SUFFIX=) else (
|
||||||
|
if "%PLATFORM%"=="x64" (set PLATFORM_SUFFIX=_x64) else (
|
||||||
|
if "%PLATFORM%"=="WinCE" (set PLATFORM_SUFFIX=_CE) else (
|
||||||
|
if "%PLATFORM%"=="WEC2013" (set PLATFORM_SUFFIX=_WEC2013))))
|
||||||
|
|
||||||
|
|
||||||
|
rem SAMPLES [samples|nosamples]
|
||||||
|
set SAMPLES=%4
|
||||||
|
if "%SAMPLES%"=="" (set SAMPLES=samples)
|
||||||
|
|
||||||
|
rem TESTS [tests|notests]
|
||||||
|
set TESTS=%5
|
||||||
|
if "%TESTS%"=="" (set TESTS=notests)
|
||||||
|
|
||||||
if not defined VCINSTALLDIR (
|
if not defined VCINSTALLDIR (
|
||||||
if %VS_VERSION%==vs90 (
|
if %VS_VERSION%==vs90 (
|
||||||
if %PLATFORM%==x64 (
|
if %PLATFORM%==x64 (
|
||||||
call "%VS90COMNTOOLS%%VS_VARSALL%" x86_amd64
|
call "%VS90COMNTOOLS%%VS_VARSALL%" x86_amd64 8.1
|
||||||
) else (
|
) else (
|
||||||
call "%VS90COMNTOOLS%%VS_VARSALL%" x86
|
call "%VS90COMNTOOLS%%VS_VARSALL%" x86 8.1
|
||||||
)
|
)
|
||||||
) else (
|
) else (
|
||||||
if %VS_VERSION%==vs100 (
|
if %VS_VERSION%==vs100 (
|
||||||
@ -109,9 +153,9 @@ if not defined VCINSTALLDIR (
|
|||||||
) else (
|
) else (
|
||||||
if %VS_VERSION%==vs160 (
|
if %VS_VERSION%==vs160 (
|
||||||
if %PLATFORM%==x64 (
|
if %PLATFORM%==x64 (
|
||||||
call "%VS160COMNTOOLS%%VS_VARSALL%" x86_amd64
|
call "%VS160COMNTOOLS%%VS_VARSALL%" x86_amd64 8.1
|
||||||
) else (
|
) else (
|
||||||
call "%VS160COMNTOOLS%%VS_VARSALL%" x86
|
call "%VS160COMNTOOLS%%VS_VARSALL%" x86 8.1
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@ -126,7 +170,7 @@ if not defined VSINSTALLDIR (
|
|||||||
echo Error: No Visual C++ environment found.
|
echo Error: No Visual C++ environment found.
|
||||||
echo Please run this script from a Visual Studio Command Prompt
|
echo Please run this script from a Visual Studio Command Prompt
|
||||||
echo or run "%%VSnnCOMNTOOLS%%\vsvars32.bat" first.
|
echo or run "%%VSnnCOMNTOOLS%%\vsvars32.bat" first.
|
||||||
goto :EOF
|
goto :buildfailed
|
||||||
)
|
)
|
||||||
|
|
||||||
set VCPROJ_EXT=vcproj
|
set VCPROJ_EXT=vcproj
|
||||||
@ -137,8 +181,24 @@ if %VS_VERSION%==vs140 (set VCPROJ_EXT=vcxproj)
|
|||||||
if %VS_VERSION%==vs150 (set VCPROJ_EXT=vcxproj)
|
if %VS_VERSION%==vs150 (set VCPROJ_EXT=vcxproj)
|
||||||
if %VS_VERSION%==vs160 (set VCPROJ_EXT=vcxproj)
|
if %VS_VERSION%==vs160 (set VCPROJ_EXT=vcxproj)
|
||||||
|
|
||||||
if "%8"=="" goto use_devenv
|
|
||||||
set BUILD_TOOL=%8
|
rem ENV env|noenv
|
||||||
|
set USEENV=%7
|
||||||
|
if "%USEENV%"=="" (set USEENV=env)
|
||||||
|
if not "%USEENV%"=="env" (
|
||||||
|
if not "%USEENV%"=="noenv" goto usage)
|
||||||
|
|
||||||
|
rem VERBOSITY quiet|minimal|normal|detailed
|
||||||
|
set VERBOSITY=%8
|
||||||
|
if "%VERBOSITY%"=="" (set VERBOSITY=minimal)
|
||||||
|
if not "%VERBOSITY%"=="quiet" (
|
||||||
|
if not "%VERBOSITY%"=="minimal" (
|
||||||
|
if not "%VERBOSITY%"=="normal" (
|
||||||
|
if not "%VERBOSITY%"=="detailed" (
|
||||||
|
if not "%VERBOSITY%"=="diagnostic" goto usage))))
|
||||||
|
|
||||||
|
if "%6"=="" goto use_devenv
|
||||||
|
set BUILD_TOOL=%6
|
||||||
goto use_custom
|
goto use_custom
|
||||||
:use_devenv
|
:use_devenv
|
||||||
set BUILD_TOOL=devenv
|
set BUILD_TOOL=devenv
|
||||||
@ -149,16 +209,36 @@ if "%VS_VERSION%"=="vs140" (set BUILD_TOOL=msbuild)
|
|||||||
if "%VS_VERSION%"=="vs150" (set BUILD_TOOL=msbuild)
|
if "%VS_VERSION%"=="vs150" (set BUILD_TOOL=msbuild)
|
||||||
if "%VS_VERSION%"=="vs160" (set BUILD_TOOL=msbuild)
|
if "%VS_VERSION%"=="vs160" (set BUILD_TOOL=msbuild)
|
||||||
:use_custom
|
:use_custom
|
||||||
if not "%BUILD_TOOL%"=="msbuild" (set USEENV=/useenv)
|
|
||||||
if "%BUILD_TOOL%"=="msbuild" (
|
if "%BUILD_TOOL%"=="msbuild" (
|
||||||
|
if "%PLATFORM%"=="Win32" (set PLATFORMSW=/p:Platform=Win32) else (
|
||||||
|
if "%PLATFORM%"=="x86" (set PLATFORMSW=/p:Platform=Win32) else (
|
||||||
|
if "%PLATFORM%"=="x64" (set PLATFORMSW=/p:Platform=x64)))
|
||||||
|
|
||||||
set ACTIONSW=/t:
|
set ACTIONSW=/t:
|
||||||
set CONFIGSW=/p:Configuration=
|
set CONFIGSW=/p:Configuration=
|
||||||
set EXTRASW=/m
|
set EXTRASW=/m
|
||||||
set USEENV=/p:UseEnv=true
|
if "%USEENV%"=="env" set USEENVP=/p:UseEnv=true
|
||||||
|
if "%USEENV%"=="noenv" set USEENVP=/p:UseEnv=false
|
||||||
|
|
||||||
|
set BUILD_TOOL_FLAGS=/clp:NoSummary
|
||||||
|
set BUILD_TOOL_FLAGS=!BUILD_TOOL_FLAGS! /nologo /v:%VERBOSITY%
|
||||||
)
|
)
|
||||||
if not "%BUILD_TOOL%"=="msbuild" (
|
if not "%BUILD_TOOL%"=="msbuild" (
|
||||||
|
set USEENVP=/useenv
|
||||||
set ACTIONSW=/
|
set ACTIONSW=/
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
rem LOGGER <logger path> see msbuild /?
|
||||||
|
set LOGGER=%9
|
||||||
|
if not "%LOGGER%"=="" (
|
||||||
|
if "%BUILD_TOOL%"=="msbuild" (
|
||||||
|
if not %LOGGER%X==X (
|
||||||
|
set BUILD_TOOL_FLAGS=!BUILD_TOOL_FLAGS! /logger:%LOGGER%
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
if "%VS_VERSION%"=="vs100" (goto msbuildok)
|
if "%VS_VERSION%"=="vs100" (goto msbuildok)
|
||||||
if "%VS_VERSION%"=="vs110" (goto msbuildok)
|
if "%VS_VERSION%"=="vs110" (goto msbuildok)
|
||||||
if "%VS_VERSION%"=="vs120" (goto msbuildok)
|
if "%VS_VERSION%"=="vs120" (goto msbuildok)
|
||||||
@ -171,32 +251,6 @@ if "%BUILD_TOOL%"=="msbuild" (
|
|||||||
)
|
)
|
||||||
:msbuildok
|
:msbuildok
|
||||||
|
|
||||||
rem ACTION [build|rebuild|clean]
|
|
||||||
set ACTION=%2
|
|
||||||
if "%ACTION%"=="" (set ACTION=build)
|
|
||||||
if not "%ACTION%"=="build" (
|
|
||||||
if not "%ACTION%"=="rebuild" (
|
|
||||||
if not "%ACTION%"=="clean" goto usage))
|
|
||||||
|
|
||||||
rem LINKMODE [static_mt|static_md|shared|all]
|
|
||||||
set LINK_MODE=%3
|
|
||||||
if "%LINK_MODE%"=="" (set LINK_MODE=all)
|
|
||||||
if not "%LINK_MODE%"=="static_mt" (
|
|
||||||
if not "%LINK_MODE%"=="static_md" (
|
|
||||||
if not "%LINK_MODE%"=="shared" (
|
|
||||||
if not "%LINK_MODE%"=="all" goto usage)))
|
|
||||||
|
|
||||||
rem CONFIGURATION [release|debug|both]
|
|
||||||
set CONFIGURATION=%4
|
|
||||||
if "%CONFIGURATION%"=="" (set CONFIGURATION=both)
|
|
||||||
if not "%CONFIGURATION%"=="release" (
|
|
||||||
if not "%CONFIGURATION%"=="debug" (
|
|
||||||
if not "%CONFIGURATION%"=="both" goto usage))
|
|
||||||
|
|
||||||
if "%PLATFORM%"=="Win32" (set PLATFORM_SUFFIX=) else (
|
|
||||||
if "%PLATFORM%"=="x64" (set PLATFORM_SUFFIX=_x64) else (
|
|
||||||
if "%PLATFORM%"=="WinCE" (set PLATFORM_SUFFIX=_CE) else (
|
|
||||||
if "%PLATFORM%"=="WEC2013" (set PLATFORM_SUFFIX=_WEC2013))))
|
|
||||||
|
|
||||||
if "%PLATFORM%"=="WEC2013" (
|
if "%PLATFORM%"=="WEC2013" (
|
||||||
if "%WEC2013_PLATFORM%"=="" (
|
if "%WEC2013_PLATFORM%"=="" (
|
||||||
@ -212,15 +266,6 @@ if %VS_VERSION%==vs150 (set EXTRASW=/m /p:VisualStudioVersion=15.0)
|
|||||||
if %VS_VERSION%==vs160 (set EXTRASW=/m /p:VisualStudioVersion=16.0)
|
if %VS_VERSION%==vs160 (set EXTRASW=/m /p:VisualStudioVersion=16.0)
|
||||||
)
|
)
|
||||||
|
|
||||||
rem SAMPLES [samples|nosamples]
|
|
||||||
set SAMPLES=%6
|
|
||||||
if "%SAMPLES%"=="" (set SAMPLES=samples)
|
|
||||||
|
|
||||||
rem TESTS [tests|notests]
|
|
||||||
set TESTS=%7
|
|
||||||
if "%TESTS%"=="" (set TESTS=notests)
|
|
||||||
|
|
||||||
|
|
||||||
set DEBUG_SHARED=0
|
set DEBUG_SHARED=0
|
||||||
set RELEASE_SHARED=0
|
set RELEASE_SHARED=0
|
||||||
set DEBUG_STATIC_MT=0
|
set DEBUG_STATIC_MT=0
|
||||||
@ -315,6 +360,8 @@ echo ####
|
|||||||
echo ########################################################################
|
echo ########################################################################
|
||||||
echo.
|
echo.
|
||||||
echo.
|
echo.
|
||||||
|
echo buildwin %VS_VERSION% %ACTION% %LINK_MODE% %CONFIGURATION% %PLATFORM% %SAMPLES% %TESTS% !BUILD_TOOL! %USEENV% %VERBOSITY%
|
||||||
|
echo.
|
||||||
echo The following configurations will be built:
|
echo The following configurations will be built:
|
||||||
|
|
||||||
if %DEBUG_SHARED%==1 (echo debug_shared)
|
if %DEBUG_SHARED%==1 (echo debug_shared)
|
||||||
@ -331,6 +378,8 @@ for /f %%G in ('findstr /R "." components') do (
|
|||||||
for /f "tokens=1,2,3,4 delims=/" %%Q in ("%%G") do (
|
for /f "tokens=1,2,3,4 delims=/" %%Q in ("%%G") do (
|
||||||
set PROJECT_FILE=%%Q%PLATFORM_SUFFIX%_%VS_VERSION%.%VCPROJ_EXT%
|
set PROJECT_FILE=%%Q%PLATFORM_SUFFIX%_%VS_VERSION%.%VCPROJ_EXT%
|
||||||
set TEST_PROJECT_FILE=testsuite/TestSuite%PLATFORM_SUFFIX%_%VS_VERSION%.%VCPROJ_EXT%
|
set TEST_PROJECT_FILE=testsuite/TestSuite%PLATFORM_SUFFIX%_%VS_VERSION%.%VCPROJ_EXT%
|
||||||
|
set TEST_APP_PROJECT_FILE=testsuite/TestApp%PLATFORM_SUFFIX%_%VS_VERSION%.%VCPROJ_EXT%
|
||||||
|
set TEST_LIB_PROJECT_FILE=testsuite/TestLibrary%PLATFORM_SUFFIX%_%VS_VERSION%.%VCPROJ_EXT%
|
||||||
if exist !PROJECT_FILE! (
|
if exist !PROJECT_FILE! (
|
||||||
call :build %%G
|
call :build %%G
|
||||||
if ERRORLEVEL 1 goto buildfailed
|
if ERRORLEVEL 1 goto buildfailed
|
||||||
@ -371,74 +420,115 @@ echo ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|||||||
echo.
|
echo.
|
||||||
|
|
||||||
if %DEBUG_SHARED%==1 (
|
if %DEBUG_SHARED%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !PROJECT_FILE!
|
echo !BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !PROJECT_FILE!
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
if %TESTS%==tests (
|
if %TESTS%==tests (
|
||||||
if exist !TEST_PROJECT_FILE! (
|
if exist !TEST_PROJECT_FILE! (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !TEST_PROJECT_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !TEST_PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
if %1==Foundation (
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !TEST_APP_PROJECT_FILE!
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !TEST_LIB_PROJECT_FILE!
|
||||||
|
if ERRORLEVEL 1 exit /b 1
|
||||||
|
)
|
||||||
|
echo. && echo.
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
if %RELEASE_SHARED%==1 (
|
if %RELEASE_SHARED%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !PROJECT_FILE!
|
echo !BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !PROJECT_FILE!
|
||||||
|
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
if %TESTS%==tests (
|
if %TESTS%==tests (
|
||||||
if exist !TEST_PROJECT_FILE! (
|
if exist !TEST_PROJECT_FILE! (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !TEST_PROJECT_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !TEST_PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
if %1==Foundation (
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !TEST_APP_PROJECT_FILE!
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !TEST_LIB_PROJECT_FILE!
|
||||||
|
if ERRORLEVEL 1 exit /b 1
|
||||||
|
)
|
||||||
|
echo. && echo.
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
if %DEBUG_STATIC_MT%==1 (
|
if %DEBUG_STATIC_MT%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !PROJECT_FILE!
|
echo !BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !PROJECT_FILE!
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
if %TESTS%==tests (
|
if %TESTS%==tests (
|
||||||
if exist !TEST_PROJECT_FILE! (
|
if exist !TEST_PROJECT_FILE! (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !TEST_PROJECT_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !TEST_PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
if %1==Foundation (
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !TEST_APP_PROJECT_FILE!
|
||||||
|
if ERRORLEVEL 1 exit /b 1
|
||||||
|
)
|
||||||
|
echo. && echo.
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
if %RELEASE_STATIC_MT%==1 (
|
if %RELEASE_STATIC_MT%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !PROJECT_FILE!
|
echo !BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !PROJECT_FILE!
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
if %TESTS%==tests (
|
if %TESTS%==tests (
|
||||||
if exist !TEST_PROJECT_FILE! (
|
if exist !TEST_PROJECT_FILE! (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !TEST_PROJECT_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !TEST_PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
if %1==Foundation (
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !TEST_APP_PROJECT_FILE!
|
||||||
|
if ERRORLEVEL 1 exit /b 1
|
||||||
|
)
|
||||||
|
echo. && echo.
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
if %DEBUG_STATIC_MD%==1 (
|
if %DEBUG_STATIC_MD%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !PROJECT_FILE!
|
echo !BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !PROJECT_FILE!
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
if %TESTS%==tests (
|
if %TESTS%==tests (
|
||||||
if exist !TEST_PROJECT_FILE! (
|
if exist !TEST_PROJECT_FILE! (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !TEST_PROJECT_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !TEST_PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
if %1==Foundation (
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !TEST_APP_PROJECT_FILE!
|
||||||
|
if ERRORLEVEL 1 exit /b 1
|
||||||
|
)
|
||||||
|
echo. && echo.
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
if %RELEASE_STATIC_MD%==1 (
|
if %RELEASE_STATIC_MD%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !PROJECT_FILE!
|
echo !BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !PROJECT_FILE!
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
if %TESTS%==tests (
|
if %TESTS%==tests (
|
||||||
if exist !TEST_PROJECT_FILE! (
|
if exist !TEST_PROJECT_FILE! (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !TEST_PROJECT_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !TEST_PROJECT_FILE!
|
||||||
if ERRORLEVEL 1 exit /b 1
|
if ERRORLEVEL 1 exit /b 1
|
||||||
echo. && echo. && echo.
|
if %1==Foundation (
|
||||||
|
echo.
|
||||||
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !TEST_APP_PROJECT_FILE!
|
||||||
|
if ERRORLEVEL 1 exit /b 1
|
||||||
|
)
|
||||||
|
echo. && echo.
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
@ -476,34 +566,34 @@ for /f %%G in ('findstr /R "." components') do (
|
|||||||
set SOLUTION_FILE=samples%PLATFORM_SUFFIX%_%VS_VERSION%.sln
|
set SOLUTION_FILE=samples%PLATFORM_SUFFIX%_%VS_VERSION%.sln
|
||||||
|
|
||||||
if %DEBUG_SHARED%==1 (
|
if %DEBUG_SHARED%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !SOLUTION_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_shared %PLATFORMSW% !SOLUTION_FILE!
|
||||||
if ERRORLEVEL 1 goto buildfailed
|
if ERRORLEVEL 1 goto buildfailed
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
)
|
)
|
||||||
if %RELEASE_SHARED%==1 (
|
if %RELEASE_SHARED%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !SOLUTION_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_shared %PLATFORMSW% !SOLUTION_FILE!
|
||||||
if ERRORLEVEL 1 goto buildfailed
|
if ERRORLEVEL 1 goto buildfailed
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
)
|
)
|
||||||
if %DEBUG_STATIC_MT%==1 (
|
if %DEBUG_STATIC_MT%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !SOLUTION_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_mt %PLATFORMSW% !SOLUTION_FILE!
|
||||||
if ERRORLEVEL 1 goto buildfailed
|
if ERRORLEVEL 1 goto buildfailed
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
)
|
)
|
||||||
if %RELEASE_STATIC_MT%==1 (
|
if %RELEASE_STATIC_MT%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !SOLUTION_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_mt %PLATFORMSW% !SOLUTION_FILE!
|
||||||
if ERRORLEVEL 1 goto buildfailed
|
if ERRORLEVEL 1 goto buildfailed
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
)
|
)
|
||||||
if %DEBUG_STATIC_MD%==1 (
|
if %DEBUG_STATIC_MD%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !SOLUTION_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%debug_static_md %PLATFORMSW% !SOLUTION_FILE!
|
||||||
if ERRORLEVEL 1 goto buildfailed
|
if ERRORLEVEL 1 goto buildfailed
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
)
|
)
|
||||||
if %RELEASE_STATIC_MD%==1 (
|
if %RELEASE_STATIC_MD%==1 (
|
||||||
!BUILD_TOOL! %USEENV% %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !SOLUTION_FILE!
|
!BUILD_TOOL! !BUILD_TOOL_FLAGS! !USEENVP! %EXTRASW% %ACTIONSW%%ACTION% %CONFIGSW%release_static_md %PLATFORMSW% !SOLUTION_FILE!
|
||||||
if ERRORLEVEL 1 goto buildfailed
|
if ERRORLEVEL 1 goto buildfailed
|
||||||
echo. && echo. && echo.
|
echo. && echo.
|
||||||
)
|
)
|
||||||
|
|
||||||
cd "%POCO_BASE%"
|
cd "%POCO_BASE%"
|
||||||
@ -546,8 +636,8 @@ exit /b 1
|
|||||||
:usage
|
:usage
|
||||||
echo Usage:
|
echo Usage:
|
||||||
echo ------
|
echo ------
|
||||||
echo buildwin VS_VERSION [ACTION] [LINKMODE] [CONFIGURATION] [PLATFORM] [SAMPLES] [TESTS] [TOOL]
|
echo buildwin VS_VERSION [ACTION] [LINKMODE] [CONFIGURATION] [PLATFORM] [SAMPLES] [TESTS] [TOOL] [ENV] [VERBOSITY]
|
||||||
echo VS_VERSION: "90|100|110|120|140|150|160"
|
echo VS_VERSION: "90|100|110|120|140|150"
|
||||||
echo ACTION: "build|rebuild|clean"
|
echo ACTION: "build|rebuild|clean"
|
||||||
echo LINKMODE: "static_mt|static_md|shared|all"
|
echo LINKMODE: "static_mt|static_md|shared|all"
|
||||||
echo CONFIGURATION: "release|debug|both"
|
echo CONFIGURATION: "release|debug|both"
|
||||||
@ -555,6 +645,8 @@ echo PLATFORM: "Win32|x64|WinCE|WEC2013"
|
|||||||
echo SAMPLES: "samples|nosamples"
|
echo SAMPLES: "samples|nosamples"
|
||||||
echo TESTS: "tests|notests"
|
echo TESTS: "tests|notests"
|
||||||
echo TOOL: "devenv|vcexpress|wdexpress|msbuild"
|
echo TOOL: "devenv|vcexpress|wdexpress|msbuild"
|
||||||
|
echo ENV: "env|noenv" (active only with msbuild, defaulted to env)
|
||||||
|
echo VERBOSITY: "quiet|minimal|normal|detailed|diagnostic" only for msbuild
|
||||||
echo.
|
echo.
|
||||||
echo Default is build all.
|
echo Default is build all.
|
||||||
endlocal
|
endlocal
|
||||||
|
245
buildwin.ps1
245
buildwin.ps1
@ -1,10 +1,10 @@
|
|||||||
#
|
#
|
||||||
# POCO build script
|
# POCO build script
|
||||||
#
|
#
|
||||||
# Usage:
|
# Usage:
|
||||||
# ------
|
# ------
|
||||||
# buildwin.ps1 [-poco_base dir]
|
# buildwin.ps1 [-poco_base dir]
|
||||||
# [-vs_version 160 | 150 | 140 | 120 | 110 | 100 | 90]
|
# [-vs 140 | 150 | 160]
|
||||||
# [-action build | rebuild | clean]
|
# [-action build | rebuild | clean]
|
||||||
# [-linkmode shared | static_mt | static_md | all]
|
# [-linkmode shared | static_mt | static_md | all]
|
||||||
# [-config release | debug | both]
|
# [-config release | debug | both]
|
||||||
@ -13,6 +13,8 @@
|
|||||||
# [-tests]
|
# [-tests]
|
||||||
# [-omit "Lib1X;LibY;LibZ;..."]
|
# [-omit "Lib1X;LibY;LibZ;..."]
|
||||||
# [-tool msbuild | devenv]
|
# [-tool msbuild | devenv]
|
||||||
|
# [-useenv env | noenv]
|
||||||
|
# [-verbosity m[inimal] | q[uiet] | n[ormal] | d[etailed] | diag[nostic]]
|
||||||
# [-openssl_base dir]
|
# [-openssl_base dir]
|
||||||
# [-mysql_base dir]
|
# [-mysql_base dir]
|
||||||
|
|
||||||
@ -23,8 +25,8 @@ Param
|
|||||||
[string] $poco_base,
|
[string] $poco_base,
|
||||||
|
|
||||||
[Parameter()]
|
[Parameter()]
|
||||||
[ValidateSet(90, 100, 110, 120, 140, 150, 160)]
|
[ValidateSet(140, 150, 160)]
|
||||||
[int] $vs_version,
|
[int] $vs = 140,
|
||||||
|
|
||||||
[Parameter()]
|
[Parameter()]
|
||||||
[ValidateSet('build', 'rebuild', 'clean')]
|
[ValidateSet('build', 'rebuild', 'clean')]
|
||||||
@ -50,6 +52,14 @@ Param
|
|||||||
[ValidateSet('msbuild', 'devenv')]
|
[ValidateSet('msbuild', 'devenv')]
|
||||||
[string] $tool = 'msbuild',
|
[string] $tool = 'msbuild',
|
||||||
|
|
||||||
|
[Parameter()]
|
||||||
|
[ValidateSet('env', 'noenv')]
|
||||||
|
[string] $useenv = 'env',
|
||||||
|
|
||||||
|
[Parameter()]
|
||||||
|
[ValidateSet('quiet', 'm[inimal]', 'n[ormal]', 'd[etailed]', 'diag[nostic]')]
|
||||||
|
[string] $verbosity = 'minimal',
|
||||||
|
|
||||||
[Parameter()]
|
[Parameter()]
|
||||||
[string] $openssl_base,
|
[string] $openssl_base,
|
||||||
|
|
||||||
@ -59,16 +69,52 @@ Param
|
|||||||
[switch] $help
|
[switch] $help
|
||||||
)
|
)
|
||||||
|
|
||||||
|
function Add-VSCOMNTOOLS([int] $vsver)
|
||||||
|
{
|
||||||
|
if ($vsver -ge 150)
|
||||||
|
{
|
||||||
|
$vssetup= $([Environment]::GetFolderPath("MyDocuments"))
|
||||||
|
$vssetup= Join-Path $vssetup "WindowsPowerShell"
|
||||||
|
$vssetup= Join-Path $vssetup "Modules"
|
||||||
|
$vssetup= Join-Path $vssetup "VSSetup"
|
||||||
|
if (-not (Test-Path $vssetup))
|
||||||
|
{
|
||||||
|
Install-Module VSSetup -Scope CurrentUser -Force
|
||||||
|
}
|
||||||
|
if ($vsver -eq 150)
|
||||||
|
{
|
||||||
|
$range='[15.0,16.0)'
|
||||||
|
}
|
||||||
|
if ($vsver -eq 160)
|
||||||
|
{
|
||||||
|
$range='[16.0,17.0)'
|
||||||
|
}
|
||||||
|
|
||||||
|
$installationPath = Get-VSSetupInstance | Select-VSSetupInstance -Version $range -Latest -Require Microsoft.VisualStudio.Component.VC.Tools.x86.x64 | select InstallationPath
|
||||||
|
$vscomntools = $installationPath.psobject.properties.Value;
|
||||||
|
if ($vsver -eq 150)
|
||||||
|
{
|
||||||
|
set-item -force -path "ENV:VS150COMNTOOLS" -value "$vscomntools\Common7\Tools\"
|
||||||
|
Write-Host "`nVS150COMNTOOLS=$env:VS150COMNTOOLS" -ForegroundColor Yellow
|
||||||
|
}
|
||||||
|
if ($vsver -eq 160)
|
||||||
|
{
|
||||||
|
set-item -force -path "ENV:VS160COMNTOOLS" -value "$vscomntools\Common7\Tools\"
|
||||||
|
Write-Host "`nVS160COMNTOOLS=$env:VS160COMNTOOLS" -ForegroundColor Yellow
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function Add-Env-Var([string] $lib, [string] $var)
|
function Add-Env-Var([string] $lib, [string] $var)
|
||||||
{
|
{
|
||||||
if ((${Env:$var} -eq $null) -or (-not ${Env:$var}.Contains(${Env:$lib_$var})))
|
if ((${Env:$var} -eq $null) -or (-not ${Env:$var}.Contains(${Env:$lib_$var"})))
|
||||||
{
|
{
|
||||||
$libvar = "$lib" + "_" + "$var"
|
$libvar = "$lib" + "_" + "$var"
|
||||||
$envvar = [Environment]::GetEnvironmentVariable($libvar, "Process")
|
$envvar = [Environment]::GetEnvironmentVariable($var, "Process")
|
||||||
|
$envvar = $envvar + ';' + [Environment]::GetEnvironmentVariable($libvar, "Process")
|
||||||
[Environment]::SetEnvironmentVariable($var, $envvar, "Process")
|
[Environment]::SetEnvironmentVariable($var, $envvar, "Process")
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -76,30 +122,20 @@ function Set-Environment
|
|||||||
{
|
{
|
||||||
if ($poco_base -eq '') { $script:poco_base = Get-Location }
|
if ($poco_base -eq '') { $script:poco_base = Get-Location }
|
||||||
|
|
||||||
if ($vs_version -eq 0)
|
switch ( $vs )
|
||||||
{
|
{
|
||||||
if ($Env:VS160COMNTOOLS -ne '') { $script:vs_version = 160 }
|
140 { }
|
||||||
elseif ($Env:VS150COMNTOOLS -ne '') { $script:vs_version = 150 }
|
default { Add-VSCOMNTOOLS $vs }
|
||||||
elseif ($Env:VS140COMNTOOLS -ne '') { $script:vs_version = 140 }
|
|
||||||
elseif ($Env:VS120COMNTOOLS -ne '') { $script:vs_version = 120 }
|
|
||||||
elseif ($Env:VS110COMNTOOLS -ne '') { $script:vs_version = 110 }
|
|
||||||
elseif ($Env:VS100COMNTOOLS -ne '') { $script:vs_version = 100 }
|
|
||||||
elseif ($Env:VS90COMNTOOLS -ne '') { $script:vs_version = 90 }
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Write-Host 'Visual Studio not found, exiting.'
|
|
||||||
Exit
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (-Not $Env:PATH.Contains("$Env:POCO_BASE\bin64;$Env:POCO_BASE\bin;"))
|
if (-Not $Env:PATH.Contains("$Env:POCO_BASE\bin64;$Env:POCO_BASE\bin;"))
|
||||||
{ $Env:PATH = "$Env:POCO_BASE\bin64;$Env:POCO_BASE\bin;$Env:PATH" }
|
{ $Env:PATH = "$Env:POCO_BASE\bin64;$Env:POCO_BASE\bin;$Env:PATH" }
|
||||||
|
|
||||||
if ($openssl_base -eq '')
|
if ($openssl_base -eq '')
|
||||||
{
|
{
|
||||||
$script:openssl_base = '$poco_base\openssl'
|
$script:openssl_base = '$poco_base\openssl'
|
||||||
}
|
}
|
||||||
|
|
||||||
$Env:OPENSSL_DIR = "$openssl_base"
|
$Env:OPENSSL_DIR = "$openssl_base"
|
||||||
$Env:OPENSSL_INCLUDE = "$Env:OPENSSL_DIR\include"
|
$Env:OPENSSL_INCLUDE = "$Env:OPENSSL_DIR\include"
|
||||||
$Env:OPENSSL_LIB = "$Env:OPENSSL_DIR\lib;$Env:OPENSSL_DIR\lib\VC"
|
$Env:OPENSSL_LIB = "$Env:OPENSSL_DIR\lib;$Env:OPENSSL_DIR\lib\VC"
|
||||||
@ -115,27 +151,29 @@ function Set-Environment
|
|||||||
Add-Env-Var "MYSQL" "LIB"
|
Add-Env-Var "MYSQL" "LIB"
|
||||||
}
|
}
|
||||||
|
|
||||||
$vsct = "VS$($vs_version)COMNTOOLS"
|
$vsct = "VS$($vs)COMNTOOLS"
|
||||||
|
$vsdir = ''
|
||||||
$vsdir = (Get-Item Env:$vsct).Value
|
$vsdir = (Get-Item Env:$vsct).Value
|
||||||
$Command = ''
|
$Command = ''
|
||||||
$CommandArg = ''
|
$CommandArg = ''
|
||||||
if ($platform -eq 'x64') { $CommandArg = "amd64" }
|
if ($platform -eq 'x64') { $CommandArg = "amd64" }
|
||||||
else { $CommandArg = "x86" }
|
else { $CommandArg = "x86" }
|
||||||
if ($vs_version -ge 160)
|
if ($vs -eq 150)
|
||||||
{
|
{
|
||||||
$Command = "$($vsdir)\..\..\VC\Auxiliary\Build\vcvarsall.bat"
|
$Command = Resolve-Path "$($vsdir)\..\..\VC\Auxiliary\Build\vcvarsall.bat"
|
||||||
$script:msbuild_exe = "$($vsdir)\..\..\MSBuild\Current\Bin\MSBuild.exe"
|
$script:msbuild_exe = Resolve-Path "$($vsdir)\..\..\MSBuild\15.0\Bin\MSBuild.exe"
|
||||||
}
|
} else {
|
||||||
elseif ($vs_version -ge 150)
|
if ($vs -eq 160)
|
||||||
{
|
{
|
||||||
$Command = "$($vsdir)\..\..\VC\Auxiliary\Build\vcvarsall.bat"
|
$Command = Resolve-Path "$($vsdir)\..\..\VC\Auxiliary\Build\vcvarsall.bat"
|
||||||
$script:msbuild_exe = "$($vsdir)\..\..\MSBuild\15.0\Bin\MSBuild.exe"
|
$script:msbuild_exe = Resolve-Path "$($vsdir)\..\..\MSBuild\Current\Bin\MSBuild.exe"
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
$Command = "$($vsdir)\..\..\VC\vcvarsall.bat"
|
$Command = Resolve-Path "$($vsdir)\..\..\VC\vcvarsall.bat"
|
||||||
$script:msbuild_exe = "MSBuild.exe"
|
$script:msbuild_exe = "MSBuild.exe"
|
||||||
}
|
}}
|
||||||
|
|
||||||
$tempFile = [IO.Path]::GetTempFileName()
|
$tempFile = [IO.Path]::GetTempFileName()
|
||||||
cmd /c " `"$Command`" $CommandArg && set > `"$tempFile`" "
|
cmd /c " `"$Command`" $CommandArg && set > `"$tempFile`" "
|
||||||
Get-Content $tempFile | Foreach-Object {
|
Get-Content $tempFile | Foreach-Object {
|
||||||
@ -154,8 +192,8 @@ function Process-Input
|
|||||||
{
|
{
|
||||||
Write-Host 'Usage:'
|
Write-Host 'Usage:'
|
||||||
Write-Host '------'
|
Write-Host '------'
|
||||||
Write-Host 'buildwin.ps1 [-poco_base dir]'
|
Write-Host 'buildwin.ps1 [-poco_base <dir>]'
|
||||||
Write-Host ' [-vs_version 160 | 150 | 140 | 120 | 110 | 100 | 90]'
|
Write-Host ' [-vs 140 | 150 | 160]'
|
||||||
Write-Host ' [-action build | rebuild | clean]'
|
Write-Host ' [-action build | rebuild | clean]'
|
||||||
Write-Host ' [-linkmode shared | static_mt | static_md | all]'
|
Write-Host ' [-linkmode shared | static_mt | static_md | all]'
|
||||||
Write-Host ' [-config release | debug | both]'
|
Write-Host ' [-config release | debug | both]'
|
||||||
@ -164,8 +202,10 @@ function Process-Input
|
|||||||
Write-Host ' [-tests]'
|
Write-Host ' [-tests]'
|
||||||
Write-Host ' [-omit "Lib1X;LibY;LibZ;..."]'
|
Write-Host ' [-omit "Lib1X;LibY;LibZ;..."]'
|
||||||
Write-Host ' [-tool msbuild | devenv]'
|
Write-Host ' [-tool msbuild | devenv]'
|
||||||
Write-Host ' [-openssl_base dir]'
|
Write-Host ' [-useenv env | noenv]'
|
||||||
Write-Host ' [-mysql_base dir]'
|
Write-Host ' [-verbosity minimal | quiet | normal | detailed | diagnostic'
|
||||||
|
Write-Host ' [-openssl_base <dir>]'
|
||||||
|
Write-Host ' [-mysql_base <dir>]'
|
||||||
|
|
||||||
Exit
|
Exit
|
||||||
}
|
}
|
||||||
@ -176,7 +216,7 @@ function Process-Input
|
|||||||
Write-Host "Build configuration:"
|
Write-Host "Build configuration:"
|
||||||
Write-Host "--------------------"
|
Write-Host "--------------------"
|
||||||
Write-Host "Poco Base: $poco_base"
|
Write-Host "Poco Base: $poco_base"
|
||||||
Write-Host "Version: $vs_version"
|
Write-Host "Version: $vs"
|
||||||
Write-Host "Action: $action"
|
Write-Host "Action: $action"
|
||||||
Write-Host "Link Mode: $linkmode"
|
Write-Host "Link Mode: $linkmode"
|
||||||
Write-Host "Configuration: $config"
|
Write-Host "Configuration: $config"
|
||||||
@ -194,15 +234,15 @@ function Process-Input
|
|||||||
{
|
{
|
||||||
Write-Host "OpenSSL: $openssl_base"
|
Write-Host "OpenSSL: $openssl_base"
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($mysql_base -ne '')
|
if ($mysql_base -ne '')
|
||||||
{
|
{
|
||||||
Write-Host "MySQL: $mysql_base"
|
Write-Host "MySQL: $mysql_base"
|
||||||
}
|
}
|
||||||
|
|
||||||
# NB: this won't work in PowerShell ISE
|
# NB: this won't work in PowerShell ISE
|
||||||
Write-Host "Press Ctrl-C to exit or any other key to continue ..."
|
#Write-Host "Press Ctrl-C to exit or any other key to continue ..."
|
||||||
$x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyUp")
|
#$x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyUp")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -214,18 +254,24 @@ function Exec-MSBuild([string] $vsProject, [string] $projectConfig)
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
$cmd = "&`"$script:msbuild_exe`" $vsProject /t:$action /p:Configuration=$projectConfig /p:BuildProjectReferences=false /p:Platform=$platform /p:useenv=true"
|
$cmd = "&`"$script:msbuild_exe`" $vsProject /nologo /m /t:$action /p:Configuration=$projectConfig /p:BuildProjectReferences=false /p:Platform=$platform /p:useenv=$useenv /v:$verbosity"
|
||||||
Write-Host $cmd
|
Write-Host $cmd
|
||||||
Invoke-Expression $cmd
|
Invoke-Expression $cmd
|
||||||
if ($LastExitCode -ne 0) { Exit $LastExitCode }
|
if ($LastExitCode -ne 0) { Exit $LastExitCode }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function Build-MSBuild([string] $vsProject)
|
function Build-MSBuild([string] $vsProject, [switch] $skipStatic)
|
||||||
{
|
{
|
||||||
|
if ($linkmode -contains "static" -and $skipStatic) { Return }
|
||||||
|
|
||||||
if ($linkmode -eq 'all')
|
if ($linkmode -eq 'all')
|
||||||
{
|
{
|
||||||
$linkModeArr = 'shared', 'static_mt', 'static_md'
|
$linkModeArr = @('shared')
|
||||||
|
if (-not $skipStatic)
|
||||||
|
{
|
||||||
|
$linkModeArr += 'static_mt', 'static_md'
|
||||||
|
}
|
||||||
|
|
||||||
foreach ($mode in $linkModeArr)
|
foreach ($mode in $linkModeArr)
|
||||||
{
|
{
|
||||||
@ -269,11 +315,17 @@ function Exec-Devenv([string] $projectConfig, [string] $vsProject)
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function Build-Devenv([string] $vsProject)
|
function Build-Devenv([string] $vsProject, [switch] $skipStatic)
|
||||||
{
|
{
|
||||||
|
if ($linkmode -contains "static" -and $skipStatic) { Return }
|
||||||
|
|
||||||
if ($linkmode -eq 'all')
|
if ($linkmode -eq 'all')
|
||||||
{
|
{
|
||||||
$linkModeArr = 'shared', 'static_mt', 'static_md'
|
$linkModeArr = @('shared')
|
||||||
|
if (-not $skipStatic)
|
||||||
|
{
|
||||||
|
$linkModeArr += 'static_mt', 'static_md'
|
||||||
|
}
|
||||||
|
|
||||||
foreach ($mode in $linkModeArr)
|
foreach ($mode in $linkModeArr)
|
||||||
{
|
{
|
||||||
@ -311,7 +363,7 @@ function Build-Devenv([string] $vsProject)
|
|||||||
|
|
||||||
function Build-samples
|
function Build-samples
|
||||||
{
|
{
|
||||||
process {
|
process {
|
||||||
$sampleName = $_.BaseName.split("_")[0]
|
$sampleName = $_.BaseName.split("_")[0]
|
||||||
$sampleProjName = "$($poco_base)\$($componentDir)\samples\$($sampleName)\$($_)"
|
$sampleProjName = "$($poco_base)\$($componentDir)\samples\$($sampleName)\$($_)"
|
||||||
if ($tool -eq 'devenv') { Build-Devenv $sampleProjName }
|
if ($tool -eq 'devenv') { Build-Devenv $sampleProjName }
|
||||||
@ -321,16 +373,27 @@ function Build-samples
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function Build
|
function Build-Exec([string] $tool, [string] $vsProject, [switch] $skipStatic)
|
||||||
{
|
{
|
||||||
Process-Input
|
if (!(Test-Path -Path $vsProject)) # not found
|
||||||
|
{
|
||||||
|
Write-Host "+------------------------------------------------------------------"
|
||||||
|
Write-Host "| VS project $vsProject not found, skipping."
|
||||||
|
Write-Host "+------------------------------------------------------------------"
|
||||||
|
Return
|
||||||
|
}
|
||||||
|
if ($tool -eq 'devenv') { Build-Devenv $vsProject -skipStatic:$skipStatic }
|
||||||
|
elseif ($tool -eq 'msbuild') { Build-MSBuild $vsProject -skipStatic:$skipStatic }
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Write-Host "Build tool $tool not supported. Exiting."
|
||||||
|
Exit -1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if ($vs_version -lt 100) { $extension = 'vcproj' }
|
|
||||||
else { $extension = 'vcxproj' }
|
|
||||||
|
|
||||||
$platformName = ''
|
function Build-Components([string] $extension, [string] $platformName, [string] $type)
|
||||||
if ($platform -eq 'x64') { $platformName = '_x64' }
|
{
|
||||||
elseif ($platform -eq 'WinCE') { $platformName = '_CE' }
|
|
||||||
|
|
||||||
Get-Content "$poco_base\components" | Foreach-Object {
|
Get-Content "$poco_base\components" | Foreach-Object {
|
||||||
|
|
||||||
@ -338,17 +401,17 @@ function Build
|
|||||||
$componentDir = $_.Replace("/", "\")
|
$componentDir = $_.Replace("/", "\")
|
||||||
$componentArr = $_.split('/')
|
$componentArr = $_.split('/')
|
||||||
$componentName = $componentArr[$componentArr.Length - 1]
|
$componentName = $componentArr[$componentArr.Length - 1]
|
||||||
$suffix = "_vs$vs_version"
|
$suffix = "_vs$vs"
|
||||||
|
|
||||||
$omitArray = @()
|
$omitArray = @()
|
||||||
$omit.Split(',;') | ForEach {
|
$omit.Split(',;') | ForEach {
|
||||||
$omitArray += "$_"
|
$omitArray += $_.Trim()
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($omitArray -NotContains $component)
|
if ($omitArray -NotContains $component)
|
||||||
{
|
{
|
||||||
$vsProject = "$poco_base\$componentDir\$componentName$($platformName)$($suffix).$($extension)"
|
$vsProject = "$poco_base\$componentDir\$componentName$($platformName)$($suffix).$($extension)"
|
||||||
|
|
||||||
if (!(Test-Path -Path $vsProject)) # when VS project name is not same as directory name
|
if (!(Test-Path -Path $vsProject)) # when VS project name is not same as directory name
|
||||||
{
|
{
|
||||||
$vsProject = "$poco_base\$componentDir$($platformName)$($suffix).$($extension)"
|
$vsProject = "$poco_base\$componentDir$($platformName)$($suffix).$($extension)"
|
||||||
@ -360,37 +423,52 @@ function Build
|
|||||||
Return # since Foreach-Object is a function, this is actually loop "continue"
|
Return # since Foreach-Object is a function, this is actually loop "continue"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
Write-Host "| Building $vsProject"
|
Write-Host "| Building $vsProject"
|
||||||
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
|
|
||||||
if ($tool -eq 'devenv') { Build-Devenv $vsProject }
|
if ($type -eq "lib")
|
||||||
elseif ($tool -eq 'msbuild') { Build-MSBuild $vsProject }
|
|
||||||
elseif ($tool -ne '') { Write-Host "Build tool not supported: $tool" }
|
|
||||||
else
|
|
||||||
{
|
{
|
||||||
Write-Host "Build tool not specified. Exiting."
|
Build-Exec $tool $vsProject
|
||||||
Exit
|
}
|
||||||
}
|
ElseIf ($tests -and ($type -eq "test"))
|
||||||
|
|
||||||
if ($tests)
|
|
||||||
{
|
{
|
||||||
$vsTestProject = "$poco_base\$componentDir\testsuite\TestSuite$($platformName)$($suffix).$($extension)"
|
$vsTestProject = "$poco_base\$componentDir\testsuite\TestSuite$($platformName)$($suffix).$($extension)"
|
||||||
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
Write-Host "| Building $vsTestProject"
|
Write-Host "| Building $vsTestProject"
|
||||||
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
|
Build-Exec $tool $vsTestProject
|
||||||
|
|
||||||
if ($tool -eq 'devenv') { Build-Devenv $vsTestProject }
|
if ($component -eq "Foundation") # special case for Foundation, which needs test app and dll
|
||||||
elseif ($tool -eq 'msbuild') { Build-MSBuild $vsTestProject }
|
{
|
||||||
else{ Write-Host "Tool not supported: $tool" }
|
$vsTestProject = "$poco_base\$componentDir\testsuite\TestApp$($platformName)$($suffix).$($extension)"
|
||||||
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
|
Write-Host "| Building $vsTestProject"
|
||||||
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
|
Build-Exec $tool $vsTestProject
|
||||||
|
|
||||||
|
$vsTestProject = "$poco_base\$componentDir\testsuite\TestLibrary$($platformName)$($suffix).$($extension)"
|
||||||
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
|
Write-Host "| Building $vsTestProject"
|
||||||
|
Write-Host "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++"
|
||||||
|
Build-Exec $tool $vsTestProject -skipStatic
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
ElseIf ($samples -and ($type -eq "sample"))
|
||||||
if ($samples)
|
|
||||||
{
|
{
|
||||||
Get-Childitem "$poco_base\$($componentDir)" -Recurse |`
|
if ($platform -eq 'x64')
|
||||||
Where {$_.Extension -Match $extension -And $_.DirectoryName -Like "*samples*" -And $_.BaseName -Like "*$platformName$($suffix)" } `
|
{
|
||||||
| Build-samples "$_"
|
Get-Childitem "$poco_base\$($componentDir)" -Recurse |`
|
||||||
|
Where {$_.Extension -Match $extension -And $_.DirectoryName -Like "*samples*" -And $_.BaseName -Like "*$platformName$($suffix)" } `
|
||||||
|
| Build-samples "$_"
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
Get-Childitem "$poco_base\$($componentDir)" -Recurse |`
|
||||||
|
Where {$_.Extension -Match $extension -And $_.DirectoryName -Like "*samples*" -And $_.BaseName -Like "*$($suffix)" -And $_.BaseName -NotLike "*_x64_*" } `
|
||||||
|
| Build-samples "$_"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
@ -403,4 +481,21 @@ function Build
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
function Build
|
||||||
|
{
|
||||||
|
Process-Input
|
||||||
|
|
||||||
|
if ($vs -lt 100) { $extension = 'vcproj' }
|
||||||
|
else { $extension = 'vcxproj' }
|
||||||
|
|
||||||
|
$platformName = ''
|
||||||
|
if ($platform -eq 'x64') { $platformName = '_x64' }
|
||||||
|
elseif ($platform -eq 'WinCE') { $platformName = '_CE' }
|
||||||
|
|
||||||
|
Build-Components $extension $platformName "lib"
|
||||||
|
Build-Components $extension $platformName "test"
|
||||||
|
Build-Components $extension $platformName "sample"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
Build
|
Build
|
||||||
|
@ -1 +1 @@
|
|||||||
62
|
63
|
Loading…
x
Reference in New Issue
Block a user