REM requires you have gow 0.8.0 or newer installed (see https://github.com/bmatzelle/gow).  Or version of sed with in place editing in your path

REM Increment minor number by 1
REM See http://www.codeproject.com/Articles/31236/How-To-Update-Assembly-Version-Number-Automaticall

.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\DataProviders\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\LibRdlCrossPlatformViewer\Properties\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\LibRdlWpfViewer\Properties\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlAsp\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlCmd\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlCri\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlDesign\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlDesktop\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlEngine\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlGtkViewer\RdlGtkViewer\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlMapFile\Properties\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlViewer\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlViewer\RdlReader\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\ReportServer\Properties\AssemblyInfo.cs"

REM retrieve new version number
REM See http://stackoverflow.com/questions/4044579/how-to-get-output-of-a-for-loop-into-a-variable-in-a-batch-file
cd "%CD%\..\RdlEngine"
for /f "tokens=2 delims=()" %%a in ('findstr AssemblyVersion AssemblyInfo.cs') do set Version=%%~a

set Version=%Version:.*=%
echo %Version%
cd ..
cd Release-Builds

REM Update NUGET spec files
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-Asp\MajorsilenceReporting-Asp.nuspec"
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-Core\MajorsilenceReporting-Core.nuspec"
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-XwtViewer\MajorsilenceReporting-XwtViewer.nuspec"
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-Viewer\MajorsilenceReporting-Viewer.nuspec"

del "sed*"

REM requires you have gow 0.8.0 or newer installed (see https://github.com/bmatzelle/gow).  Or version of sed with in place editing in your path

REM Increment minor number by 1
REM See http://www.codeproject.com/Articles/31236/How-To-Update-Assembly-Version-Number-Automaticall

.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\DataProviders\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\LibRdlCrossPlatformViewer\Properties\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\LibRdlWpfViewer\Properties\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlAsp\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlCmd\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlCri\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlDesign\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlDesktop\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlEngine\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlGtkViewer\RdlGtkViewer\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlMapFile\Properties\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlViewer\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\RdlViewer\RdlReader\AssemblyInfo.cs"
.\tools\AssemblyInfoUtil.exe -inc:2 "%CD%\..\ReportServer\Properties\AssemblyInfo.cs"

REM retrieve new version number
REM See http://stackoverflow.com/questions/4044579/how-to-get-output-of-a-for-loop-into-a-variable-in-a-batch-file
cd "%CD%\..\RdlEngine"
for /f "tokens=2 delims=()" %%a in ('findstr AssemblyVersion AssemblyInfo.cs') do set Version=%%~a

set Version=%Version:.*=%
echo %Version%
cd ..
cd Release-Builds

REM Update NUGET spec files
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-Asp\MajorsilenceReporting-Asp.nuspec"
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-Core\MajorsilenceReporting-Core.nuspec"
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-XwtViewer\MajorsilenceReporting-XwtViewer.nuspec"
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-Viewer\MajorsilenceReporting-Viewer.nuspec"
sed.exe -i "5s/.*/    <version>%Version%<\/version>/" "%CD%\nuget\MajorsilenceReporting-WpfViewer\MajorsilenceReporting-WpfViewer.nuspec"

del "sed*"

Make sure MajorsilenceReporting-WpfViewer version is increased with other packages.


@echo off
title winAutolink

rem Start program ----------------------------------------------------------
:init
  set target=%~dp0
  goto check_permissions

rem Check administrator permissions ----------------------------------------
:check_permissions
  echo Administrative permissions required. Detecting permissions...
  net session >nul 2>&1

  if %errorLevel% == 0 (
    echo Success: Administrative permissions confirmed.
    echo.

    rem If exists remove file created by UAC_prompt
    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )

    goto select_links
  ) else (
    echo Requesting administrative privileges...
    goto UAC_prompt
  )

rem Show admin prompt ------------------------------------------------------
:UAC_prompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "%~s0", "%params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs" >nul
    exit /B

rem Select what to link ----------------------------------------------------
:select_links
  echo Please select which files to link:
  echo 1. Vim
  echo 2. Vimperator
  echo 3. Both
  echo.

  set /p choose=
  if %choose% gtr 3 ( goto error )
  if %choose% lss 1 ( goto error )

  goto check_path

rem Check if current location contains repository -------------------------
:check_path
  cd %target%

  if %choose% == 1 (
    if exist vim/vimrc (
      goto link_vim
    )
  )
  if %choose% == 2 (
    if exist vimperator/vimperatorrc (
      goto link_vimp
    )
  )
  if %choose% == 3 (
    if exist vim\vimrc (
      if exist vimperator\vimperatorrc (
        goto link_vim
      )
    )
  )

  if %errorLevel% == 1 ( goto error )

  echo Looks like repository is not here.
  goto get_target

rem Get from user location of repository -----------------------------------
:get_target
  set /p target="Please write correct path of repository: "

  if %errorLevel% == 0 (
    cls
    goto check_path
  ) else (
    goto error
  )

rem Link vim files ---------------------------------------------------------
:link_vim
  rem Go to home directory
  cd %USERPROFILE%

  echo Linking vim files...
  echo.

  if exist vimfiles (
    echo vimfiles folder already exists. Skipping to next file.
  ) else (
    mklink /D vimfiles %target%vim
  )

  if %choose% == 3 (
    echo.
    set choose=0
    goto link_vimp
  )

  if %errorLevel% == 0 (
    goto success
  ) else (
    goto error
  )

rem Link vimperator files --------------------------------------------------
:link_vimp
  rem Go to home directory
  cd %USERPROFILE%

  echo Linking vimperator files...
  echo.

  if exist vimperator (
    echo vimperator folder already exists. Skipping to next file.
  ) else (
    mklink /D vimperator %target%vimperator
  )
  if exist _vimperatorrc (
    echo _vimperatorrc file already exists. Skipping to next file.
  ) else (
    mklink _vimperatorrc %target%vimperator\vimperatorrc
  )

  if %errorLevel% == 0 (
    goto success
  ) else (
    goto error
  )

rem End program ------------------------------------------------------------
:error
  echo.
  echo Error: Something went wrong.
  goto end

:success
  echo.
  echo Success: All files liked correctly.
  goto end

:end
  pause >nul
  cls
  exit /B

@echo off
title winAutolink

rem Start program ----------------------------------------------------------
:init
  set target=%~dp0
  goto check_permissions

rem Check administrator permissions ----------------------------------------
:check_permissions
  echo Administrative permissions required. Detecting permissions...
  net session >nul 2>&1

  if %errorLevel% == 0 (
    echo Success: Administrative permissions confirmed.
    echo.
    goto select_links
  ) else (
    echo Requesting administrative privileges...
    goto UAC_prompt
  )

rem Show admin prompt ------------------------------------------------------
:UAC_prompt
    echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
    set params = %*:"=""
    echo UAC.ShellExecute "%~s0", "%params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

    "%temp%\getadmin.vbs" >nul
    if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
    exit /B

rem Select what to link ----------------------------------------------------
:select_links
  echo Please select which files to link:
  echo 1. Vim
  echo 2. Vimperator
  echo 3. Both
  echo.

  set /p choose=
  if %choose% gtr 3 ( goto error )
  if %choose% lss 1 ( goto error )

  goto check_path

rem Check if current location contains repository -------------------------
:check_path
  cd %target%

  if %choose% == 1 (
    if exist vim/vimrc (
      goto link_vim
    )
  )
  if %choose% == 2 (
    if exist vimperator/vimperatorrc (
      goto link_vimp
    )
  )
  if %choose% == 3 (
    if exist vim\vimrc (
      if exist vimperator\vimperatorrc (
        goto link_vim
      )
    )
  )

  goto error

rem Link vim files ---------------------------------------------------------
:link_vim
  rem Go to home directory
  cd %USERPROFILE%

  echo Linking vim files...
  echo.

  if exist vimfiles (
    echo vimfiles folder already exists. Skipping to next file.
  ) else (
    mklink /D vimfiles %target%vim
  )

  if %choose% == 3 (
    echo.
    set choose=0
    goto link_vimp
  )

  if %errorLevel% == 0 (
    goto success
  ) else (
    goto error
  )

rem Link vimperator files --------------------------------------------------
:link_vimp
  rem Go to home directory
  cd %USERPROFILE%

  echo Linking vimperator files...
  echo.

  if exist vimperator (
    echo vimperator folder already exists. Skipping to next file.
  ) else (
    mklink /D vimperator %target%vimperator
  )
  if exist _vimperatorrc (
    echo _vimperatorrc file already exists. Skipping to next file.
  ) else (
    mklink _vimperatorrc %target%vimperator\vimperatorrc
  )

  if %errorLevel% == 0 (
    goto success
  ) else (
    goto error
  )

rem End program ------------------------------------------------------------
:error
  echo.
  echo Error: Something went wrong.
  goto end

:success
  echo.
  echo Success: All files liked correctly.
  goto end

:end
  pause >nul
  cls
  exit /B

Remove get correct location code

Remove get correct location code

It's not needed. Chances that this file will be run outside of
repository are very low.


@echo on

@REM Contains a patch for arrow-cpp
@REM https://github.com/apache/arrow/pull/11806
COPY %RECIPE_DIR%\arrow_aligned_storage.h %PREFIX%\Library\include\arrow\util\aligned_storage.h
if errorlevel 1 exit 1

mkdir "%SRC_DIR%"\build
pushd "%SRC_DIR%"\build

COPY %PREFIX%\Library\lib\thriftmd.lib %PREFIX%\Library\bin\thriftmd.lib
COPY %PREFIX%\Library\lib\xerces-c_3.lib %PREFIX%\Library\lib\xerces-c.lib

:: /wd4711 and /wd4710 disables warning C4711/C4710

cmake -G "NMake Makefiles" ^
      -DCMAKE_INSTALL_PREFIX=%PREFIX% ^
      -DCMAKE_PREFIX_PATH=%PREFIX% ^
      -DCMAKE_LIBRARY_PATH=%PREFIX%\Library\lib ^
      -DCMAKE_INCLUDE_PATH=%PREFIX%\Library\include ^
      -DLibArchive_INCLUDE_DIR=%PREFIX\include ^
      -DLibArchive_LIBRARY=%PREFIX%\Library\lib\archive.lib ^
      -DLZMA_LIBRARY=%PREFIX%\Library\lib\liblzma.lib ^
      -DBZ2_LIBRARY=%PREFIX%\Library\lib\libbz2.lib ^
      -DGDAL_LIBRARIES=%PREFIX%\Library\lib\gdal_i.lib^
      -DGDAL_INCLUDE_DIR=%PREFIX%\Library\include ^
      -DCMAKE_CXX_FLAGS="/MP /W0 /wd4596 /wd4710 /wd4711 -DBOOST_ALL_DYN_LINK=1 -DBOOST_PROGRAM_OPTIONS_DYN_LINK=1" ^
      -DBoost_USE_STATIC_LIBS=OFF ^
      -DENABLE_FOLLY=OFF ^
      -DENABLE_TESTS=OFF ^
      -DENABLE_CUDA=OFF ^
      -DENABLE_GEOS=OFF ^
      -DENABLE_FSI_ODBC=OFF ^
      -DENABLE_AWS_S3=OFF ^
      -DENABLE_LDAP=OFF ^
      -DMAPD_EDITION=EE ^
      -DCMAKE_BUILD_TYPE=Release ^
      -DCMAKE_VERBOSE_MAKEFILE=OFF ^
      -DENABLE_NO_WINWARNINGS=ON ^
      "%SRC_DIR%"
if errorlevel 1 exit 1

cmake --build . --target calciteserver_thrift initdb omnisci_server omnisql mapd_java_components StreamImporter KafkaImporter --config Release
if errorlevel 1 exit 1

cmake --install . --component "exe" --prefix %PREFIX%
COPY %PREFIX%\bin\initdb.exe %PREFIX%\bin\omnisci_initdb.exe
if errorlevel 1 exit 1

popd

@echo on

@REM Contains a patch for arrow-cpp
@REM https://github.com/apache/arrow/pull/11806
COPY %RECIPE_DIR%\arrow_aligned_storage.h %PREFIX%\Library\include\arrow\util\aligned_storage.h
if errorlevel 1 exit 1

mkdir "%SRC_DIR%"\build
pushd "%SRC_DIR%"\build

COPY %PREFIX%\Library\lib\thriftmd.lib %PREFIX%\Library\bin\thriftmd.lib
COPY %PREFIX%\Library\lib\xerces-c_3.lib %PREFIX%\Library\lib\xerces-c.lib

:: /wd4711 and /wd4710 disables warning C4711/C4710

cmake -G "NMake Makefiles" ^
      -DCMAKE_INSTALL_PREFIX=%PREFIX% ^
      -DCMAKE_PREFIX_PATH=%PREFIX% ^
      -DCMAKE_LIBRARY_PATH=%PREFIX%\Library\lib ^
      -DCMAKE_INCLUDE_PATH=%PREFIX%\Library\include ^
      -DLibArchive_INCLUDE_DIR=%PREFIX\include ^
      -DLibArchive_LIBRARY=%PREFIX%\Library\lib\archive.lib ^
      -DLZMA_LIBRARY=%PREFIX%\Library\lib\liblzma.lib ^
      -DBZ2_LIBRARY=%PREFIX%\Library\lib\libbz2.lib ^
      -DGDAL_LIBRARIES=%PREFIX%\Library\lib\gdal_i.lib^
      -DGDAL_INCLUDE_DIR=%PREFIX%\Library\include ^
      -DCMAKE_CXX_FLAGS="/MP /W0 /wd4596 /wd4710 /wd4711 -DBOOST_ALL_DYN_LINK=1 -DBOOST_PROGRAM_OPTIONS_DYN_LINK=1" ^
      -DBoost_USE_STATIC_LIBS=OFF ^
      -DENABLE_FOLLY=OFF ^
      -DENABLE_TESTS=OFF ^
      -DENABLE_CUDA=OFF ^
      -DENABLE_GEOS=OFF ^
      -DENABLE_FSI_ODBC=OFF ^
      -DENABLE_AWS_S3=OFF ^
      -DENABLE_LDAP=OFF ^
      -DMAPD_EDITION=EE ^
      -DCMAKE_BUILD_TYPE=Release ^
      -DCMAKE_VERBOSE_MAKEFILE=OFF ^
      -DENABLE_NO_WINWARNINGS=ON ^
      "%SRC_DIR%"
if errorlevel 1 exit 1

cmake --build . --target calciteserver_thrift initheavy heavydb heavysql mapd_java_components StreamImporter KafkaImporter --config Release
if errorlevel 1 exit 1

cmake --install . --component "exe" --prefix %PREFIX%
if errorlevel 1 exit 1

popd

Fix windows build

Fix windows build


REM nuget restore

ren fake.snk SimpleInjector.snk

msbuild "SimpleInjector.NET\SimpleInjector.NET.csproj" /nologo
msbuild "SimpleInjector.Packaging\SimpleInjector.Packaging.csproj" /nologo
msbuild "SimpleInjector.Extensions.LifetimeScoping\SimpleInjector.Extensions.LifetimeScoping.csproj" /nologo
msbuild "SimpleInjector.Integration.Web\SimpleInjector.Integration.Web.csproj" /nologo
rem msbuild "SimpleInjector.Integration.Web.Mvc\SimpleInjector.Integration.Web.Mvc.csproj" /nologo
msbuild "SimpleInjector.Integration.Wcf\SimpleInjector.Integration.Wcf.csproj" /nologo

msbuild "SimpleInjector.NET.Tests.Unit\SimpleInjector.NET.Tests.Unit.csproj" /nologo
msbuild "SimpleInjector.Extensions.LifetimeScoping.Tests.Unit\SimpleInjector.Extensions.LifetimeScoping.Tests.Unit.csproj" /nologo
msbuild "SimpleInjector.Integration.Web.Tests.Unit\SimpleInjector.Integration.Web.Tests.Unit.csproj" /nologo

ren SimpleInjector.snk fake.snk

REM nuget restore

ren fake.snk SimpleInjector.snk

msbuild "SimpleInjector.NET\SimpleInjector.NET.csproj" /nologo
msbuild "SimpleInjector.Packaging\SimpleInjector.Packaging.csproj" /nologo
msbuild "SimpleInjector.Extensions.LifetimeScoping\SimpleInjector.Extensions.LifetimeScoping.csproj" /nologo
msbuild "SimpleInjector.Integration.Web\SimpleInjector.Integration.Web.csproj" /nologo
msbuild "SimpleInjector.Integration.Web.Mvc\SimpleInjector.Integration.Web.Mvc.csproj" /nologo
msbuild "SimpleInjector.Integration.Wcf\SimpleInjector.Integration.Wcf.csproj" /nologo

msbuild "SimpleInjector.NET.Tests.Unit\SimpleInjector.NET.Tests.Unit.csproj" /nologo
msbuild "SimpleInjector.Extensions.LifetimeScoping.Tests.Unit\SimpleInjector.Extensions.LifetimeScoping.Tests.Unit.csproj" /nologo
msbuild "SimpleInjector.Integration.Web.Tests.Unit\SimpleInjector.Integration.Web.Tests.Unit.csproj" /nologo

ren SimpleInjector.snk fake.snk

Update appveyor.bat

Update appveyor.bat

introduced failing Mvc build


@rem Copyright 2018 Google LLC. All rights reserved.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem     http://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.

@echo "Starting Windows build"

cd /d %~dp0
cd ..

@rem The image we're currently running has a broken version of Node.js enabled
@rem by nvm (v10.15.3), which has no npm bin. This hack uses the functional
@rem Node v8.9.1 to install npm@latest, it then uses this version of npm to
@rem install npm for v10.15.3.
call nvm use v8.9.1 || goto :error
call node C:\Users\kbuilder\AppData\Roaming\nvm-ps\versions\v8.9.1\node_modules\npm-bootstrap\bin\npm-cli.js i npm -g || goto :error
call nvm use v10.15.3 || goto :error
call node C:\Users\kbuilder\AppData\Roaming\nvm-ps\versions\v8.9.1\node_modules\npm\bin\npm-cli.js i npm -g || goto :error

call npm install || goto :error
call npm run test || goto :error

goto :EOF

:error
exit /b 1

@rem Copyright 2018 Google LLC. All rights reserved.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem     http://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.

@echo "Starting Windows build"

cd /d %~dp0
cd ..

@rem npm path is not currently set in our image, we should fix this next time
@rem we upgrade Node.js in the image:
SET PATH=%PATH%;/cygdrive/c/Program Files/nodejs/npm

call nvm use v12.14.1
call which node

call npm install || goto :error
call npm run test || goto :error

goto :EOF

:error
exit /b 1

build: update windows configuration to match new vm


rem DEPENDENCIES:
rem   1. Node.js ('npm' binary in PATH)
rem   2. 7zip    ('7z'  binary in PATH)

set MIN_CARDANO_BYTES=50000000
set LIBRESSL_VERSION=2.5.3

set DAEDALUS_VERSION=%1
@if [%DAEDALUS_VERSION%]==[] (@echo FATAL: DAEDALUS_VERSION [argument #1] was not provided
    exit /b 1);
set CARDANO_BRANCH=%2
@if [%CARDANO_BRANCH%]==[]   (@echo NOTE: CARDANO_BRANCH [argument #2] was not provided
    exit /b 1);

@echo Building Daedalus version: %DAEDALUS_VERSION%
@echo ..with Cardano branch:     %CARDANO_BRANCH%

call npm install
@if %errorlevel% neq 0 (@echo FAILED: npm install
    exit /b 1)

@echo Obtaining Cardano from branch %CARDANO_BRANCH%
rmdir /s/q node_modules\daedalus-client-api 2>nul
mkdir      node_modules\daedalus-client-api

pushd node_modules\daedalus-client-api
    powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('https://ci.appveyor.com/api/projects/jagajaga/cardano-sl/artifacts/CardanoSL.zip?branch=%CARDANO_BRANCH%', 'CardanoSL.zip'); } catch { exit 1; }"
    @if %errorlevel% neq 0 (@echo FAILED: powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('https://ci.appveyor.com/api/projects/jagajaga/cardano-sl/artifacts/CardanoSL.zip?branch=%CARDANO_BRANCH%', 'CardanoSL.zip'); } catch { exit 1; }"
	popd & exit /b 1)
    @for /F "usebackq" %%A in ('CardanoSL.zip') do set size=%%~zA
    if %size% lss %MIN_CARDANO_BYTES% (@echo FAILED: CardanoSL.zip is too small: threshold=%MIN_CARDANO_BYTES%, actual=%size% bytes
        popd & exit /b 1)

    7z x CardanoSL.zip -y
    @if %errorlevel% neq 0 (@echo FAILED: 7z x CardanoSL.zip -y
	popd & exit /b 1)
    del CardanoSL.zip
popd

move   node_modules\daedalus-client-api\log-config-prod.yaml installers\log-config-prod.yaml
move   node_modules\daedalus-client-api\cardano-node.exe     installers\
move   node_modules\daedalus-client-api\cardano-launcher.exe installers\
del /f node_modules\daedalus-client-api\*.exe

rem @echo Obtaining LibreSSL %LIBRESSL_VERSION%
rem https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/libressl-%LIBRESSL_VERSION%-windows.zip

@echo Packaging frontend
call npm run package -- --icon installers/icons/64x64
@if %errorlevel% neq 0 (@echo FAILED: npm run package -- --icon installers/icons/64x64
	exit /b 1)

pushd installers
    @echo Installing stack
    powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('http://www.stackage.org/stack/windows-x86_64', 'stack.zip'); } catch { exit 1; }"
    @if %errorlevel% neq 0 (@echo powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('http://www.stackage.org/stack/windows-x86_64', 'stack.zip'); } catch { exit 1; }"
	popd & exit /b 1)
    del /f stack.exe
    7z x stack.zip stack.exe
    @if %errorlevel% neq 0 (@echo FAILED: 7z x stack.zip stack.exe
	exit /b 1)
    del stack.zip

    @echo Copying DLLs
    @rem TODO: get rocksdb from rocksdb-haskell
    rmdir /s/q DLLs 2>nul
    mkdir      DLLs
    pushd      DLLs
        powershell -Command "try { wget 'https://s3.eu-central-1.amazonaws.com/cardano-sl-testing/DLLs.zip' -outfile DLLs.zip; } catch { exit 1; }"
        @if %errorlevel% neq 0 (@echo FAILED: powershell -Command "try { wget 'https://s3.eu-central-1.amazonaws.com/cardano-sl-testing/DLLs.zip' -outfile DLLs.zip; } catch { exit 1; }"
		exit /b 1)
        7z x DLLs.zip
        @if %errorlevel% neq 0 (@echo FAILED: 7z x DLLs.zip
		popd & popd & exit /b 1)
        del DLLs.zip
    popd

    @echo Building the installer
    stack setup --no-reinstall
    @if %errorlevel% neq 0 (@echo FAILED: stack setup --no-reinstall
	exit /b 1)

:build
    for /l %%x in (1, 1, 5) do (
        stack --no-terminal build -j 2 --exec make-installer
        @if %errorlevel% equ 0 goto :built

        @echo .
        @echo .
        @echo FAILED: stack --no-terminal build -j 2 --exec make-installer
        @echo .
        @timeout 7
        @echo Retrying -- and also waiting for GHC 8.2.1 [see https://github.com/commercialhaskell/stack/issues/2617]
        @echo .
        @echo .
    )
    @echo FATAL: persistent failure while building installer with:  stack --no-terminal build -j 2 --exec make-installer
    exit /b 1
:built
popd

@echo .
@echo Successfully built Daedalus %DAEDALUS_VERSION%
@echo .
@dir /b/s installers\daedalus*

rem DEPENDENCIES:
rem   1. Node.js ('npm' binary in PATH)
rem   2. 7zip    ('7z'  binary in PATH)

set MIN_CARDANO_BYTES=50000000
set LIBRESSL_VERSION=2.5.3

set DAEDALUS_VERSION=%1
@if [%DAEDALUS_VERSION%]==[] (@echo FATAL: DAEDALUS_VERSION [argument #1] was not provided
    exit /b 1);
set CARDANO_BRANCH=%2
@if [%CARDANO_BRANCH%]==[]   (@echo NOTE: CARDANO_BRANCH [argument #2] was not provided
    exit /b 1);

@echo Building Daedalus version: %DAEDALUS_VERSION%
@echo ..with Cardano branch:     %CARDANO_BRANCH%

call npm install
@if %errorlevel% neq 0 (@echo FAILED: npm install
    exit /b 1)

@echo Obtaining Cardano from branch %CARDANO_BRANCH%
rmdir /s/q node_modules\daedalus-client-api 2>nul
mkdir      node_modules\daedalus-client-api

pushd node_modules\daedalus-client-api
    powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('https://ci.appveyor.com/api/projects/jagajaga/cardano-sl/artifacts/CardanoSL.zip?branch=%CARDANO_BRANCH%', 'CardanoSL.zip'); } catch { exit 1; }"
    @if %errorlevel% neq 0 (@echo FAILED: powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('https://ci.appveyor.com/api/projects/jagajaga/cardano-sl/artifacts/CardanoSL.zip?branch=%CARDANO_BRANCH%', 'CardanoSL.zip'); } catch { exit 1; }"
	popd & exit /b 1)
    @for /F "usebackq" %%A in ('CardanoSL.zip') do set size=%%~zA
    if %size% lss %MIN_CARDANO_BYTES% (@echo FAILED: CardanoSL.zip is too small: threshold=%MIN_CARDANO_BYTES%, actual=%size% bytes
        popd & exit /b 1)

    7z x CardanoSL.zip -y
    @if %errorlevel% neq 0 (@echo FAILED: 7z x CardanoSL.zip -y
	popd & exit /b 1)
    del CardanoSL.zip
popd

move   node_modules\daedalus-client-api\log-config-prod.yaml installers\log-config-prod.yaml
move   node_modules\daedalus-client-api\cardano-node.exe     installers\
move   node_modules\daedalus-client-api\cardano-launcher.exe installers\
del /f node_modules\daedalus-client-api\*.exe

@echo Packaging frontend
call npm run package -- --icon installers/icons/64x64
@if %errorlevel% neq 0 (@echo FAILED: npm run package -- --icon installers/icons/64x64
	exit /b 1)

pushd installers
    @echo Installing stack
    powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('http://www.stackage.org/stack/windows-x86_64', 'stack.zip'); } catch { exit 1; }"
    @if %errorlevel% neq 0 (@echo powershell -Command "try { $wc = New-Object net.webclient; $wc.Downloadfile('http://www.stackage.org/stack/windows-x86_64', 'stack.zip'); } catch { exit 1; }"
	popd & exit /b 1)
    del /f stack.exe
    7z x stack.zip stack.exe
    @if %errorlevel% neq 0 (@echo FAILED: 7z x stack.zip stack.exe
	exit /b 1)
    del stack.zip

    @echo Copying DLLs
    @rem TODO: get rocksdb from rocksdb-haskell
    rmdir /s/q DLLs 2>nul
    mkdir      DLLs
    pushd      DLLs
        powershell -Command "try { wget 'https://s3.eu-central-1.amazonaws.com/cardano-sl-testing/DLLs.zip' -outfile DLLs.zip; } catch { exit 1; }"
        @if %errorlevel% neq 0 (@echo FAILED: powershell -Command "try { wget 'https://s3.eu-central-1.amazonaws.com/cardano-sl-testing/DLLs.zip' -outfile DLLs.zip; } catch { exit 1; }"
		exit /b 1)
        7z x DLLs.zip
        @if %errorlevel% neq 0 (@echo FAILED: 7z x DLLs.zip
		popd & popd & exit /b 1)
        del DLLs.zip
    popd

    @echo Building the installer
    stack setup --no-reinstall
    @if %errorlevel% neq 0 (@echo FAILED: stack setup --no-reinstall
	exit /b 1)

:build
    for /l %%x in (1, 1, 5) do (
        stack --no-terminal build -j 2 --exec make-installer
        @if %errorlevel% equ 0 goto :built

        @echo .
        @echo .
        @echo FAILED: stack --no-terminal build -j 2 --exec make-installer
        @echo .
        @timeout 7
        @echo Retrying -- and also waiting for GHC 8.2.1 [see https://github.com/commercialhaskell/stack/issues/2617]
        @echo .
        @echo .
    )
    @echo FATAL: persistent failure while building installer with:  stack --no-terminal build -j 2 --exec make-installer
    exit /b 1
:built
popd

@echo .
@echo Successfully built Daedalus %DAEDALUS_VERSION%
@echo .
@dir /b/s installers\daedalus*

drop a comment

[DEVOPS-10]  Review:  drop a comment


dotnet test "%~dp0/../src\NJsonSchema.Tests\NJsonSchema.Tests.csproj" -c Release
dotnet test "%~dp0/../src\NJsonSchema.CodeGeneration.Tests\NJsonSchema.CodeGeneration.Tests.csproj" -c Release
dotnet test "%~dp0/../src\NJsonSchema.CodeGeneration.CSharp.Tests\NJsonSchema.CodeGeneration.CSharp.Tests.csproj" -c Release
dotnet test "%~dp0/../src\NJsonSchema.CodeGeneration.TypeScript.Tests\NJsonSchema.CodeGeneration.TypeScript.Tests.csproj" -c Release
dotnet test "%~dp0/../src\NJsonSchema.Yaml.Tests\NJsonSchema.Yaml.Tests.csproj" -c Release

dotnet test "%~dp0/../src\NJsonSchema.Tests\NJsonSchema.Tests.csproj" -c Release || goto :error
dotnet test "%~dp0/../src\NJsonSchema.CodeGeneration.Tests\NJsonSchema.CodeGeneration.Tests.csproj" -c Release || goto :error
dotnet test "%~dp0/../src\NJsonSchema.CodeGeneration.CSharp.Tests\NJsonSchema.CodeGeneration.CSharp.Tests.csproj" -c Release || goto :error
dotnet test "%~dp0/../src\NJsonSchema.CodeGeneration.TypeScript.Tests\NJsonSchema.CodeGeneration.TypeScript.Tests.csproj" -c Release || goto :error
dotnet test "%~dp0/../src\NJsonSchema.Yaml.Tests\NJsonSchema.Yaml.Tests.csproj" -c Release || goto :error

goto :EOF
:error
echo Failed with error #%errorlevel%.
exit /b %errorlevel%

Update 04_RunTests.bat

Update 04_RunTests.bat


@echo off
setlocal EnableDelayedExpansion

REM === Edit these lines to match your need ===

set COMM_PORT=COM1
set COMM_BAUD=9600
set SERV_ADDR=blynk-cloud.com
set SERV_PORT=8442

REM === Edit lines below only if absolutely sure what you're doing ===

rem Get command line options
:loop
IF NOT "%1"=="" (
    IF "%1"=="-c" set COMM_PORT=%2& SHIFT & SHIFT & GOTO :loop
    IF "%1"=="-b" set COMM_BAUD=%2& SHIFT & SHIFT & GOTO :loop
    IF "%1"=="-s" set SERV_ADDR=%2& SHIFT & SHIFT & GOTO :loop
    IF "%1"=="-p" set SERV_PORT=%2& SHIFT & SHIFT & GOTO :loop

    CALL :usage
    GOTO :eof
)

rem Find ports
set PORTS=
for /f "tokens=4 delims=: " %%A in ('mode^|findstr "COM[0-9]*:"') do IF not [%%A] == [] set PORTS=!PORTS! %%A
set PORTS=!PORTS:~1!

rem Check port
if "x!PORTS:%COMM_PORT%=!"=="x%PORTS%" (
    echo %COMM_PORT% not found, or may be busy.
    set /p COMM_PORT="Select serial port [ %PORTS% ]: "
)

rem Create exe
if not exist com2tcp.exe (
    copy com2tcp.bin com2tcp.exe
)

rem Do the job
echo Connecting device at %COMM_PORT% to %SERV_ADDR%:%SERV_PORT%...

rem Try resetting board
rem mode %COMM_PORT%:%COMM_BAUD%,N,8,1 >nul

:restart
  com2tcp --baud %COMM_BAUD% --ignore-dsr \\.\%COMM_PORT% %SERV_ADDR% %SERV_PORT%
  echo Reconnecting in 3s...
  timeout /T 3
goto restart

goto:eof

:usage
    echo.
    echo.   This script redirects serial communication to the server.
    echo.
    echo.   You can specify port, baud rate, and server endpoint like this:
    echo.     blynk-ser.bat -c ^<serial port^> -b ^<baud^> -s ^<server^> -p ^<port^>
    echo.
    echo.   The defaults are:
    echo.     -c    /dev/ttyUSB0       (on Linux)
    echo.           COM1               (on Windows)
    echo.           /dev/tty.usbserial (on OSX)
    echo.     -b    9600
    echo.     -s    blynk-cloud.com
    echo.     -p    8442
    echo.
    echo.   If the specified serial port is not found, it will ask to enter another one.
    echo.   The script also tries to reestablish connection if it was lost.
goto:eof

@echo off
setlocal EnableDelayedExpansion

REM === Edit these lines to match your need ===

set COMM_PORT=COM1
set COMM_BAUD=9600
set SERV_ADDR=blynk-cloud.com
set SERV_PORT=8442

REM === Edit lines below only if absolutely sure what you're doing ===

rem Get command line options
:loop
IF NOT "%1"=="" (
    IF "%1"=="-c" set COMM_PORT=%2& SHIFT & SHIFT & GOTO :loop
    IF "%1"=="-b" set COMM_BAUD=%2& SHIFT & SHIFT & GOTO :loop
    IF "%1"=="-s" set SERV_ADDR=%2& SHIFT & SHIFT & GOTO :loop
    IF "%1"=="-p" set SERV_PORT=%2& SHIFT & SHIFT & GOTO :loop

    CALL :usage
    GOTO :eof
)

rem Find ports
set PORTS=
for /f "tokens=4 delims=: " %%A in ('mode^|findstr "COM[0-9]*:"') do IF not [%%A] == [] set PORTS=!PORTS! %%A
set PORTS=!PORTS:~1!

rem Check port
rem Skip check if no ports at all - Windows bug?
if not "x%PORTS%"=="x~1" (
    if "x!PORTS:%COMM_PORT%=!"=="x%PORTS%" (
        echo %COMM_PORT% not found, or may be busy.
        set /p COMM_PORT="Select serial port [ %PORTS% ]: "
    )
)

rem Create exe
if not exist com2tcp.exe (
    copy com2tcp.bin com2tcp.exe
)

rem Do the job
echo Connecting device at %COMM_PORT% to %SERV_ADDR%:%SERV_PORT%...

rem Try resetting board
rem mode %COMM_PORT%:%COMM_BAUD%,N,8,1 >nul

:restart
  com2tcp --baud %COMM_BAUD% --ignore-dsr \\.\%COMM_PORT% %SERV_ADDR% %SERV_PORT%
  echo Reconnecting in 3s...
  timeout /T 3
goto restart

goto:eof

:usage
    echo.
    echo.   This script redirects serial communication to the server.
    echo.
    echo.   You can specify port, baud rate, and server endpoint like this:
    echo.     blynk-ser.bat -c ^<serial port^> -b ^<baud^> -s ^<server^> -p ^<port^>
    echo.
    echo.   The defaults are:
    echo.     -c    /dev/ttyUSB0       (on Linux)
    echo.           COM1               (on Windows)
    echo.           /dev/tty.usbserial (on OSX)
    echo.     -b    9600
    echo.     -s    blynk-cloud.com
    echo.     -p    8442
    echo.
    echo.   If the specified serial port is not found, it will ask to enter another one.
    echo.   The script also tries to reestablish connection if it was lost.
goto:eof

Update blynk-ser.bat

Update blynk-ser.bat

Fix #75


:: This file is for Windows only.

java -cp .\bin;.\lib\graph.jar;.\lib\gral-core-0.11.jar tsp_plot.MainReadFromFileCoordinates
pause;

:: This file is for Windows only.

java -cp bin;lib\graph.jar;lib\gral-core-0.11.jar tsp_plot.MainReadFromFileCoordinates
pause

Update runMainReadFromFileCoordinates.bat

Minor changes. Remove unneeded "\", "." and ";" characters.


add test helper

add test helper


cd %WORKSPACE%
set PYTHON=c:\python26\python
set EASY_INSTALL=c:\python26\scripts\easy_install.exe
set NEXUSDIR="C:\Program Files (x86)\NeXus Data Format\"
set PATH=c:\python26;c:\mingw\bin;%PATH%

echo %SVN_REVISION%> svn_revision.txt

%PYTHON% check_packages.py

set PYTHONPATH=%WORKSPACE%\sansview-install;%PYTHONPATH%

RD /S /Q sansview-install
MD sansview-install
RD /S /Q dist
RD /S /Q build

%PYTHON% setup.py build -cmingw32
%PYTHON% setup.py bdist_egg --skip-build
cd dist
%EASY_INSTALL% -d ..\sansview-install sasview*.egg

cd %WORKSPACE%\test
%PYTHON% utest_sansview.py

Add jenkins script for windows

Add jenkins script for windows


:: Copyright 2014 The 'mumble-releng' Authors. All rights reserved.
:: Use of this source code is governed by a BSD-style license that
:: can be found in the LICENSE file in the source tree or at
:: <http://mumble.info/mumble-releng/LICENSE>.

:: Dereference the C:\MumbleBuild\latest-1.2.x junction point.
for /F "skip=9 tokens=3" %%M IN ('fsutil reparsepoint query c:\MumbleBuild\latest-1.2.x') DO ^
IF NOT DEFINED MUMBLE_BUILDENV_DIR (SET MUMBLE_BUILDENV_DIR=%%M)

for /F %%G IN ('%MUMBLE_BUILDENV_DIR%\mumble-releng\tools\mumble-version.py') DO SET mumblebuildversion=%%G

call %MUMBLE_BUILDENV_DIR%\prep.cmd
if errorlevel 1 exit /b errorlevel

echo Build mumble
if "%MUMBLE_BUILD_TYPE%" == "Release" (
	qmake CONFIG-=sse2 CONFIG+=packaged DEFINES+="MUMBLE_VERSION=%mumblebuildversion%" -recursive
) else (
	qmake CONFIG-=sse2 CONFIG+=packaged DEFINES+="MUMBLE_VERSION=%mumblebuildversion% SNAPSHOT_BUILD=1" -recursive
)
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel

echo Build SSE2 versions of opus
cd opus-build
qmake -recursive
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel
cd ..

echo Build SSE2 versions of celt 0.11.0
cd celt-0.11.0-build
qmake -recursive
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel
cd ..

echo Build SSE2 versions of celt 0.7.0
cd celt-0.7.0-build
qmake -recursive
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel
cd ..

if "%MUMBLE_DO_PLUGIN_REPLACEMENT" == "1" (
	echo Perform plugin replacement
	"%MUMBLE_PREFIX%\mumble-releng\tools\plugin_replacement.py" --version "%mumblebuildversion%" --repo . release\plugins
)

echo Build installer
SET MumbleNoMergeModuleDir=1
SET MumbleDebugToolsDir=C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
SET MumbleSourceDir=%cd%
SET MumbleQtDir=%MUMBLE_PREFIX%\Qt4.8
SET MumbleSndFileDir=%MUMBLE_PREFIX%\sndfile\bin
SET MumbleMySQLDir=%MUMBLE_PREFIX%\MySQL
SET MumbleIceDir=%MUMBLE_PREFIX%\ZeroC-Ice\bin
SET MumbleOpenSslDir=%MUMBLE_PREFIX%\OpenSSL
SET MumbleZlibDir=%MUMBLE_PREFIX%\zlib\lib
SET MumbleBzip2Dir=%MUMBLE_PREFIX%\bzip2\lib
cd scripts
call mkini-win32.bat
if errorlevel 1 exit /b errorlevel
cd ..\installer
c:\cygwin\bin\sed -ri "s,</Include>,<?define RedistDirVC10 = \"C:\\\\Program Files (x86)\\\\Microsoft Visual Studio 10.0\\\\VC\\\\redist\\\\x86\\\\Microsoft.VC100.CRT\" ?></Include>,g" Settings.wxi
if errorlevel 1 exit /b errorlevel
msbuild  /p:Configuration=Release MumbleInstall.sln /t:Clean,Build
if errorlevel 1 exit /b errorlevel
perl build_installer.pl
if errorlevel 1 exit /b errorlevel
cd bin\Release
rename Mumble.msi "mumble-%mumblebuildversion%.msi"
if errorlevel 1 exit /b errorlevel
cd ..\..\..

if not "%MUMBLE_SKIP_INTERNAL_SIGNING%" == "1" (
	echo Adding build machine's signature to installer
	signtool sign /sm /a "installer/bin/Release/mumble-%mumblebuildversion%.msi"
)

"%MUMBLE_BUILDENV_DIR%\mumble-releng\tools\collect_symbols.py" collect --version "%mumblebuildversion%" --buildtype "%MUMBLE_BUILD_TYPE%" --product "Mumble %MUMBLE_BUILD_ARCH%" release\ symbols.7z
if errorlevel 1 exit /b errorlevel

:: Copyright 2014 The 'mumble-releng' Authors. All rights reserved.
:: Use of this source code is governed by a BSD-style license that
:: can be found in the LICENSE file in the source tree or at
:: <http://mumble.info/mumble-releng/LICENSE>.

:: Dereference the C:\MumbleBuild\latest-1.2.x junction point.
for /F "skip=9 tokens=3" %%M IN ('fsutil reparsepoint query c:\MumbleBuild\latest-1.2.x') DO ^
IF NOT DEFINED MUMBLE_BUILDENV_DIR (SET MUMBLE_BUILDENV_DIR=%%M)

for /F %%G IN ('%MUMBLE_BUILDENV_DIR%\mumble-releng\tools\mumble-version.py') DO SET mumblebuildversion=%%G

call %MUMBLE_BUILDENV_DIR%\prep.cmd
if errorlevel 1 exit /b errorlevel

echo Build mumble
if "%MUMBLE_BUILD_TYPE%" == "Release" (
	qmake CONFIG-=sse2 CONFIG+=packaged DEFINES+="MUMBLE_VERSION=%mumblebuildversion%" -recursive
) else (
	qmake CONFIG-=sse2 CONFIG+=packaged DEFINES+="MUMBLE_VERSION=%mumblebuildversion% SNAPSHOT_BUILD=1" -recursive
)
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel

echo Build SSE2 versions of opus
cd opus-build
qmake -recursive
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel
cd ..

echo Build SSE2 versions of celt 0.11.0
cd celt-0.11.0-build
qmake -recursive
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel
cd ..

echo Build SSE2 versions of celt 0.7.0
cd celt-0.7.0-build
qmake -recursive
if errorlevel 1 exit /b errorlevel
nmake release
if errorlevel 1 exit /b errorlevel
cd ..

if "%MUMBLE_DO_PLUGIN_REPLACEMENT" == "1" (
	echo Perform plugin replacement
	"%MUMBLE_PREFIX%\mumble-releng\tools\plugin_replacement.py" --version "%mumblebuildversion%" --repo . release\plugins
)

echo Build installer
SET MumbleNoMergeModule=1
SET MumbleDebugToolsDir=C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE
SET MumbleSourceDir=%cd%
SET MumbleQtDir=%MUMBLE_PREFIX%\Qt4.8
SET MumbleSndFileDir=%MUMBLE_PREFIX%\sndfile\bin
SET MumbleMySQLDir=%MUMBLE_PREFIX%\MySQL
SET MumbleIceDir=%MUMBLE_PREFIX%\ZeroC-Ice\bin
SET MumbleOpenSslDir=%MUMBLE_PREFIX%\OpenSSL
SET MumbleZlibDir=%MUMBLE_PREFIX%\zlib\lib
SET MumbleBzip2Dir=%MUMBLE_PREFIX%\bzip2\lib
cd scripts
call mkini-win32.bat
if errorlevel 1 exit /b errorlevel
cd ..\installer
c:\cygwin\bin\sed -ri "s,</Include>,<?define RedistDirVC10 = \"C:\\\\Program Files (x86)\\\\Microsoft Visual Studio 10.0\\\\VC\\\\redist\\\\x86\\\\Microsoft.VC100.CRT\" ?></Include>,g" Settings.wxi
if errorlevel 1 exit /b errorlevel
msbuild  /p:Configuration=Release MumbleInstall.sln /t:Clean,Build
if errorlevel 1 exit /b errorlevel
perl build_installer.pl
if errorlevel 1 exit /b errorlevel
cd bin\Release
rename Mumble.msi "mumble-%mumblebuildversion%.msi"
if errorlevel 1 exit /b errorlevel
cd ..\..\..

if not "%MUMBLE_SKIP_INTERNAL_SIGNING%" == "1" (
	echo Adding build machine's signature to installer
	signtool sign /sm /a "installer/bin/Release/mumble-%mumblebuildversion%.msi"
)

"%MUMBLE_BUILDENV_DIR%\mumble-releng\tools\collect_symbols.py" collect --version "%mumblebuildversion%" --buildtype "%MUMBLE_BUILD_TYPE%" --product "Mumble %MUMBLE_BUILD_ARCH%" release\ symbols.7z
if errorlevel 1 exit /b errorlevel

buildscripts/1.2.x/mumble-win32.cmd: use MumbleNoMergeModule instead of MumbleNoMergeModuleDir.

The installer as always used "MumbleNoMergeNodule".

Without this change, the resulting installer will include both:

 - Individual MSVCRT DLLs
 - Merge modules for the MSVCRT DLLs

Merge modules are problematic, because they often cause "files in use"
warnings from the Windows Installer.

With this change in place, we simply bundle the MSVCRT DLLs,
and forego the merge modules, just as initially intended.


:: Terminal API
::
:: This file is called whenever a user enters a shell.
::
:: Dependencies:
::  - pyblish-base
::  - pyblish-maya
::  - pyblish-nuke
::  - pyblish-houdini
::  - pyblish-lite
::  - pyblish-qml
::  - pyblish-mindbender
::
:: Usage:
:: 	1. Create a local `mb.bat` file and set the required environment variables
::  2. Call your `mb.bat`
::
:: Example:
::   $ mb

@echo off

if "%1"=="" goto :usage

:: External Dependencies
if "%PYBLISH_BASE%"=="" goto :missing
if "%PYBLISH_MAYA%"=="" goto :missing
if "%PYBLISH_NUKE%"=="" goto :missing
if "%PYBLISH_LITE%"=="" goto :missing
if "%PYBLISH_QML%"=="" goto :missing
if "%MINDBENDER_CORE%"=="" goto :missing
:: if "%PYBLISH_USERNAME%"=="" goto :missing

:: Clear environment.
::
:: This is IMPORTANT, if one is to attempt at running
:: an application or task from the same shell more than once.
set PYTHONPATH=
set PYBLISHPLUGINPATH=

set PYTHONPATH=%PYBLISH_BASE%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_MAYA%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_NUKE%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_LITE%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_QML%;%PYTHONPATH%
set PYTHONPATH=%MINDBENDER_CORE%;%PYTHONPATH%

set PROJECTS=%1

:: Expose pipeline executables
set PYTHONPATH=%MAYA_SCRIPT_PATH%;%PYTHONPATH%
set PATH=%MINDBENDER_CORE%\bin;%PATH%
set PYBLISHPLUGINPATH=%MINDBENDER_CORE%\mindbender\plugins;%PYBLISHPLUGINPATH%

:: --------------------
:: User interface
:: --------------------

:: Use $ as prefix to prompt commands
:: The default PROMPT is the current working directory,
:: which can make it look a little daunting due to its length.
set PROMPT=$$

:: Go to projects directory
pushd %PROJECTS%

:: Clear screen
title Mindbender Launcher
cls

:: Print intro
echo+
echo  MEINDBENDER START ---------------------------
echo+
echo+
echo                 _,--,
echo              .-'---./_    __
echo             /o \\     '-.' /
echo             \  //    _.-'._\
echo              `"\)--"`
echo+
echo+
echo   Welcome %USERNAME%!
echo+
echo   1. Type first characters of a project, e.g. "p999_"
echo   2. Press TAB to cycle through matching projects
echo   3. Press SPACE and specify whether to enter "assets" or "film"
echo+
echo  ---------------------------------------------
echo+

:: Clearing old Variables
SET PROJECTDIR=
SET ASSET=

:: Open a persistent shell
cmd.exe /K

goto :eof

:usage
	echo Not enough arguments
	echo Example: mb.bat c:\path\to\projects

:missing
	echo ERROR: Missing environment variables.
	if "%PYBLISH_BASE%"=="" echo   - %%PYBLISH_BASE%%
	if "%PYBLISH_MAYA%"=="" echo   - %%PYBLISH_MAYA%%
	if "%PYBLISH_NUKE%"=="" echo   - %%PYBLISH_NUKE%%
	if "%PYBLISH_LITE%"=="" echo   - %%PYBLISH_LITE%%
	if "%PYBLISH_QML%"=="" echo   - %%PYBLISH_QML%%
	if "%MINDBENDER_CORE%"=="" echo   - %%MINDBENDER_CORE%%
::	if "%PYBLISH_USERNAME%"=="" echo   - %%PYBLISH_USERNAME%%

	exit /b

:: Terminal API
::
:: This file is called whenever a user enters a shell.
::
:: Dependencies:
::  - pyblish-base
::  - pyblish-maya
::  - pyblish-nuke
::  - pyblish-houdini
::  - pyblish-lite
::  - pyblish-qml
::  - pyblish-mindbender
::
:: Usage:
:: 	1. Create a local `mb.bat` file and set the required environment variables
::  2. Call your `mb.bat`
::
:: Example:
::   $ mb

@echo off

if "%1"=="" goto :usage

:: External Dependencies
if "%PYBLISH_BASE%"=="" goto :missing
if "%PYBLISH_MAYA%"=="" goto :missing
if "%PYBLISH_NUKE%"=="" goto :missing
if "%PYBLISH_LITE%"=="" goto :missing
if "%PYBLISH_QML%"=="" goto :missing
if "%MINDBENDER_CORE%"=="" goto :missing
if "%PYBLISH_USERNAME%"=="" goto :missing

:: Clear environment.
::
:: This is IMPORTANT, if one is to attempt at running
:: an application or task from the same shell more than once.
set PYTHONPATH=
set PYBLISHPLUGINPATH=

set PYTHONPATH=%PYBLISH_BASE%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_MAYA%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_NUKE%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_LITE%;%PYTHONPATH%
set PYTHONPATH=%PYBLISH_QML%;%PYTHONPATH%
set PYTHONPATH=%MINDBENDER_CORE%;%PYTHONPATH%

set PROJECTS=%1

:: Expose pipeline executables
set PYTHONPATH=%MAYA_SCRIPT_PATH%;%PYTHONPATH%
set PATH=%MINDBENDER_CORE%\bin;%PATH%
set PYBLISHPLUGINPATH=%MINDBENDER_CORE%\mindbender\plugins;%PYBLISHPLUGINPATH%

:: --------------------
:: User interface
:: --------------------

:: Use $ as prefix to prompt commands
:: The default PROMPT is the current working directory,
:: which can make it look a little daunting due to its length.
set PROMPT=$$

:: Go to projects directory
pushd %PROJECTS%

:: Clear screen
title Mindbender Launcher
cls

:: Print intro
echo+
echo  MEINDBENDER START ---------------------------
echo+
echo+
echo                 _,--,
echo              .-'---./_    __
echo             /o \\     '-.' /
echo             \  //    _.-'._\
echo              `"\)--"`
echo+
echo+
echo   Welcome %USERNAME%!
echo+
echo   1. Type first characters of a project, e.g. "p999_"
echo   2. Press TAB to cycle through matching projects
echo   3. Press SPACE and specify whether to enter "assets" or "film"
echo+
echo  ---------------------------------------------
echo+

:: Clearing old Variables
SET PROJECTDIR=
SET ASSET=

:: Open a persistent shell
cmd.exe /K

goto :eof

:usage
	echo Not enough arguments
	echo Example: mb.bat c:\path\to\projects

:missing
	echo ERROR: Missing environment variables.
	if "%PYBLISH_BASE%"=="" echo   - %%PYBLISH_BASE%%
	if "%PYBLISH_MAYA%"=="" echo   - %%PYBLISH_MAYA%%
	if "%PYBLISH_NUKE%"=="" echo   - %%PYBLISH_NUKE%%
	if "%PYBLISH_LITE%"=="" echo   - %%PYBLISH_LITE%%
	if "%PYBLISH_QML%"=="" echo   - %%PYBLISH_QML%%
	if "%MINDBENDER_CORE%"=="" echo   - %%MINDBENDER_CORE%%
	if "%PYBLISH_USERNAME%"=="" echo   - %%PYBLISH_USERNAME%%

	exit /b

update to get correct username

update to get correct username


@echo off
setlocal

REM Copyright (c) 2013 The WebM project authors. All Rights Reserved.
REM
REM Use of this source code is governed by a BSD-style license
REM that can be found in the LICENSE file in the root of the source
REM tree. An additional intellectual property rights grant can be found
REM in the file PATENTS.  All contributing project authors may
REM be found in the AUTHORS file in the root of the source tree.

REM Generates webmlive MSVC projects. Note that GYP uses settings in the
REM environment to control project file generation, and that they're going
REM to be overridden here to force output of projects and solutions for
REM multiple versions of MSVC.

REM Make sure we are in the right place.
IF NOT %~0==tools\generate_msvc_projects.bat (
  echo This script must be run from your webmlive root.
  REM Windows helpfully defines error code 10: ERROR_BAD_ENVIRONMENT
  exit /B 10
)

REM Make sure GYP is defined, and that it points at a file that exists.
IF NOT DEFINED GYP (
  CALL :die "GYP environment variable not defined"
)
IF NOT EXIST %GYP% (
  CALL :die "%GYP% does not exist"
)

set PERL=perl.exe
REM Make sure perl.exe is in PATH and exists, since it's required.
for %%X in (%PERL%) do (set PERL_FOUND=%%~$PATH:X)
if NOT defined PERL_FOUND (
  CALL :die "%PERL% must be in your PATH"
)

set original_dir=%cd%
set dshow_name="direct_show_base_classes"
set encoder_name="client_encoder"

REM Make sure only MSVC projects are generated-- not supporting ninja
REM in webmlive, for example.
set GYP_GENERATORS=msvs

REM Remove existing files
del client_encoder\*.vcproj
del client_encoder\*.vcxproj
del client_encoder\*.vcxproj.filters
del client_encoder\*.sln
del client_encoder\win\*.vcproj
del client_encoder\win\*.vcxproj
del client_encoder\win\*.vcxproj.filters
del client_encoder\win\*.sln

REM TODO(tomfinegan): Move duped code into a function(s).

REM
REM Generate the MSVC 2008 projects and solutions.
REM
set GYP_MSVS_VERSION=2008
chdir client_encoder

REM Generate the projects and solutions.
CALL %GYP%

REM Rename the client_encoder files.
CALL :RenameMSVCFiles %encoder_name% 2008 vcproj
CALL :RenameMSVCFiles %encoder_name% 2008 sln

REM Correct project file names in the client_encoder solution file.
%PERL% -pi.orig -e "s/.vcproj/_2008.vcproj/g" %renamed_file%
REM A backup file is stored because in place edits seem to trigger
REM permissions issues on Win 7. Delete it.
del %renamed_file%.orig

REM Do the same for the direct_show_base_classes standalone solution.
chdir win
CALL :RenameMSVCFiles %dshow_name% 2008 vcproj
CALL :RenameMSVCFiles %dshow_name% 2008 sln
%PERL% -pi.orig -e "s/.vcproj/_2008.vcproj/g" %renamed_file%
del %renamed_file%.orig

REM
REM Generate the MSVC 2010 project and solutions.
REM
set GYP_MSVS_VERSION=2010
chdir %original_dir%\client_encoder

REM Generate the projects and solutions.
CALL %GYP%

REM Rename the client_encoder files, and patch references to the vcxproj.
CALL :RenameMSVCFiles %encoder_name% 2010 vcxproj
%PERL% -pi.orig -e "s/.vcxproj/_2010.vcxproj/g" %renamed_file%
del %renamed_file%.orig
CALL :RenameMSVCFiles %encoder_name% 2010 sln
%PERL% -pi.orig -e "s/.vcxproj/_2010.vcxproj/g" %renamed_file%
del %renamed_file%.orig

REM Do the same for the direct_show_base_classes standalone solution.
chdir win
CALL :RenameMSVCFiles %dshow_name% 2010 vcxproj
CALL :RenameMSVCFiles %dshow_name% 2010 sln
%PERL% -pi.orig -e "s/.vcxproj/_2010.vcxproj/g" %renamed_file%
del %renamed_file%.orig

chdir %original_dir%
echo Done.
goto :EOF

REM Utility function used to rename project and solution files so that
REM their names contain the year of the MSVC release they are intended
REM for use within.
:RenameMSVCFiles
  set name=%~1
  set year=%~2
  set ext=%~3
  set original=%name%.%ext%
  set renamed=%name%_%year%.%ext%
  rename %original% %renamed%
  endlocal & set renamed_file=%renamed%
  IF NOT EXIST %renamed_file% (
    CALL :die "%renamed_file% does not exist"
  )
goto :EOF

:die
  set message=%~1
  IF NOT ""=="%message%" (
    echo ERROR: %message%, giving up.
  ) ELSE (
    echo ERROR: unspecified error, giving up.
  )
  endlocal
  echo Ignore the syntax error: it's how this script kills itself.
  () creates syntax error, and terminates script.
goto :EOF

Add project generation script.

Add project generation script.

Change-Id: I9f02d3d22150a0db67c13a77444f4e459791771a


java -jar Collate-TUI.jar collate from src/main to collated/main include java, fxml, css

java -jar Collate-TUI.jar collate from src/test to collated/test include java

java -jar Collate-TUI.jar collate from unused to collated/unused include java, fxml, css

Add EOF in collate.bat

Add EOF in collate.bat


REM use pre-compiled executable for windows
mkdir %PREFIX%\bin

CD chargemol_FORTRAN_09_26_2017
CD sourcecode_windows_command_line

%FC% %FFLAGS% -fopenmp -o Chargemol_09_26_2017_windows_parallel Chargemol_09_26_2017_linux_parallel ^
  module_precision.f08 ^
  module_global_parameters.f08 ^
  module_common_variable_declarations.f08 ^
  module_quote.f08 ^
  module_string_utilities.f08 ^
  module_matrix_operations.f08 ^
  module_reshaping_functions.f08 ^
  module_CM5_parameters.f08 ^
  module_calculate_atomic_polarizabilities_upper_bound.f08 ^
  module_read_job_control.f08 ^
  module_read_wfx.f08 ^
  module_gaussian_functions.f08 ^
  module_compute_CM5.f08 ^
  module_check_atomic_reference_polarizabilities_available.f08 ^
  module_charge_center_positions_and_parallelpiped.f08 ^
  module_generate_kApoints_kBpoints_kCpoints.f08 ^
  module_check_grid_spacing.f08 ^
  module_add_missing_core_density.f08 ^
  module_oxidation_density.f08 ^
  module_initialize_atomic_densities.f08 ^
  module_align_periodic_atoms.f08 ^
  module_read_spin_density_cube_files.f08 ^
  module_format_valence_and_total_cube_densities.f08 ^
  module_format_valence_cube_density.f08 ^
  module_format_total_cube_density.f08 ^
  module_format_xsf_densities.f08 ^
  module_check_noncollinear_XC_functional.f08 ^
  module_gen_dens_grids_from_gaussian_basis_set_coeff.f08 ^
  module_atomic_symbol_to_number.f08 ^
  module_compute_dominant_atom_volumes.f08 ^
  module_format_vasp_densities.f08 ^
  module_run_valence_core_densities.f08 ^
  module_core_iterator.f08 ^
  module_local_multipole_moment_analysis.f08 ^
  module_update_atomic_densities.f08 ^
  module_DDEC3_valence_iterator.f08 ^
  module_DDEC6_valence_iterator.f08 ^
  module_compute_center_of_mass.f08 ^
  module_total_multipole_moment_analysis.f08 ^
  module_cloud_penetration.f08 ^
  module_atomic_number_to_symbol.f08 ^
  module_generate_atomic_polarizability_upper_bound_file.f08 ^
  module_generate_net_atomic_charge_file.f08 ^
  module_spin_functions.f08 ^
  module_generate_atomic_spin_moment_file.f08 ^
  module_collinear_spin_moments_iterator.f08 ^
  module_noncollinear_spin_moments_iterator.f08 ^
  module_generate_bond_order_file.f08 ^
  module_determine_whether_pair_overlap_is_significant.f08 ^
  module_calculate_final_BOs.f08 ^
  module_integrate_bonding_terms.f08 ^
  module_initialize_bond_pair_matrix.f08 ^
  module_compute_local_atomic_exchange_vectors.f08 ^
  module_prepare_BO_density_grids.f08 ^
  module_perform_bond_order_analysis.f08 ^
  module_compute_atomic_radial_moments.f08 ^
  module_print_overlap_populations.f08 ^
  module_print_atomic_densities_file.f08 ^
  chargemol.f08

COPY Chargemol_09_26_2017_windows_parallel %PREFIX%\bin\chargemol.exe
REM COPY chargemol_FORTRAN_09_26_2017\compiled_binaries\windows\Chargemol_09_26_2017_windows_64bits_parallel_GUI.exe %PREFIX%\bin\chargemol_gui.exe
REM COPY chargemol_FORTRAN_09_26_2017\compiled_binaries\windows\pthreadGC2-64.dll %PREFIX%\bin

CD ..
CD ..

REM install atomic densities directory
mkdir %PREFIX%\share
mkdir %PREFIX%\share\chargemol
XCOPY atomic_densities %PREFIX%\share\chargemol /s /e /y

REM use pre-compiled executable for windows
mkdir %PREFIX%\bin

CD chargemol_FORTRAN_09_26_2017
CD sourcecode_windows_command_line

flang.exe -fopenmp -o Chargemol_09_26_2017_windows_parallel ^
  module_precision.f08 ^
  module_global_parameters.f08 ^
  module_common_variable_declarations.f08 ^
  module_quote.f08 ^
  module_string_utilities.f08 ^
  module_matrix_operations.f08 ^
  module_reshaping_functions.f08 ^
  module_CM5_parameters.f08 ^
  module_calculate_atomic_polarizabilities_upper_bound.f08 ^
  module_read_job_control.f08 ^
  module_read_wfx.f08 ^
  module_gaussian_functions.f08 ^
  module_compute_CM5.f08 ^
  module_check_atomic_reference_polarizabilities_available.f08 ^
  module_charge_center_positions_and_parallelpiped.f08 ^
  module_generate_kApoints_kBpoints_kCpoints.f08 ^
  module_check_grid_spacing.f08 ^
  module_add_missing_core_density.f08 ^
  module_oxidation_density.f08 ^
  module_initialize_atomic_densities.f08 ^
  module_align_periodic_atoms.f08 ^
  module_read_spin_density_cube_files.f08 ^
  module_format_valence_and_total_cube_densities.f08 ^
  module_format_valence_cube_density.f08 ^
  module_format_total_cube_density.f08 ^
  module_format_xsf_densities.f08 ^
  module_check_noncollinear_XC_functional.f08 ^
  module_gen_dens_grids_from_gaussian_basis_set_coeff.f08 ^
  module_atomic_symbol_to_number.f08 ^
  module_compute_dominant_atom_volumes.f08 ^
  module_format_vasp_densities.f08 ^
  module_run_valence_core_densities.f08 ^
  module_core_iterator.f08 ^
  module_local_multipole_moment_analysis.f08 ^
  module_update_atomic_densities.f08 ^
  module_DDEC3_valence_iterator.f08 ^
  module_DDEC6_valence_iterator.f08 ^
  module_compute_center_of_mass.f08 ^
  module_total_multipole_moment_analysis.f08 ^
  module_cloud_penetration.f08 ^
  module_atomic_number_to_symbol.f08 ^
  module_generate_atomic_polarizability_upper_bound_file.f08 ^
  module_generate_net_atomic_charge_file.f08 ^
  module_spin_functions.f08 ^
  module_generate_atomic_spin_moment_file.f08 ^
  module_collinear_spin_moments_iterator.f08 ^
  module_noncollinear_spin_moments_iterator.f08 ^
  module_generate_bond_order_file.f08 ^
  module_determine_whether_pair_overlap_is_significant.f08 ^
  module_calculate_final_BOs.f08 ^
  module_integrate_bonding_terms.f08 ^
  module_initialize_bond_pair_matrix.f08 ^
  module_compute_local_atomic_exchange_vectors.f08 ^
  module_prepare_BO_density_grids.f08 ^
  module_perform_bond_order_analysis.f08 ^
  module_compute_atomic_radial_moments.f08 ^
  module_print_overlap_populations.f08 ^
  module_print_atomic_densities_file.f08 ^
  chargemol.f08

COPY Chargemol_09_26_2017_windows_parallel %PREFIX%\bin\chargemol.exe
REM COPY chargemol_FORTRAN_09_26_2017\compiled_binaries\windows\Chargemol_09_26_2017_windows_64bits_parallel_GUI.exe %PREFIX%\bin\chargemol_gui.exe
REM COPY chargemol_FORTRAN_09_26_2017\compiled_binaries\windows\pthreadGC2-64.dll %PREFIX%\bin

CD ..
CD ..

REM install atomic densities directory
mkdir %PREFIX%\share
mkdir %PREFIX%\share\chargemol
XCOPY atomic_densities %PREFIX%\share\chargemol /s /e /y

fix compiler name

fix compiler name


:: Build tcplotter command-line utilities using cmake

:: Change working directory to archive directory
cd "%PKG_NAME%"

:: Create build directory
cd "src"
mkdir build
if errorlevel 1 exit 1
cd build
if errorlevel 1 exit 1

:: Build with cmake
cmake -G "MinGW Makefiles" -D CMAKE_CXX_STANDARD=11 -D CMAKE_INSTALL_PREFIX=%PREFIX% ..
if errorlevel 1 exit 1
cmake --build .
if errorlevel 1 exit 1

:: Install executables to bin directory
cmake --build . --target install
if errorlevel 1 exit 1

:: Install tcplotter
cd "%SRC_DIR%"
$PYTHON -m pip install . -vv

:: Build tcplotter command-line utilities using cmake

:: Change working directory to archive directory
cd "%PKG_NAME%"

:: Create build directory
cd "src"
mkdir build
if errorlevel 1 exit 1
cd build
if errorlevel 1 exit 1

:: Build with cmake
cmake -G "MinGW Makefiles" -D CMAKE_CXX_STANDARD=11 -D CMAKE_INSTALL_PREFIX=%PREFIX% ..
if errorlevel 1 exit 1
cmake --build .
if errorlevel 1 exit 1

:: Install executables to bin directory
cmake --build . --target install
if errorlevel 1 exit 1

:: Install tcplotter
cd "%SRC_DIR%"
%PYTHON% -m pip install . -vv

Fix typo for Windows build

Fix typo for Windows build


PATH=C:\python26;C:\progra~1\7-zip;C:\progra~2\7-zip;%PATH%
rmdir /q /s dist\*.*
del /s /q dist\*.*
python setup.py py2exe
cd dist
#7z d namebench.zip jinja2\* dns\* 'graphy\*
7z d namebench.zip tcl\*.*
rmdir /s /q tcl\tcl8.5\tzdata tcl\tk8.5\demos
del tcl\tk8.5\images\*.eps
copy ..\README.txt .
7z a namebench_for_Windows.zip -r * >nul
namebench -x -O 8.8.8.8 -t5 -o test.html
start test.html

cd ..

rem Tool to assemble Windows builds
rem Requirements are 7-zip, py2exe, and FreeExtractor

PATH=C:\python27;C:\python26;C:\progra~1\7-zip;C:\progra~2\7-zip;%PATH%

rem ****** Clean out the old junk
rmdir /q /s dist\*.*
del /s /q dist\*.*

rem ****** Compile our executable and core zipfile
python setup.py py2exe

rem ****** Remove extras from core zipfile
cd dist
7z d namebench.zip tcl\*.*
rmdir /s /q tcl\tcl8.5\tzdata tcl\tk8.5\demos
del tcl\tk8.5\images\*.eps

rem ****** Final assembly of zipfile
copy ..\README.txt .
7z a namebench_for_Windows.zip -r * >nul

rem ****** Test assembled zipfile
namebench -x -O 8.8.8.8 -q5 -o test.html
start test.html

cd ..

Add comments to release_win.bat

Add comments to release_win.bat


@if defined ECHO (echo %ECHO%) else (echo off)
REM
REM Builds everything and drops it into the Build folder.
REM You may specify additional arguments for MetaBuild also.
REM
"%~dp0tools\MetaBuild\bin\MetaBuild.bat" /rootdir "%~dp0." /metabuildconfig "%~dp0bin\MetaBuild.config.custom" %*

@if defined ECHO (echo %ECHO%) else (echo off)
REM
REM Builds everything and drops it into the Build folder.
REM You may specify additional arguments for MetaBuild also.
REM
"%~dp0tools\MetaBuild\bin\MetaBuild.bat" /rootdir "%~dp0" /metabuildconfig "%~dp0bin\MetaBuild.config.custom" %*

Revert previous change. Bug is actually elsewhere.


echo off
title Run Build to Project DOTNET
cls

@rem Define project name
set PROJECTMAINPATH=CIUniversalWindows.sln
set PROJECTTESTPATH=Tests\bin\x64\Release\Tests.dll

echo Start Build!

@rem ---------------------- {DEFINE PATH TO MSBUILD} ----------------------
@rem Add path to MSBuild Binaries
@rem Example C:\Program Files (x86)\MSBuild\14.0\Bin
@rem download the msbuild and install [en_visual_studio_enterprise_2015_x86_x64_dvd_6850497; select all features]
set MSBUILDPATH=C:\Program Files (x86)\MSBuild\14.0\Bin
@if exist "%MSBUILDPATH%" set PATH=%MSBUILDPATH%;%PATH%

@rem ---------------------- {DEFINE PATH TO NUGET} ----------------------
@rem Add path to Nuget Binaries
@rem Example C:\Program Files\Nuget
@rem download the nuget to the folder above or anywhere and set bellow [https://docs.nuget.org/consume/installing-nuget]
set NUGETPATH=C:\Program Files\Nuget
@if exist "%NUGETPATH%" set PATH=%NUGETPATH%;%PATH%

@rem ---------------------- {DEFINE PATH TO NUNIT} ----------------------
@rem Add path to NUnit Binaries
@rem Example C:\Program Files (x86)\NUnit 2.6.4\bin
@rem download the nunit and install [http://nunit.org/?p=download]
set NUNITPATH=C:\Program Files (x86)\NUnit 2.6.4\bin
@if exist "%NUNITPATH%" set PATH=%NUNITPATH%;%PATH%

@rem ------------------- { SHOW ENVIRONMENT VARIABLE} ------------------
echo [!] Show environment variables
echo.
echo MSBUILD - [%MSBUILDPATH%]
echo.
echo NUGET - [%NUGETPATH%]
echo.
echo NUNIT - [%NUNITPATH%]
echo.
echo PATH - [%PATH%]
echo.
echo.
@rem --------------------------------------------------------------------

@rem ---------------------------- {RUN NUGET} ----------------------------
@rem Execute nuget
echo Executing Nuget with command [nuget restore %PROJECTMAINPATH%] ...
@rem nuget restore %PROJECTMAINPATH%
echo Nuget done.
echo.
echo.

@rem ---------------------------- {RUN MSBUILD} ---------------------------
@rem Execute msbuild
echo Executing MSBuild with command [msbuild %PROJECTMAINPATH% /m /t:Clean;Rebuild /p:Configuration=Release;Platform=x64] ...
msbuild %PROJECTMAINPATH% /m /t:Clean;Rebuild /p:Configuration=Release;Platform=x64
echo MSBuild done.
echo.
echo.

@rem ---------------------------- {RUN NUNIT} -----------------------------
@rem Execute nunit-console
echo Executing NUnit with command [nunit-console %PROJECTTESTPATH%]
nunit-console %PROJECTTESTPATH%
echo Nunit done.
echo.
echo.

echo Build done.

echo off
title Run Build to Project DOTNET
cls

@rem Define project name
set PROJECTMAINPATH=CIUniversalWindows.sln
set PROJECTTESTPATH=Tests\bin\x64\Release\Tests.dll

echo Start Build!

@rem ---------------------- {DEFINE PATH TO MSBUILD} ----------------------
@rem Add path to MSBuild Binaries
@rem Example C:\Program Files (x86)\MSBuild\14.0\Bin
@rem download the msbuild and install [en_visual_studio_enterprise_2015_x86_x64_dvd_6850497; select all features]
set MSBUILDPATH=C:\Program Files (x86)\MSBuild\14.0\Bin
@if exist "%MSBUILDPATH%" set PATH=%MSBUILDPATH%;%PATH%

@rem ---------------------- {DEFINE PATH TO NUGET} ----------------------
@rem Add path to Nuget Binaries
@rem Example C:\Program Files\Nuget
@rem download the nuget to the folder above or anywhere and set bellow [https://docs.nuget.org/consume/installing-nuget]
set NUGETPATH=C:\Program Files\Nuget
@if exist "%NUGETPATH%" set PATH=%NUGETPATH%;%PATH%

@rem ---------------------- {DEFINE PATH TO NUNIT} ----------------------
@rem Add path to NUnit Binaries
@rem Example C:\Program Files (x86)\NUnit 2.6.4\bin
@rem download the nunit and install [http://nunit.org/?p=download]
set NUNITPATH=C:\Program Files (x86)\NUnit 2.6.4\bin
@if exist "%NUNITPATH%" set PATH=%NUNITPATH%;%PATH%

@rem ------------------- { SHOW ENVIRONMENT VARIABLE} ------------------
echo [!] Show environment variables
echo.
echo MSBUILD - [%MSBUILDPATH%]
echo.
echo NUGET - [%NUGETPATH%]
echo.
echo NUNIT - [%NUNITPATH%]
echo.
echo PATH - [%PATH%]
echo.
echo.
@rem --------------------------------------------------------------------

@rem ---------------------------- {RUN NUGET} ----------------------------
@rem Execute nuget
echo Executing Nuget with command [nuget restore %PROJECTMAINPATH%] ...
nuget restore %PROJECTMAINPATH%
echo Nuget done.
echo.
echo.

@rem ---------------------------- {RUN MSBUILD} ---------------------------
@rem Execute msbuild
echo Executing MSBuild with command [msbuild %PROJECTMAINPATH% /m /t:Clean;Rebuild /p:Configuration=Release;Platform=x64] ...
msbuild %PROJECTMAINPATH% /m /t:Clean;Rebuild /p:Configuration=Release;Platform=x64
echo MSBuild done.
echo.
echo.

@rem ---------------------------- {RUN NUNIT} -----------------------------
@rem Execute nunit-console
echo Executing NUnit with command [nunit-console %PROJECTTESTPATH%]
nunit-console %PROJECTTESTPATH%
echo Nunit done.
echo.
echo.

echo Build done.

Add nuget exec

Add nuget exec


setlocal

set SOURCE_DIR=%CD%
set BUILD_DIR=%CD%\cppbuild\Release

if EXIST %BUILD_DIR% rd /S %BUILD_DIR%

md %BUILD_DIR%
pushd %BUILD_DIR%

cmake -G "Visual Studio 12 Win64" %SOURCE_DIR%
#start aeron.sln
cmake --build . --clean-first
ctest -C Release

@echo off
setlocal

set SOURCE_DIR=%CD%
set BUILD_DIR=%CD%\cppbuild\Release

if EXIST %BUILD_DIR% rd /S %BUILD_DIR%

md %BUILD_DIR%
pushd %BUILD_DIR%

cmake -G "Visual Studio 12 Win64" %SOURCE_DIR%
#start aeron.sln
cmake --build . --clean-first --config Release
ctest -C Release

fix for build type for Windows

[C++]: fix for build type for Windows


@echo off

cd ..\
mkdir xpiks-deps
cd xpiks-deps

git init
git remote add origin https://bitbucket.org/ribtoks/xpiks-deps.git

git fetch --depth=30 origin master
git merge 76c80a64ff15d6f67cabf37e4120d1a0c19a5e31

@echo off
rem fake submodule (exists only for appveyor tests)

cd ..\

git clone --depth=10 --branch=vs2015 https://bitbucket.org/ribtoks/xpiks-deps.git

cd xpiks-deps

git checkout 63b951d437c7b652c7bcefcd117d7d23724de4f3

Fix xpks for tests

Fix xpks for tests


:: build-windows-toolchain.bat
::
:: This source file is part of the Swift.org open source project
::
:: Copyright (c) 2014 - 2021 Apple Inc. and the Swift project authors
:: Licensed under Apache License v2.0 with Runtime Library Exception
::
:: See https://swift.org/LICENSE.txt for license information
:: See https://swift.org/CONTRIBUTORS.txt for the list of Swift project authors

Create build-windows-toolchain.bat

Create build-windows-toolchain.bat


set dir_root=%~dp0\..\
pushd %dir_root%
set dir_root=%CD%
popd

echo %dir_root%

rmdir /s /q^
  %dir_root%\pages\js^
  %dir_root%\pages\css^
  %dir_root%\pages\img^
  %dir_root%\pages\lib^
  %dir_root%\pages\templates

del %dir_root%\index.html

robocopy /s %dir_root%\www %dir_root%\pages

del %dir_root%\pages\.buttlerc

pushd %dir_root%\pages
git commit -a -m "Publish pages"
git push origin gh-pages
popd

Add script for publishing gh-pages

Add script for publishing gh-pages


:::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Monteverdi launcher to set up proper GDAL environment
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: Get the directory of the current script
@set CURRENT_SCRIPT_DIR=%~dp0

:: Set GDAL_DATA env. variable
@set GDAL_DATA=%CURRENT_SCRIPT_DIR%..\share\gdal

:: Set current dir to HOME dir because Monteverdi generates temporary files and need write access
@cd %HOMEDRIVE%%HOMEPATH%

:: Start Monteverdi
@"%CURRENT_SCRIPT_DIR%monteverdi2.exe"

:::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:: Monteverdi launcher to set up proper GDAL environment
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::

:: Get the directory of the current script
@set CURRENT_SCRIPT_DIR=%~dp0

:: Set GDAL_DATA env. variable
@set GDAL_DATA=%CURRENT_SCRIPT_DIR%..\share\gdal

:: Set current dir to HOME dir because Monteverdi generates temporary files and need write access
@cd %HOMEDRIVE%%HOMEPATH%

:: Start Monteverdi
@start "Monteverdi" /B "%CURRENT_SCRIPT_DIR%monteverdi2.exe" %*

ENH: remove command line from package script launcher


mvn clean jacoco:prepare-agent verify jacoco:report -Dmaven.javadoc.failOnError=false -s dev\settings-sonarqube.xml %*

mvn clean jacoco:prepare-agent verify jacoco:report sonar:sonar -Dmaven.javadoc.failOnError=false -s dev\settings-sonarqube.xml %*

Add missing `sonar:sonar` for windows script


<# :
@echo off
setlocal
set "POWERSHELL_BAT_ARGS=%*"
if defined POWERSHELL_BAT_ARGS set "POWERSHELL_BAT_ARGS=%POWERSHELL_BAT_ARGS:"=\"%"
endlocal & powershell -NoLogo -NoProfile -Command "$_ = $input; Invoke-Expression $( '$input = $_; $_ = \"\"; $args = @( &{ $args } %POWERSHELL_BAT_ARGS% );' + [String]::Join( [char]10, $( Get-Content \"%~f0\" ) ) )"
goto :EOF
#>

$packages = @(

	@{
		"name" = "7-zip";
		"home" = "http://7-zip.org/";
		"url" = "http://downloads.sourceforge.net/sevenzip/7za920.zip";
		"dir" = "7za";
		"postinstall" = {
			$dir = $args[0];
			$script:7zip_exe = "$dir\7za.exe";
		};
	}

	@{
		"name" = "ConEmu";
		"home" = "https://github.com/Maximus5/ConEmu/";
		"url" = "https://github.com/Maximus5/ConEmu/releases/download/v16.03.13/ConEmuPack.160313.7z";
		"dir" = "ConEmu";
	}

	@{
		"Skip" = $True;
		"name" = "ConsoleZ";
		"home" = "https://github.com/cbucher/console";
		# "url" = "https://github.com/cbucher/console/releases/download/1.16.0/ConsoleZ.x86.1.16.0.16038.zip";
		# "url" = "https://github.com/cbucher/console/releases/download/1.16.0/ConsoleZ.x64.1.16.0.16038.zip";
		# "url" = "https://github.com/cbucher/console/releases/download/1.18.0/ConsoleZ.x64.1.18.0.17048.zip";
		# "url" = "https://github.com/cbucher/console/releases/download/1.18.0/ConsoleZ.x86.1.18.0.17048.zip";
		"dir" = "ConsoleZ";
	}

	@{
		"name" = "Clink";
		"home" = "http://mridgers.github.io/clink";
		"url" = "https://github.com/mridgers/clink/releases/download/0.4.8/clink_0.4.8.zip";
		"dir" = "clink";
		"onlyFiles" = $True;
		"postinstall" = {
			$dir = $args[0];
			ls $dir |
			? { $_.Attributes -eq "Directory" } |
			% { rmdir -Force -Path "$dir\$_"; };
		};
	}

	@{
		"name" = "Far3";
		"home" = "http://www.farmanager.com/";
		"url" = "https://farmanager.com/files/Far30b5225.x86.20180604.7z";
		"dir" = "Far3";
	}

	@{
		"skip" = $True;
		"name" = "Far3bis";
		"home" = "http://code.google.com/p/conemu-maximus5/";
		"url" = "http://downloads.sourceforge.net/project/conemu/FarManager/Far3bis/far3.4254bis.x86.x64.7z";
		"dir" = "Far3bis";
	}

	@{
		"name" = "Notepad2-mod";
		"home" = "http://xhmikosr.github.io/notepad2-mod/";
		"url" = "https://github.com/XhmikosR/notepad2-mod/releases/download/4.2.25.985/Notepad2-mod.4.2.25.985_x86.zip";
		"dir" = "notepad2-mod";
		"postinstall" = {
			$dir = $args[0];
			$ini = "$dir\Notepad2.ini";
			mv -Force -Path "$ini" -Destination "$ini.orig";
			& {
				"[Notepad2]";
				"Notepad2.ini=..\..\etc\notepad\Notepad.ini";
			} | Out-File "$ini";
		};
	}

	@{
		"skip" = $True;
		"name" = "Notepad3";
		"home" = "https://www.rizonesoft.com/downloads/notepad3/";
		"url" = "https://github.com/rizonesoft/Notepad3/releases/download/RELEASE_4.18.512.992/Notepad3_4.18.512.992.zip";
		"dir" = "notepad";
		"postinstall" = {
			$dir = $args[0];
			$ini = "$dir\Notepad3.ini";
			mv -Force -Path "$ini" -Destination "$ini.orig";
			& {
				"[Notepad2]";
				"Notepad2.ini=..\..\etc\notepad\Notepad.ini";
			} | Out-File "$ini";
		};
	}

	@{
		"name" = "UnxUtils";
		"home" = "http://unxutils.sourceforge.met/";
		"url" = "http://downloads.sourceforge.net/project/unxutils/unxutils/current/UnxUtils.zip";
		"dir" = "unxutils";
		"postinstall" = {
			$dir = $args[0];
			$src = "$dir\usr\local\wbin\*";
			$dst = "$dir\bin";
			mv -Force -Path $src -Destination $dst;
		};
	}

	@{
		"name" = "UnxUtils Updates";
		"home" = "http://unxutils.sourceforge.met/";
		"url" = "http://unxutils.sourceforge.net/UnxUpdates.zip";
		"dir" = "unxutils\bin";
	}

);

# =========================================================================

$vendorsDir = [System.IO.Path]::GetFullPath("$pwd\..\vendors");
$distribDir = "$pwd\distrib";

$7zip_exe = "";

# =========================================================================

function download-archive( [string]$url, [string]$targetDir ) {
	$filename = "$targetDir\" + [System.IO.Path]::GetFileName($url);
	if ( ! ( Test-Path $filename ) ) {
		[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;
		$webclient = New-Object System.Net.WebClient;
		$webclient.DownloadFile($url, $filename);
	}
	return $filename;
}

function extract-zip( [string]$filename, [string]$targetDir ) {
	$shell = New-Object -com shell.application;
	$zip = $shell.NameSpace($filename);
	foreach ( $item in $zip.items() ) {
		$shell.Namespace($targetDir).CopyHere($item, 16);
	}
}

function extract-7z( [string]$filename, [string]$targetDir, [bool]$onlyFiles ) {
	$mode = if ( $onlyFiles ) { "e" } else { "x" };
	& "$script:7zip_exe" $mode "$filename" -y "-o$targetDir";
}

function extract-archive( [string]$filename, [string]$targetDir, [bool]$onlyFiles ) {
	if ( $script:7zip_exe ) {
		extract-7z $filename $targetDir $onlyFiles;
	} else {
		extract-zip $filename $targetDir;
	}
}

function install-package( $package ) {
	$dstDir = $script:vendorsDir + "\" + $package.dir;

	"=================================================================";
	"Package     : $($package.name)";
	"Destination : $dstDir";

	if ( $package.skip ) {
		"Skipped";
		return;
	}

	New-Item -Force -ItemType Directory -Path $dstDir >$null;
	$filename = download-archive $package.url $script:distribDir;
	extract-archive $filename $dstDir ( !! $package.onlyFiles );

	if ( ! $package.postinstall ) {
		return;
	}

	"`nInvoke command:";
	$package.postinstall;
	Invoke-Command -ScriptBlock $package.postinstall -ArgumentList $dstDir;
}

# =========================================================================

$enabled = "$pwd\candy-for-tea.enabled";
$logfile = "$pwd\candy-for-tea.log";

if ( ! ( Test-Path "$enabled" ) ) {
	[System.Reflection.Assembly]::LoadWithPartialName( "System.Windows.Forms" ) >$Null;
	[System.Windows.Forms.MessageBox]::Show( "To enable execution create the file:`n$enabled.", "Disabled", 0, "Stop" ) >$Null;
	exit;
}

$packages | % { install-package $_; } | Out-File $logfile;

if ( Test-Path $enabled ) {
	Remove-Item -Force -Path "$enabled";
}

# =========================================================================

# EOF

<# :
@echo off
setlocal
set "POWERSHELL_BAT_ARGS=%*"
if defined POWERSHELL_BAT_ARGS set "POWERSHELL_BAT_ARGS=%POWERSHELL_BAT_ARGS:"=\"%"
endlocal & powershell -NoLogo -NoProfile -Command "$_ = $input; Invoke-Expression $( '$input = $_; $_ = \"\"; $args = @( &{ $args } %POWERSHELL_BAT_ARGS% );' + [String]::Join( [char]10, $( Get-Content \"%~f0\" ) ) )"
goto :EOF
#>

$packages = @(

	@{
		"name" = "7-zip";
		"home" = "http://7-zip.org/";
		"url" = "http://downloads.sourceforge.net/sevenzip/7za920.zip";
		"dir" = "7za";
		"postinstall" = {
			$dir = $args[0];
			$script:7zip_exe = "$dir\7za.exe";
		};
	}

	@{
		"name" = "ConEmu";
		"home" = "https://github.com/Maximus5/ConEmu/";
		"url" = "https://github.com/Maximus5/ConEmu/releases/download/v16.03.13/ConEmuPack.160313.7z";
		"dir" = "ConEmu";
	}

	@{
		"Skip" = $True;
		"name" = "ConsoleZ";
		"home" = "https://github.com/cbucher/console";
		# "url" = "https://github.com/cbucher/console/releases/download/1.16.0/ConsoleZ.x86.1.16.0.16038.zip";
		# "url" = "https://github.com/cbucher/console/releases/download/1.16.0/ConsoleZ.x64.1.16.0.16038.zip";
		# "url" = "https://github.com/cbucher/console/releases/download/1.18.0/ConsoleZ.x64.1.18.0.17048.zip";
		# "url" = "https://github.com/cbucher/console/releases/download/1.18.0/ConsoleZ.x86.1.18.0.17048.zip";
		"dir" = "ConsoleZ";
	}

	@{
		"name" = "Clink";
		"home" = "http://mridgers.github.io/clink";
		"url" = "https://github.com/mridgers/clink/releases/download/0.4.8/clink_0.4.8.zip";
		"dir" = "clink";
		"onlyFiles" = $True;
		"postinstall" = {
			$dir = $args[0];
			ls $dir |
			? { $_.Attributes -eq "Directory" } |
			% { rmdir -Force -Path "$dir\$_"; };
		};
	}

	@{
		"name" = "Far3";
		"home" = "http://www.farmanager.com/";
		"url" = "https://farmanager.com/files/Far30b5225.x86.20180604.7z";
		"dir" = "Far3";
	}

	@{
		"skip" = $True;
		"name" = "Far3bis";
		"home" = "http://code.google.com/p/conemu-maximus5/";
		"url" = "http://downloads.sourceforge.net/project/conemu/FarManager/Far3bis/far3.4254bis.x86.x64.7z";
		"dir" = "Far3bis";
	}

	@{
		"name" = "Notepad2-mod";
		"home" = "http://xhmikosr.github.io/notepad2-mod/";
		"url" = "https://github.com/XhmikosR/notepad2-mod/releases/download/4.2.25.985/Notepad2-mod.4.2.25.985_x86.zip";
		"dir" = "notepad2-mod";
		"postinstall" = {
			$dir = $args[0];
			$ini = "$dir\Notepad2.ini";
			mv -Force -Path "$ini" -Destination "$ini.orig";
			& {
				"[Notepad2]";
				"Notepad2.ini=..\..\etc\notepad\Notepad.ini";
			} | Out-File "$ini";
		};
	}

	@{
		"skip" = $True;
		"name" = "Notepad3";
		"home" = "https://www.rizonesoft.com/downloads/notepad3/";
		"url" = "https://github.com/rizonesoft/Notepad3/releases/download/RELEASE_4.18.512.992/Notepad3_4.18.512.992.zip";
		"dir" = "notepad";
		"postinstall" = {
			$dir = $args[0];
			$ini = "$dir\Notepad3.ini";
			mv -Force -Path "$ini" -Destination "$ini.orig";
			& {
				"[Notepad3]";
				"Notepad3.ini=..\..\etc\notepad\Notepad.ini";
			} | Out-File "$ini";
		};
	}

	@{
		"name" = "UnxUtils";
		"home" = "http://unxutils.sourceforge.met/";
		"url" = "http://downloads.sourceforge.net/project/unxutils/unxutils/current/UnxUtils.zip";
		"dir" = "unxutils";
		"postinstall" = {
			$dir = $args[0];
			$src = "$dir\usr\local\wbin\*";
			$dst = "$dir\bin";
			mv -Force -Path $src -Destination $dst;
		};
	}

	@{
		"name" = "UnxUtils Updates";
		"home" = "http://unxutils.sourceforge.met/";
		"url" = "http://unxutils.sourceforge.net/UnxUpdates.zip";
		"dir" = "unxutils\bin";
	}

);

# =========================================================================

$vendorsDir = [System.IO.Path]::GetFullPath("$pwd\..\vendors");
$distribDir = "$pwd\distrib";

$7zip_exe = "";

# =========================================================================

function download-archive( [string]$url, [string]$targetDir ) {
	$filename = "$targetDir\" + [System.IO.Path]::GetFileName($url);
	if ( ! ( Test-Path $filename ) ) {
		[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12;
		$webclient = New-Object System.Net.WebClient;
		$webclient.DownloadFile($url, $filename);
	}
	return $filename;
}

function extract-zip( [string]$filename, [string]$targetDir ) {
	$shell = New-Object -com shell.application;
	$zip = $shell.NameSpace($filename);
	foreach ( $item in $zip.items() ) {
		$shell.Namespace($targetDir).CopyHere($item, 16);
	}
}

function extract-7z( [string]$filename, [string]$targetDir, [bool]$onlyFiles ) {
	$mode = if ( $onlyFiles ) { "e" } else { "x" };
	& "$script:7zip_exe" $mode "$filename" -y "-o$targetDir";
}

function extract-archive( [string]$filename, [string]$targetDir, [bool]$onlyFiles ) {
	if ( $script:7zip_exe ) {
		extract-7z $filename $targetDir $onlyFiles;
	} else {
		extract-zip $filename $targetDir;
	}
}

function install-package( $package ) {
	$dstDir = $script:vendorsDir + "\" + $package.dir;

	"=================================================================";
	"Package     : $($package.name)";
	"Destination : $dstDir";

	if ( $package.skip ) {
		"Skipped";
		return;
	}

	New-Item -Force -ItemType Directory -Path $dstDir >$null;
	$filename = download-archive $package.url $script:distribDir;
	extract-archive $filename $dstDir ( !! $package.onlyFiles );

	if ( ! $package.postinstall ) {
		return;
	}

	"`nInvoke command:";
	$package.postinstall;
	Invoke-Command -ScriptBlock $package.postinstall -ArgumentList $dstDir;
}

# =========================================================================

$enabled = "$pwd\candy-for-tea.enabled";
$logfile = "$pwd\candy-for-tea.log";

if ( ! ( Test-Path "$enabled" ) ) {
	[System.Reflection.Assembly]::LoadWithPartialName( "System.Windows.Forms" ) >$Null;
	[System.Windows.Forms.MessageBox]::Show( "To enable execution create the file:`n$enabled.", "Disabled", 0, "Stop" ) >$Null;
	exit;
}

$packages | % { install-package $_; } | Out-File $logfile;

if ( Test-Path $enabled ) {
	Remove-Item -Force -Path "$enabled";
}

# =========================================================================

# EOF

fix copy-paste bug

fix copy-paste bug


rem delete existing
rmdir "ZipPackage" /Q /S

rem Create required folders
mkdir "ZipPackage"
mkdir "ZipPackage\FNA"
mkdir "ZipPackage\x64"
mkdir "ZipPackage\x86"

set "CONFIGURATION=Release"

rem Copy output files
copy "Myra\bin\%CONFIGURATION%\Myra.dll" ZipPackage /Y
copy "Myra\bin\%CONFIGURATION%\Myra.pdb" ZipPackage /Y
copy "Myra\bin\FNA\%CONFIGURATION%\Myra.dll" "ZipPackage\FNA\" /Y
copy "Myra\bin\FNA\%CONFIGURATION%\Myra.pdb" "ZipPackage\FNA\" /Y
copy "Myra\bin\%CONFIGURATION%\Newtonsoft.Json.dll" ZipPackage /Y
copy "Myra\bin\%CONFIGURATION%\Newtonsoft.Json.xml" ZipPackage /Y
copy "Samples\Myra.Samples.AllWidgets\bin\%CONFIGURATION%\Myra.Samples.AllWidgets.exe" ZipPackage /Y
copy "Samples\Myra.Samples.CustomUIStylesheet\bin\%CONFIGURATION%\Myra.Samples.CustomUIStylesheet.exe" ZipPackage /Y
copy "Samples\Myra.Samples.FormattedTextSample\bin\%CONFIGURATION%\Myra.Samples.FormattedTextSample.exe" ZipPackage /Y
copy "Samples\Myra.Samples.GridContainer\bin\%CONFIGURATION%\Myra.Samples.GridContainer.exe" ZipPackage /Y
copy "Samples\Myra.Samples.Notepad\bin\%CONFIGURATION%\Myra.Samples.Notepad.exe" ZipPackage /Y
copy "Samples\Myra.Samples.SplitPaneContainer\bin\%CONFIGURATION%\Myra.Samples.SplitPaneContainer.exe" ZipPackage /Y
copy "Samples\Myra.Samples.TabControl\bin\%CONFIGURATION%\Myra.Samples.TabControl.exe" ZipPackage /Y
copy "Samples\Myra.Samples.TextBlocks\bin\%CONFIGURATION%\Myra.Samples.TextBlocks.exe" ZipPackage /Y
copy "Samples\Myra.Samples.FantasyMapGenerator\bin\%CONFIGURATION%\Myra.Samples.FantasyMapGenerator.exe" ZipPackage /Y
copy "Samples\Myra.UIEditor.Plugin.LibGDX\bin\%CONFIGURATION%\Myra.UIEditor.Plugin.LibGDX.dll" ZipPackage /Y
copy "Samples\Myra.UIEditor.Plugin.YellowMenuButtons\bin\%CONFIGURATION%\Myra.UIEditor.Plugin.YellowMenuButtons.dll" ZipPackage /Y
copy "Myra.Editor\bin\%CONFIGURATION%\Myra.Editor.dll" ZipPackage /Y
copy "Myra.Editor\bin\%CONFIGURATION%\Myra.Editor.pdb" ZipPackage /Y
copy "Myra.Editor\bin\FNA\%CONFIGURATION%\Myra.Editor.dll" "ZipPackage\FNA\" /Y
copy "Myra.Editor\bin\FNA\%CONFIGURATION%\Myra.Editor.pdb" "ZipPackage\FNA\" /Y
copy "Myra.UIEditor\bin\%CONFIGURATION%\Myra.UIEditor.exe" ZipPackage /Y
copy "Myra.UIEditor\bin\%CONFIGURATION%\Myra.UIEditor.exe.config" ZipPackage /Y
copy "Myra.UIEditor\bin\%CONFIGURATION%\Myra.UIEditor.pdb" ZipPackage /Y

copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\MonoGame.Framework.dll" "ZipPackage" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\MonoGame.Framework.dll.config" "ZipPackage" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\libSDL2-2.0.so.0" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\libopenal.so.1" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\SDL2.dll" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\soft_oal.dll" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\libSDL2-2.0.so.0" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\libopenal.so.1" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\SDL2.dll" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\soft_oal.dll" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\libSDL2-2.0.0.dylib" "ZipPackage" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\libopenal.1.dylib" "ZipPackage" /Y

rem delete existing
rmdir "ZipPackage" /Q /S

rem Create required folders
mkdir "ZipPackage"
mkdir "ZipPackage\Content"
mkdir "ZipPackage\FNA"
mkdir "ZipPackage\x64"
mkdir "ZipPackage\x86"

set "CONFIGURATION=Release"

rem Copy output files
copy "Myra\bin\%CONFIGURATION%\Myra.dll" ZipPackage /Y
copy "Myra\bin\%CONFIGURATION%\Myra.pdb" ZipPackage /Y
copy "Myra\bin\FNA\%CONFIGURATION%\Myra.dll" "ZipPackage\FNA\" /Y
copy "Myra\bin\FNA\%CONFIGURATION%\Myra.pdb" "ZipPackage\FNA\" /Y
copy "Myra\bin\%CONFIGURATION%\Newtonsoft.Json.dll" ZipPackage /Y
copy "Myra\bin\%CONFIGURATION%\Newtonsoft.Json.xml" ZipPackage /Y
copy "Samples\Myra.Samples.AllWidgets\bin\%CONFIGURATION%\Myra.Samples.AllWidgets.exe" ZipPackage /Y
copy "Samples\Myra.Samples.CustomUIStylesheet\bin\%CONFIGURATION%\Content\*.*" "ZipPackage\Content\" /Y
copy "Samples\Myra.Samples.CustomUIStylesheet\bin\%CONFIGURATION%\Myra.Samples.CustomUIStylesheet.exe" ZipPackage /Y
copy "Samples\Myra.Samples.FormattedTextSample\bin\%CONFIGURATION%\Myra.Samples.FormattedTextSample.exe" ZipPackage /Y
copy "Samples\Myra.Samples.GridContainer\bin\%CONFIGURATION%\Myra.Samples.GridContainer.exe" ZipPackage /Y
copy "Samples\Myra.Samples.Notepad\bin\%CONFIGURATION%\Myra.Samples.Notepad.exe" ZipPackage /Y
copy "Samples\Myra.Samples.SplitPaneContainer\bin\%CONFIGURATION%\Myra.Samples.SplitPaneContainer.exe" ZipPackage /Y
copy "Samples\Myra.Samples.TabControl\bin\%CONFIGURATION%\Myra.Samples.TabControl.exe" ZipPackage /Y
copy "Samples\Myra.Samples.TextBlocks\bin\%CONFIGURATION%\Myra.Samples.TextBlocks.exe" ZipPackage /Y
copy "Samples\Myra.Samples.FantasyMapGenerator\bin\%CONFIGURATION%\Myra.Samples.FantasyMapGenerator.exe" ZipPackage /Y
copy "Samples\Myra.UIEditor.Plugin.LibGDX\bin\%CONFIGURATION%\Myra.UIEditor.Plugin.LibGDX.dll" ZipPackage /Y
copy "Samples\Myra.UIEditor.Plugin.YellowMenuButtons\bin\%CONFIGURATION%\Myra.UIEditor.Plugin.YellowMenuButtons.dll" ZipPackage /Y
copy "Myra.Editor\bin\%CONFIGURATION%\Myra.Editor.dll" ZipPackage /Y
copy "Myra.Editor\bin\%CONFIGURATION%\Myra.Editor.pdb" ZipPackage /Y
copy "Myra.Editor\bin\FNA\%CONFIGURATION%\Myra.Editor.dll" "ZipPackage\FNA\" /Y
copy "Myra.Editor\bin\FNA\%CONFIGURATION%\Myra.Editor.pdb" "ZipPackage\FNA\" /Y
copy "Myra.UIEditor\bin\%CONFIGURATION%\Myra.UIEditor.exe" ZipPackage /Y
copy "Myra.UIEditor\bin\%CONFIGURATION%\Myra.UIEditor.exe.config" ZipPackage /Y
copy "Myra.UIEditor\bin\%CONFIGURATION%\Myra.UIEditor.pdb" ZipPackage /Y

copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\MonoGame.Framework.dll" "ZipPackage" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\MonoGame.Framework.dll.config" "ZipPackage" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\libSDL2-2.0.so.0" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\libopenal.so.1" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\SDL2.dll" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x64\soft_oal.dll" "ZipPackage\x64" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\libSDL2-2.0.so.0" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\libopenal.so.1" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\SDL2.dll" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\x86\soft_oal.dll" "ZipPackage\x86" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\libSDL2-2.0.0.dylib" "ZipPackage" /Y
copy "Myra-Dependencies\MonoGame.Framework.DesktopGL\libopenal.1.dylib" "ZipPackage" /Y

Build fix

Build fix


if "%1" == "" (
    set BUILD_FLAVOR=Release
) else (
    set BUILD_FLAVOR=%1
)

:BuildIronLanguages
msbuild %DLR_ROOT%\Solutions\Dlr.sln /p:Configuration=%BUILD_FLAVOR%

:GenerateModulesList
%DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipy.exe %DLR_ROOT%\Languages\IronPython\StdLib\MakeModuleList.py

:GenerateMSI
%DLR_ROOT%\Bin\%BUILD_FLAVOR%\ir.exe %DLR_ROOT%\Msi\Python\generate_wxis.rb
msbuild %DLR_ROOT%\Msi\Installer.proj /p:Configuration=%BUILD_FLAVOR%

:GenerateZip

set ZIPTEMPDIR=%TEMP%\ZipRelease
:retry
if EXIST "%ZIPTEMPDIR%" (
	set ZIPTEMPDIR=%TEMP%\ZipRelease%RANDOM%
	goto retry
)

set ZIPTEMPDIR=%ZIPTEMPDIR%\IronPython-2.7

mkdir  %ZIPTEMPDIR%
pushd %ZIPTEMPDIR%

mkdir Doc
xcopy /s %DLR_ROOT%\Languages\IronPython\Public\Doc\* Doc

mkdir Tools
xcopy /s %DLR_ROOT%\Languages\IronPython\Public\Tools\* Tools

mkdir Tutorial
xcopy /s %DLR_ROOT%\Languages\IronPython\Public\Tutorial\* Tutorial

mkdir Lib
msbuild %DLR_ROOT%\Languages\IronPython\StdLib\StdLib.pyproj /p:OutputPath=%ZIPTEMPDIR%\Lib /t:CopyFilesForZip

copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\Microsoft.Dynamic.dll .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\Microsoft.Scripting.dll .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\Microsoft.Scripting.Metadata.dll .

copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipy.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipy64.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipyw.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipyw64.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.dll .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.Modules.dll .

copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.Modules.xml .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.xml .

copy %DLR_ROOT%\Languages\IronPython\Public\License.html .
copy %DLR_ROOT%\Languages\IronPython\Public\License.rtf .
copy %DLR_ROOT%\Languages\IronPython\Public\Readme.html .

mkdir Silverlight\bin
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Microsoft.Dynamic.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Microsoft.Scripting.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Microsoft.Scripting.Silverlight.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Chiron.exe Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Chiron.exe.config Silverlight\bin\

copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\IronPython.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\IronPython.Modules.dll Silverlight\bin\

mkdir Silverlight\script
xcopy %DLR_ROOT%\Hosts\Silverlight\Public\script\* Silverlight\script

mkdir Silverlight\script\templates\python
xcopy /s %DLR_ROOT%\Hosts\Silverlight\Public\script\templates\python Silverlight\script\templates\python

del /Q %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython-Bin.zip
cd ..
%DLR_ROOT%\Util\Misc\zip -9 -r %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython-Bin.zip IronPython-2.7
cd /D %DLR_ROOT%\Bin\%BUILD_FLAVOR%\

dir %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython-Bin.zip

popd
:EXIT

set IPY_VERSION=2.7.1

if "%1" == "" (
    set BUILD_FLAVOR=Release
) else (
    set BUILD_FLAVOR=%1
)

:BuildIronLanguages
msbuild %DLR_ROOT%\Solutions\Dlr.sln /p:Configuration=%BUILD_FLAVOR% /v:minimal
msbuild %DLR_ROOT%\Solutions\Dlr.sln /p:Configuration=Silverlight4%BUILD_FLAVOR% /v:minimal

:GenerateModulesList
%DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipy.exe %DLR_ROOT%\Languages\IronPython\StdLib\MakeModuleList.py

:GenerateMSI
%DLR_ROOT%\Bin\%BUILD_FLAVOR%\ir.exe %DLR_ROOT%\Msi\Python\generate_wxis.rb
msbuild %DLR_ROOT%\Msi\Installer.proj /p:Configuration=%BUILD_FLAVOR% /v:minimal
copy /Y %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.msi %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython-%IPY_VERSION%.msi

:GenerateZip

set ZIPTEMPDIR=%TEMP%\ZipRelease
:retry
if EXIST "%ZIPTEMPDIR%" (
	set ZIPTEMPDIR=%TEMP%\ZipRelease%RANDOM%
	goto retry
)

set ZIPTEMPDIR=%ZIPTEMPDIR%\IronPython-%IPY_VERSION%

mkdir  %ZIPTEMPDIR%
pushd %ZIPTEMPDIR%

mkdir Doc
xcopy /s %DLR_ROOT%\Languages\IronPython\Public\Doc\* Doc

mkdir Tools
xcopy /s %DLR_ROOT%\Languages\IronPython\Public\Tools\* Tools

mkdir Tutorial
xcopy /s %DLR_ROOT%\Languages\IronPython\Public\Tutorial\* Tutorial

mkdir Lib
msbuild %DLR_ROOT%\Languages\IronPython\StdLib\StdLib.pyproj /p:OutputPath=%ZIPTEMPDIR%\Lib /t:CopyFilesForZip

copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\Microsoft.Dynamic.dll .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\Microsoft.Scripting.dll .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\Microsoft.Scripting.Metadata.dll .

copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipy.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipy64.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipyw.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\ipyw64.exe .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.dll .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.Modules.dll .

copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.Modules.xml .
copy %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython.xml .

copy %DLR_ROOT%\Languages\IronPython\Public\License.html .
copy %DLR_ROOT%\Languages\IronPython\Public\License.rtf .
copy %DLR_ROOT%\Languages\IronPython\Public\Readme.html .

mkdir Silverlight\bin
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Microsoft.Dynamic.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Microsoft.Scripting.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Microsoft.Scripting.Silverlight.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Chiron.exe Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\Chiron.exe.config Silverlight\bin\

copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\IronPython.dll Silverlight\bin\
copy %DLR_ROOT%\Bin\Silverlight4%BUILD_FLAVOR%\IronPython.Modules.dll Silverlight\bin\

mkdir Silverlight\script
xcopy %DLR_ROOT%\Hosts\Silverlight\Public\script\* Silverlight\script

mkdir Silverlight\script\templates\python
xcopy /s %DLR_ROOT%\Hosts\Silverlight\Public\script\templates\python Silverlight\script\templates\python

del /Q %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython-%IPY_VERSION%-Bin.zip
cd ..
%DLR_ROOT%\Util\Misc\zip -9 -r %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython-%IPY_VERSION%-Bin.zip IronPython-%IPY_VERSION%
cd /D %DLR_ROOT%\Bin\%BUILD_FLAVOR%\

dir %DLR_ROOT%\Bin\%BUILD_FLAVOR%\IronPython-%IPY_VERSION%-Bin.zip

popd
:EXIT

Update CreateRelease.bat to generate files with version numbers.


echo off
setlocal

%TB-PLATFORM-PROJECTS-DRIVE%
path %TB-PLATFORM-PROJECTS-DRIVE%%TB-PLATFORM-PROJECTS-PATH%\Build\Subscripts;%PATH%

set BIN-PATH=%TB-PLATFORM-PROJECTS-PATH%\Bin

call setMyVersion.bat

set DEP=/DEP:%TB-PLATFORM-PROJECTS-DRIVE%%TB-PLATFORM-PROJECTS-PATH%\Build\ExternalDependencies.txt

echo =================================
echo Making command line utility projects

pushd %TB-PLATFORM-PROJECTS-PATH%\src\CommandLineUtils

call makeExe.bat gbd gbd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gccd gccd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gcd gcd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gtd gtd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gxd gxd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat ltz ltz /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat plord plord /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat uccd uccd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat ucd ucd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat uxd uxd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

popd

@echo off
setlocal

%TB-PLATFORM-PROJECTS-DRIVE%
path %TB-PLATFORM-PROJECTS-DRIVE%%TB-PLATFORM-PROJECTS-PATH%\Build\Subscripts;%PATH%

set BIN-PATH=%TB-PLATFORM-PROJECTS-PATH%\Bin

call setMyVersion.bat

set DEP=/DEP:%TB-PLATFORM-PROJECTS-DRIVE%%TB-PLATFORM-PROJECTS-PATH%\Build\ExternalDependencies.txt

if not "%~1"=="" (
	pushd %TB-PLATFORM-PROJECTS-PATH%\src\CommandLineUtils
	echo =================================
	echo Making command line utility project %~1
	call makeExe.bat %~1 %~1 /CONSOLE /NOV6CC /M:E %DEP%
	popd
	exit /B
)

echo =================================
echo Making command line utility projects

pushd %TB-PLATFORM-PROJECTS-PATH%\src\CommandLineUtils

call makeExe.bat gbd gbd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gccd gccd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gcd gcd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gtd gtd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat gxd gxd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat ltz ltz /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat plord plord /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat uccd uccd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat ucd ucd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

call makeExe.bat uxd uxd /CONSOLE /NOV6CC /M:E %DEP%
if errorlevel 1 pause

popd

Allow single command line program to be built


@echo off
lua.exe "%~dp0\luacheck.lua" %*

Fix Windows wrapper

Fix Windows wrapper

Quote path to the luacheck script so that it works even when the path contains whitespace.