REM Setup (1)

REM Switch to branch 1700 (i.e. chromium beta)

REM   This part should only need to be done once, but it won't hurt to repeat it.  The first
REM   time might take a while because it fetches an extra 1/2 GB or so of branch commits.
gclient sync --with_branch_heads
git fetch

set BRANCH=1700
git config --replace-all svn-remote.svn_%BRANCH%.url svn://svn.chromium.org/chrome
git config --replace-all svn-remote.svn_%BRANCH%.fetch branches/%BRANCH%/src:refs/remotes/origin/%BRANCH%

REM   This "initializes" the %BRANCH% refspec, to prevent 'git svn fetch' from scanning
REM   the whole svn repo history for the branch commits we already synced above.
REM "ref: refs/remotes/branch-heads/%BRANCH%" > .git/refs/remotes/origin/%BRANCH%

REM   This should finish quickly, just doing a bit of git-svn housekeeping.
REM   It might fetch a few recent revisions, if the git mirror is slightly out-of-date,
REM   but it shouldn't be behind by much, and most of the time it shouldn't need to
REM   fetch anything. If it's taking a long time or looks like it's fetching a bunch of
REM   stuff from svn, something is probably wrong.
git svn fetch svn_%BRANCH%

REM   Checkout the branch 'src' tree.
git checkout -b branch_%BRANCH% origin/%BRANCH%
REM   Make git-cl happy.
git config branch.branch_%BRANCH%.merge refs/heads/%BRANCH%
git config branch.branch_%BRANCH%.remote branch-heads
REM   Checkout all the submodules at their branch DEPS revisions.
gclient sync --jobs 16

REM Setup (2)

REM remove all .git and .gitmodules directories that came with the chromium clone
RMDIR /S /Q .\.git\*.* .\breakpad\src\.git\*.* .\chrome\test\data\extensions\api_test\permissions\nacl_enabled\bin\.git\*.* .\chrome\test\data\perf\canvas_bench\.git\*.* .\chrome\test\data\perf\frame_rate\content\.git\*.* .\chrome\test\data\perf\third_party\octane\.git\*.* .\chrome\tools\test\reference_build\chrome_win\.git\*.* .\chrome_frame\tools\test\reference_build\chrome_win\.git\*.* .\media\cdm\ppapi\api\.git\*.* .\native_client\.git\*.* .\sdch\open-vcdiff\.git\*.* .\testing\gmock\.git\*.* .\testing\gtest\.git\*.* .\third_party\angle\.git\*.* .\third_party\angle_dx11\.git\*.* .\third_party\bidichecker\.git\*.* .\third_party\bison\.git\*.* .\third_party\brotli\src\.git\*.* .\third_party\cacheinvalidation\src\.git\*.* .\third_party\cld_2\src\.git\*.* .\third_party\cygwin\.git\*.* .\third_party\ffmpeg\.git\*.* .\third_party\flac\.git\*.* .\third_party\gnu_binutils\.git\*.* .\third_party\gperf\.git\*.* .\third_party\html_office\.git\*.* .\third_party\hunspell\.git\*.* .\third_party\hunspell_dictionaries\.git\*.* .\third_party\icu\.git\*.* .\third_party\jsoncpp\source\include\.git\*.* .\third_party\jsoncpp\source\src\lib_json\.git\*.* .\third_party\leveldatabase\src\.git\*.* .\third_party\libaddressinput\src\.git\*.* .\third_party\libc++\trunk\.git\*.* .\third_party\libc++abi\trunk\.git\*.* .\third_party\libexif\sources\.git\*.* .\third_party\libjingle\source\talk\.git\*.* .\third_party\libjpeg_turbo\.git\*.* .\third_party\libphonenumber\src\phonenumbers\.git\*.* .\third_party\libphonenumber\src\resources\.git\*.* .\third_party\libphonenumber\src\test\.git\*.* .\third_party\libsrtp\.git\*.* .\third_party\libvpx\.git\*.* .\third_party\libyuv\.git\*.* .\third_party\lighttpd\.git\*.* .\third_party\mesa\src\.git\*.* .\third_party\mingw-w64\mingw\bin\.git\*.* .\third_party\nacl_sdk_binaries\.git\*.* .\third_party\nss\.git\*.* .\third_party\openmax_dl\.git\*.* .\third_party\opus\src\.git\*.* .\third_party\ots\.git\*.* .\third_party\pefile\.git\*.* .\third_party\perl\.git\*.* .\third_party\psyco_win32\.git\*.* .\third_party\pyftpdlib\src\.git\*.* .\third_party\python_26\.git\*.* .\third_party\pywebsocket\src\.git\*.* .\third_party\safe_browsing\testing\.git\*.* .\third_party\scons-2.0.1\.git\*.* .\third_party\sfntly\cpp\src\.git\*.* .\third_party\skia\gyp\.git\*.* .\third_party\skia\include\.git\*.* .\third_party\skia\src\.git\*.* .\third_party\smhasher\src\.git\*.* .\third_party\snappy\src\.git\*.* .\third_party\speex\.git\*.* .\third_party\swig\Lib\.git\*.* .\third_party\swig\win\.git\*.* .\third_party\syzygy\binaries\.git\*.* .\third_party\trace-viewer\.git\*.* .\third_party\usrsctp\usrsctplib\.git\*.* .\third_party\webdriver\pylib\.git\*.* .\third_party\webgl\src\.git\*.* .\third_party\webgl_conformance\.git\*.* .\third_party\WebKit\.git\*.* .\third_party\WebKit\LayoutTests\w3c\csswg-test\.git\*.* .\third_party\WebKit\LayoutTests\w3c\web-platform-tests\.git\*.* .\third_party\webpagereplay\.git\*.* .\third_party\webrtc\.git\*.* .\third_party\xulrunner-sdk\.git\*.* .\third_party\yasm\binaries\.git\*.* .\third_party\yasm\source\patched-yasm\.git\*.* .\tools\deps2git\.git\*.* .\tools\grit\.git\*.* .\tools\gyp\.git\*.* .\tools\page_cycler\acid3\.git\*.* .\tools\swarming_client\.git\*.* .\v8\.git\*.* .\src\.gitmodules\*.* .\src\third_party\trace-viewer\third_party\Promises\.gitmodules\*.* .\src\third_party\WebKit\LayoutTests\w3c\web-platform-tests\.gitmodules\*.*

# Step (3) init AMD repository and pull
git init
git remote rm origin 2> nul
git remote add origin https://github.com/amd/Chromium-WebCL.git
git fetch
git reset --hard origin/master

REM Setup (1)

REM Switch to branch 1700 (i.e. chromium beta)

REM   This part should only need to be done once, but it won't hurt to repeat it.  The first
REM   time might take a while because it fetches an extra 1/2 GB or so of branch commits.
gclient sync --with_branch_heads
git fetch

set BRANCH=1700
git config --replace-all svn-remote.svn_%BRANCH%.url svn://svn.chromium.org/chrome
git config --replace-all svn-remote.svn_%BRANCH%.fetch branches/%BRANCH%/src:refs/remotes/origin/%BRANCH%

REM   This "initializes" the %BRANCH% refspec, to prevent 'git svn fetch' from scanning
REM   the whole svn repo history for the branch commits we already synced above.
REM "ref: refs/remotes/branch-heads/%BRANCH%" > .git/refs/remotes/origin/%BRANCH%

REM   This should finish quickly, just doing a bit of git-svn housekeeping.
REM   It might fetch a few recent revisions, if the git mirror is slightly out-of-date,
REM   but it shouldn't be behind by much, and most of the time it shouldn't need to
REM   fetch anything. If it's taking a long time or looks like it's fetching a bunch of
REM   stuff from svn, something is probably wrong.
git svn fetch svn_%BRANCH%

REM   Checkout the branch 'src' tree.
git checkout -b branch_%BRANCH% origin/%BRANCH%
REM   Make git-cl happy.
git config branch.branch_%BRANCH%.merge refs/heads/%BRANCH%
git config branch.branch_%BRANCH%.remote branch-heads
REM   Checkout all the submodules at their branch DEPS revisions.
gclient sync --jobs 16
gclient runhooks --force

REM Setup (2)

REM remove all .git and .gitmodules directories that came with the chromium clone
RMDIR /S /Q .\.git\*.* .\breakpad\src\.git\*.* .\chrome\test\data\extensions\api_test\permissions\nacl_enabled\bin\.git\*.* .\chrome\test\data\perf\canvas_bench\.git\*.* .\chrome\test\data\perf\frame_rate\content\.git\*.* .\chrome\test\data\perf\third_party\octane\.git\*.* .\chrome\tools\test\reference_build\chrome_win\.git\*.* .\chrome_frame\tools\test\reference_build\chrome_win\.git\*.* .\media\cdm\ppapi\api\.git\*.* .\native_client\.git\*.* .\sdch\open-vcdiff\.git\*.* .\testing\gmock\.git\*.* .\testing\gtest\.git\*.* .\third_party\angle\.git\*.* .\third_party\angle_dx11\.git\*.* .\third_party\bidichecker\.git\*.* .\third_party\bison\.git\*.* .\third_party\brotli\src\.git\*.* .\third_party\cacheinvalidation\src\.git\*.* .\third_party\cld_2\src\.git\*.* .\third_party\cygwin\.git\*.* .\third_party\ffmpeg\.git\*.* .\third_party\flac\.git\*.* .\third_party\gnu_binutils\.git\*.* .\third_party\gperf\.git\*.* .\third_party\html_office\.git\*.* .\third_party\hunspell\.git\*.* .\third_party\hunspell_dictionaries\.git\*.* .\third_party\icu\.git\*.* .\third_party\jsoncpp\source\include\.git\*.* .\third_party\jsoncpp\source\src\lib_json\.git\*.* .\third_party\leveldatabase\src\.git\*.* .\third_party\libaddressinput\src\.git\*.* .\third_party\libc++\trunk\.git\*.* .\third_party\libc++abi\trunk\.git\*.* .\third_party\libexif\sources\.git\*.* .\third_party\libjingle\source\talk\.git\*.* .\third_party\libjpeg_turbo\.git\*.* .\third_party\libphonenumber\src\phonenumbers\.git\*.* .\third_party\libphonenumber\src\resources\.git\*.* .\third_party\libphonenumber\src\test\.git\*.* .\third_party\libsrtp\.git\*.* .\third_party\libvpx\.git\*.* .\third_party\libyuv\.git\*.* .\third_party\lighttpd\.git\*.* .\third_party\mesa\src\.git\*.* .\third_party\mingw-w64\mingw\bin\.git\*.* .\third_party\nacl_sdk_binaries\.git\*.* .\third_party\nss\.git\*.* .\third_party\openmax_dl\.git\*.* .\third_party\opus\src\.git\*.* .\third_party\ots\.git\*.* .\third_party\pefile\.git\*.* .\third_party\perl\.git\*.* .\third_party\psyco_win32\.git\*.* .\third_party\pyftpdlib\src\.git\*.* .\third_party\python_26\.git\*.* .\third_party\pywebsocket\src\.git\*.* .\third_party\safe_browsing\testing\.git\*.* .\third_party\scons-2.0.1\.git\*.* .\third_party\sfntly\cpp\src\.git\*.* .\third_party\skia\gyp\.git\*.* .\third_party\skia\include\.git\*.* .\third_party\skia\src\.git\*.* .\third_party\smhasher\src\.git\*.* .\third_party\snappy\src\.git\*.* .\third_party\speex\.git\*.* .\third_party\swig\Lib\.git\*.* .\third_party\swig\win\.git\*.* .\third_party\syzygy\binaries\.git\*.* .\third_party\trace-viewer\.git\*.* .\third_party\usrsctp\usrsctplib\.git\*.* .\third_party\webdriver\pylib\.git\*.* .\third_party\webgl\src\.git\*.* .\third_party\webgl_conformance\.git\*.* .\third_party\WebKit\.git\*.* .\third_party\WebKit\LayoutTests\w3c\csswg-test\.git\*.* .\third_party\WebKit\LayoutTests\w3c\web-platform-tests\.git\*.* .\third_party\webpagereplay\.git\*.* .\third_party\webrtc\.git\*.* .\third_party\xulrunner-sdk\.git\*.* .\third_party\yasm\binaries\.git\*.* .\third_party\yasm\source\patched-yasm\.git\*.* .\tools\deps2git\.git\*.* .\tools\grit\.git\*.* .\tools\gyp\.git\*.* .\tools\page_cycler\acid3\.git\*.* .\tools\swarming_client\.git\*.* .\v8\.git\*.* .\src\.gitmodules\*.* .\src\third_party\trace-viewer\third_party\Promises\.gitmodules\*.* .\src\third_party\WebKit\LayoutTests\w3c\web-platform-tests\.gitmodules\*.*

# Step (3) init AMD repository and pull
git init
git remote rm origin 2> nul
git remote add origin https://github.com/amd/Chromium-WebCL.git
git fetch
git reset --hard origin/master

add runhooks step

add runhooks step


REM Download ahmine and CanaryMod to set up coderdojobelfast Java room environment.

@echo off
setlocal

@set PATH=%PATH%;C:\Program Files\Java\jdk1.7.0_25\bin

REM remove old folders
IF EXIST "%USERPROFILE%\Desktop\server" RD /S /Q "%USERPROFILE%\Desktop\server"
IF EXIST "%USERPROFILE%\Desktop\code" RD /S /Q "%USERPROFILE%\Desktop\code"

REM get busybox
IF NOT EXIST "%USERPROFILE%\Downloads\busybox.exe" (
  bitsadmin.exe /Transfer "Download busybox.exe" /Download http://frippery.org/files/busybox/busybox.exe "%USERPROFILE%\Downloads\busybox.exe"
)
IF NOT EXIST "%USERPROFILE%\Desktop\sh.exe" (
  COPY /b "%USERPROFILE%\Downloads\busybox.exe" "%USERPROFILE%\Desktop\sh.exe"
)

REM get convenience wrapper for sh.exe
IF NOT EXIST "%USERPROFILE%\Downloads\shell.bat" (
  bitsadmin.exe /Transfer "Download shell.bat" /Download https://raw.githubusercontent.com/coderdojobelfast/java/master/shell.bat %USERPROFILE%\Downloads\shell.bat
)
Copy /y /a "%USERPROFILE%\Downloads\shell.bat" "%USERPROFILE%\Desktop\shell.bat"

REM get ahmine, from "Learn to Program with Minecraft Plugins", 2nd Edition, Andy Hunt, (c)2014 The Pragmatic Programmers.
IF NOT EXIST %USERPROFILE%\Downloads\ahmine2-code.zip (
  bitsadmin.exe /Transfer "Download ahmine" /Download http://media.pragprog.com/titles/ahmine2/code/ahmine2-code.zip %USERPROFILE%\Downloads\ahmine2-code.zip
)

REM get CanaryMod
IF NOT EXIST %USERPROFILE%\Downloads\CanaryMod.jar (
  bitsadmin.exe /Transfer "Download CanaryMod" /Download https://canarymod.net/releases/CanaryMod-1.2.0_0.jar %USERPROFILE%\Downloads\CanaryMod.jar
)

REM unpack ahmine
cd /d %~dp0
Call :UnZipFile "%USERPROFILE%\Downloads" "%USERPROFILE%\Downloads\ahmine2-code.zip"
Move /y "%USERPROFILE%\Downloads\code" "%USERPROFILE%\Desktop"

REM copy starter and jar file to server
md %USERPROFILE%\Desktop\server
Copy /y "%USERPROFILE%\Desktop\code\runtime\start_minecraft.bat" "%USERPROFILE%\Desktop\server"
Copy /y "%USERPROFILE%\Downloads\CanaryMod.jar" "%USERPROFILE%\Desktop\server"

REM Run canarymod first time
echo Running Canarymod
cd "%USERPROFILE%\Desktop\server"
Call .\"start_minecraft.bat"

REM accept the EULA
powershell -ExecutionPolicy Bypass -Command "(gc %USERPROFILE%\Desktop\server\eula.txt) -replace 'false', 'true' | Set-Content %USERPROFILE%\Desktop\server\eula.txt"

REM build EZPlugin
cd "%USERPROFILE%\Desktop\code\EZPlugin"
..\..\sh.exe build_lib.sh

echo Done

endlocal
exit /b

:UnZipFile <ExtractTo> <newzipfile>
set vbs="%temp%\_.vbs"
if exist %vbs% del /f /q %vbs%
>%vbs%  echo Set fso = CreateObject("Scripting.FileSystemObject")
>>%vbs% echo If NOT fso.FolderExists(%1) Then
>>%vbs% echo fso.CreateFolder(%1)
>>%vbs% echo End If
>>%vbs% echo set objShell = CreateObject("Shell.Application")
>>%vbs% echo set FilesInZip=objShell.NameSpace(%2).items
>>%vbs% echo Call objShell.NameSpace(%1).CopyHere(FilesInZip, 20)
>>%vbs% echo Set fso = Nothing
>>%vbs% echo Set objShell = Nothing
cscript //nologo %vbs%
if exist %vbs% del /f /q %vbs%

REM Download ahmine and CanaryMod to set up coderdojobelfast Java room environment.

@echo off
setlocal

@set PATH=%PATH%;C:\Program Files\Java\jdk1.8.0_77\bin

REM remove old folders
IF EXIST "%USERPROFILE%\Desktop\server" RD /S /Q "%USERPROFILE%\Desktop\server"
IF EXIST "%USERPROFILE%\Desktop\code" RD /S /Q "%USERPROFILE%\Desktop\code"

REM get busybox
IF NOT EXIST "%USERPROFILE%\Downloads\busybox.exe" (
  bitsadmin.exe /Transfer "Download busybox.exe" /Download http://frippery.org/files/busybox/busybox.exe "%USERPROFILE%\Downloads\busybox.exe"
)
IF NOT EXIST "%USERPROFILE%\Desktop\sh.exe" (
  COPY /b "%USERPROFILE%\Downloads\busybox.exe" "%USERPROFILE%\Desktop\sh.exe"
)

REM get convenience wrapper for sh.exe
IF NOT EXIST "%USERPROFILE%\Downloads\shell.bat" (
  bitsadmin.exe /Transfer "Download shell.bat" /Download https://raw.githubusercontent.com/coderdojobelfast/java/master/shell.bat %USERPROFILE%\Downloads\shell.bat
)
Copy /y /a "%USERPROFILE%\Downloads\shell.bat" "%USERPROFILE%\Desktop\shell.bat"

REM get ahmine, from "Learn to Program with Minecraft Plugins", 2nd Edition, Andy Hunt, (c)2014 The Pragmatic Programmers.
IF NOT EXIST %USERPROFILE%\Downloads\ahmine2-code.zip (
  bitsadmin.exe /Transfer "Download ahmine" /Download http://media.pragprog.com/titles/ahmine2/code/ahmine2-code.zip %USERPROFILE%\Downloads\ahmine2-code.zip
)

REM get CanaryMod
IF NOT EXIST %USERPROFILE%\Downloads\CanaryMod.jar (
  bitsadmin.exe /Transfer "Download CanaryMod" /Download https://canarymod.net/releases/CanaryMod-1.2.0_0.jar %USERPROFILE%\Downloads\CanaryMod.jar
)

REM unpack ahmine
cd /d %~dp0
Call :UnZipFile "%USERPROFILE%\Downloads" "%USERPROFILE%\Downloads\ahmine2-code.zip"
Move /y "%USERPROFILE%\Downloads\code" "%USERPROFILE%\Desktop"

REM copy starter and jar file to server
md %USERPROFILE%\Desktop\server
Copy /y "%USERPROFILE%\Desktop\code\runtime\start_minecraft.bat" "%USERPROFILE%\Desktop\server"
Copy /y "%USERPROFILE%\Downloads\CanaryMod.jar" "%USERPROFILE%\Desktop\server"

REM Run canarymod first time
echo Running Canarymod
cd "%USERPROFILE%\Desktop\server"
Call .\"start_minecraft.bat"

REM accept the EULA
powershell -ExecutionPolicy Bypass -Command "(gc %USERPROFILE%\Desktop\server\eula.txt) -replace 'false', 'true' | Set-Content %USERPROFILE%\Desktop\server\eula.txt"

REM build EZPlugin
cd "%USERPROFILE%\Desktop\code\EZPlugin"
..\..\sh.exe build_lib.sh

echo Done

endlocal
exit /b

:UnZipFile <ExtractTo> <newzipfile>
set vbs="%temp%\_.vbs"
if exist %vbs% del /f /q %vbs%
>%vbs%  echo Set fso = CreateObject("Scripting.FileSystemObject")
>>%vbs% echo If NOT fso.FolderExists(%1) Then
>>%vbs% echo fso.CreateFolder(%1)
>>%vbs% echo End If
>>%vbs% echo set objShell = CreateObject("Shell.Application")
>>%vbs% echo set FilesInZip=objShell.NameSpace(%2).items
>>%vbs% echo Call objShell.NameSpace(%1).CopyHere(FilesInZip, 20)
>>%vbs% echo Set fso = Nothing
>>%vbs% echo Set objShell = Nothing
cscript //nologo %vbs%
if exist %vbs% del /f /q %vbs%

use Java 8

use Java 8


Add npmw batch file.

Add npmw batch file.


@echo off
:: Homepage:  https://github.com/maphew/arcplus/blob/master/SysAdmin/uninstall-ALL-ArcGIS-products.md
:: Copyright 2013 Environment Yukon, License: MIT/X (open source)
:: Author:  Matt.Wilkie@gov.yk.ca
::
set _product_codes=%1
echo. ---------------------------------------------------------------------------
echo.
echo.           Uninstall all ArcGIS products
echo.
echo.           using "%_product_codes%" for Product ID list
echo. ---------------------------------------------------------------------------
echo.
if not exist "%1" goto :no_codes_file
set /p _verify="Are you sure you want to continue? [y/N] " || set _verify=N
if /i not "%_verify%"=="Y" goto :eof

:: msiexec optional parameters here
:: remove '/passive' to hide the pop-up progress window and run silently
set _opt=/passive
if "%2"=="silent" set _opt=

call :from_file %_product_codes%

echo.
echo. Finished, log at:
echo.
echo. %temp%\%~n0-%COMPUTERNAME%.log
echo.
echo. ---------------------------------------------------------------------------
ping -n 7 localhost> nul
goto :eof

:: ---------------------------------------------------------------------------
:uninstall
  :: %1 = product code
  %SystemRoot%\System32\msiexec.exe /x %1 /qn /norestart /l*+ %temp%\%~n0-%COMPUTERNAME%.log %_opt%
  goto :eof

:from_file
  :: Parse product name and id code from Product-Codes.txt
  :: http://ss64.com/nt/for_f.html
  echo.
  for /f "tokens=1,2 delims=^{" %%a in (%1) do (^
    if "%%b"=="" (echo ----- %%a -----) else (echo {%%b - %%a)
    call :uninstall {%%b
    )
  goto :eof

:no_codes_file
  echo.
  echo. "%1" not found
  echo.
  call :Usage
  goto :eof

:Usage
  echo. Usage:
  echo.       %~n0 product-codes.txt
  echo.       %~n0 product-codes.txt /silent
  echo.
  goto :eof

@echo off
:: Homepage:  https://github.com/maphew/arcplus/blob/master/SysAdmin/uninstall-ALL-ArcGIS-products.md
:: Copyright 2013 Environment Yukon, License: MIT/X (open source)
:: Author:  Matt.Wilkie@gov.yk.ca
::
set _product_codes=%1
echo. ---------------------------------------------------------------------------
echo.           Uninstall all ArcGIS products
echo. ---------------------------------------------------------------------------
if not exist "%1" goto :no_codes_file

:: msiexec optional parameters here
:: remove '/passive' to hide the pop-up progress window and run silently
set _opt=/passive
if "%2"=="/silent" set _opt=

call :from_file %_product_codes%

echo.
echo. Finished, log at:
echo.
echo. %temp%\%~n0-%COMPUTERNAME%.log
echo.
echo. ---------------------------------------------------------------------------
ping -n 7 localhost> nul
goto :eof

:: ---------------------------------------------------------------------------
:uninstall
  :: %1 = product code
  %SystemRoot%\System32\msiexec.exe /x %1 /qn /norestart /l*+ %temp%\%~n0-%COMPUTERNAME%.log %_opt%
  goto :eof

:from_file
  :: Parse product name and id code from Product-Codes.txt
  :: http://ss64.com/nt/for_f.html
  echo.
  echo.           using "%_product_codes%" for Product ID list

  for /f "tokens=1,2 delims=^{" %%a in (%1) do (^
    if "%%b"=="" (echo ----- %%a -----) else (echo {%%b - %%a)
    call :uninstall {%%b
    )
  goto :eof

:no_codes_file
  echo.
  echo. Product code file "%1" not found
  echo.
  call :Usage
  echo.&& pause
  goto :eof

:Usage
  echo. Usage:
  echo.       %~n0 product-codes.txt
  echo.       %~n0 product-codes.txt /silent
  echo.
  goto :eof

remove excessive verify prompt; make "/silent" actually work; move code reporting next to function which actually does the work


@echo off
if "%1" == "" goto paramErr
if "%VSINSTALLDIR%" == "" goto envErr

set COMPILER=%1

rem Determine CMake generator
if "%COMPILER%" == "vc71" set GENERATOR="Visual Studio 7 .NET 2003"
if "%COMPILER%" == "vc8" set GENERATOR="Visual Studio 8 2005"
if "%COMPILER%" == "vc8_x64" set GENERATOR="Visual Studio 8 2005 Win64"
if "%COMPILER%" == "vc9" set GENERATOR="Visual Studio 9 2008"
if "%COMPILER%" == "vc9_x64" set GENERATOR="Visual Studio 9 2008 Win64"
if "%COMPILER%" == "vc10" set GENERATOR="Visual Studio 10"
if "%COMPILER%" == "vc10_x64" set GENERATOR="Visual Studio 10 Win64"

if %GENERATOR% == "" goto paramErr

rem check 7z and dot
7z > NUL
if errorlevel 1 goto 7zerror
dot -V > NUL
if errorlevel 1 goto doterror

set BUILD_DIR=%COMPILER%

if "%2" == "clean" rmdir /Q/S %BUILD_DIR%
mkdir %BUILD_DIR%
pushd %BUILD_DIR%
rem call CMake
cmake -DOGRE_INSTALL_SAMPLES_SOURCE:BOOL=TRUE -DOGRE_INSTALL_DOCS:BOOL=TRUE -DOGRE_INSTALL_DEPENDENCIES:BOOL=TRUE -DCMAKE_INSTALL_PREFIX:PATH=%cd%\SDK -G%GENERATOR% ..\..\..
if errorlevel 1 goto cmakeerror
rem call twice to ensure all variables are set properly
cmake -DOGRE_INSTALL_SAMPLES_SOURCE:BOOL=TRUE -DOGRE_INSTALL_DOCS:BOOL=TRUE -DOGRE_INSTALL_DEPENDENCIES:BOOL=TRUE -DCMAKE_INSTALL_PREFIX:PATH=%cd%\SDK -G%GENERATOR% ..\..\..
if errorlevel 1 goto cmakeerror

rem Read OGRE version
set /p OGREVERSION=<version.txt

rem Detect whether we're using full version of VStudio or Express
devenv /? > NUL

if errorlevel 1 goto tryexpress
set DEVENV=devenv
goto detecteddevenv
:tryexpress
set DEVENV=VCExpress
:detecteddevenv

rem build docs explicitly since INSTALL doesn't include it
%DEVENV% OGRE.sln /build "Release" /project "doc"

if errorlevel 1 goto msvcerror

rem Delete unnecessary doc files
pushd api\html
del /Q/F *.hhk *.hhc *.map *.md5 *.dot *.hhp *.plist
popd

rem Build main binaries
%DEVENV% OGRE.sln /build "Debug" /project "INSTALL"
%DEVENV% OGRE.sln /build "Release" /project "INSTALL"

rem call CMake in sdk
pushd sdk
cmake -DBOOST_INCLUDEDIR:PATH=%cd%\boost -DBOOST_LIBRARYDIR=%cd%\boost\lib -DBoost_NO_SYSTEM_PATHS:BOOL=ON -G%GENERATOR% .\
if errorlevel 1 goto cmakeerror
rem delete cache (since it will include absolute paths)
del CMakeCache.txt
rmdir /S/Q CMakeFiles

rem Patch up absolute references to pdbs & debug directories
rem The former should be fixed in a future version of CMake, but the latter is because we configure these files in manually
dir /b /s *.vcproj *.vcproj.user *.vcxproj *.vcxproj.user  > filestopatch.txt
for /F "delims=" %%f in ('type filestopatch.txt') do (
cscript //nologo ..\..\removeabsolutepaths.vbs "%%f"
)
del /Q/F filestopatch.txt
popd

popd

rem Package up
set SDKNAME=OgreSDK_%COMPILER%_v%OGREVERSION%
rmdir /S/Q %SDKNAME%
move %BUILD_DIR%\sdk %SDKNAME%
del /Q/F %SDKNAME%.exe
rem create self-extracting 7zip archive
7z a -r -y -sfx7z.sfx %SDKNAME%.exe %SDKNAME%

echo Done! Test %SDKNAME%.exe and then release
goto end

:paramErr
echo Required: Build tool (vc71, vc8, vc8x64, vc9, vc9x64, vc10, vc10x64)
set errorlevel=1
goto end

:envErr
echo You need to run this script after running vcvars32.bat
set errorlevel=1
goto end

:cmakeerror
popd
echo CMake not found on your path or CMake error - see above and correct
goto end

:7zerror
echo 7z.exe not found on your path, please add
goto end

:doterror
echo dot.exe not found on your path, please add
goto end

:msvcerror
popd
echo Neither devenv.exe nor VCExpress are on your path, use vcvars32.bat
goto end

:end

@echo off
if "%1" == "" goto paramErr
if "%VSINSTALLDIR%" == "" goto envErr

set COMPILER=%1

rem Determine CMake generator
if "%COMPILER%" == "vc71" set GENERATOR="Visual Studio 7 .NET 2003"
if "%COMPILER%" == "vc8" set GENERATOR="Visual Studio 8 2005"
if "%COMPILER%" == "vc8_x64" set GENERATOR="Visual Studio 8 2005 Win64"
if "%COMPILER%" == "vc9" set GENERATOR="Visual Studio 9 2008"
if "%COMPILER%" == "vc9_x64" set GENERATOR="Visual Studio 9 2008 Win64"
if "%COMPILER%" == "vc10" set GENERATOR="Visual Studio 10"
if "%COMPILER%" == "vc10_x64" set GENERATOR="Visual Studio 10 Win64"
if "%COMPILER%" == "vc11" set GENERATOR="Visual Studio 11"
if "%COMPILER%" == "vc11_x64" set GENERATOR="Visual Studio 11 Win64"

if %GENERATOR% == "" goto paramErr

rem check 7z and dot
7z > NUL
if errorlevel 1 goto 7zerror
dot -V > NUL
if errorlevel 1 goto doterror

set BUILD_DIR=%COMPILER%

if "%2" == "clean" rmdir /Q/S %BUILD_DIR%
mkdir %BUILD_DIR%
pushd %BUILD_DIR%
rem call CMake
cmake -DOGRE_INSTALL_SAMPLES_SOURCE:BOOL=TRUE -DOGRE_INSTALL_DOCS:BOOL=TRUE -DOGRE_INSTALL_DEPENDENCIES:BOOL=TRUE -DCMAKE_INSTALL_PREFIX:PATH=%cd%\SDK -G%GENERATOR% ..\..\..
if errorlevel 1 goto cmakeerror
rem call twice to ensure all variables are set properly
cmake -DOGRE_INSTALL_SAMPLES_SOURCE:BOOL=TRUE -DOGRE_INSTALL_DOCS:BOOL=TRUE -DOGRE_INSTALL_DEPENDENCIES:BOOL=TRUE -DCMAKE_INSTALL_PREFIX:PATH=%cd%\SDK -G%GENERATOR% ..\..\..
if errorlevel 1 goto cmakeerror

rem Read OGRE version
set /p OGREVERSION=<version.txt

rem Detect whether we're using full version of VStudio or Express
devenv /? > NUL

if errorlevel 1 goto tryexpress
set DEVENV=devenv
goto detecteddevenv
:tryexpress
set DEVENV=VCExpress
:detecteddevenv

rem build docs explicitly since INSTALL doesn't include it
%DEVENV% OGRE.sln /build "Release" /project "doc"

if errorlevel 1 goto msvcerror

rem Delete unnecessary doc files
pushd api\html
del /Q/F *.hhk *.hhc *.map *.md5 *.dot *.hhp *.plist
popd

rem Build main binaries
%DEVENV% OGRE.sln /build "Debug" /project "INSTALL"
%DEVENV% OGRE.sln /build "Release" /project "INSTALL"

rem call CMake in sdk
pushd sdk
cmake -DBOOST_INCLUDEDIR:PATH=%cd%\boost -DBOOST_LIBRARYDIR=%cd%\boost\lib -DBoost_NO_SYSTEM_PATHS:BOOL=ON -G%GENERATOR% .\
if errorlevel 1 goto cmakeerror
rem delete cache (since it will include absolute paths)
del CMakeCache.txt
rmdir /S/Q CMakeFiles

rem Patch up absolute references to pdbs & debug directories
rem The former should be fixed in a future version of CMake, but the latter is because we configure these files in manually
dir /b /s *.vcproj *.vcproj.user *.vcxproj *.vcxproj.user  > filestopatch.txt
for /F "delims=" %%f in ('type filestopatch.txt') do (
cscript //nologo ..\..\removeabsolutepaths.vbs "%%f"
)
del /Q/F filestopatch.txt
popd

popd

rem Package up
set SDKNAME=OgreSDK_%COMPILER%_v%OGREVERSION%
rmdir /S/Q %SDKNAME%
move %BUILD_DIR%\sdk %SDKNAME%
del /Q/F %SDKNAME%.exe
rem create self-extracting 7zip archive
7z a -r -y -sfx7z.sfx %SDKNAME%.exe %SDKNAME%

echo Done! Test %SDKNAME%.exe and then release
goto end

:paramErr
echo Required: Build tool (vc71, vc8, vc8x64, vc9, vc9x64, vc10, vc10x64, vc11, vc11x64)
set errorlevel=1
goto end

:envErr
echo You need to run this script after running vcvars32.bat
set errorlevel=1
goto end

:cmakeerror
popd
echo CMake not found on your path or CMake error - see above and correct
goto end

:7zerror
echo 7z.exe not found on your path, please add
goto end

:doterror
echo dot.exe not found on your path, please add
goto end

:msvcerror
popd
echo Neither devenv.exe nor VCExpress are on your path, use vcvars32.bat
goto end

:end

Update buildsdk script to support VS2011


echo OFF

set DEFAULT_INSTALL_TARGETS=python-parse python-pkgtk

set ANACONDA_FLAGS="-c conda-forge "%ANACONDA_FLAGS%
if "%ANACONDA_CHANNEL%" == "" (
  set ANACONDA_CHANNEL="statiskit"
) else (
  echo "Using anaconda channel: "%ANACONDA_CHANNEL%
set ANACONDA_FLAGS="-c statiskit "%ANACONDA_FLAGS%
)

if "%INSTALL_TARGETS%" == "" (
  set INSTALL_TARGETS=%DEFAULT_INSTALL_TARGETS%
) else (
  echo "Targets to install: "%INSTALL_TARGETS%
)

echo ON

for %%x in (%INSTALL_TARGETS%) do (
  conda install %%x --use-local -c %ANACONDA_CHANNEL% %ANACONDA_FLAGS%
  if %errorlevel% neq 0 (
    exit /b %errorlevel%
  )
)

echo OFF

set DEFAULT_INSTALL_TARGETS=python-parse python-pkgtk

set ANACONDA_FLAGS=-c conda-forge %ANACONDA_FLAGS%
if "%ANACONDA_CHANNEL%" == "" (
  set ANACONDA_CHANNEL=statiskit
) else (
  echo "Using anaconda channel: "%ANACONDA_CHANNEL%
set ANACONDA_FLAGS=-c statiskit %ANACONDA_FLAGS%
)

if "%INSTALL_TARGETS%" == "" (
  set INSTALL_TARGETS=%DEFAULT_INSTALL_TARGETS%
) else (
  echo "Targets to install: "%INSTALL_TARGETS%
)

echo ON

for %%x in (%INSTALL_TARGETS%) do (
  conda install %%x --use-local -c %ANACONDA_CHANNEL% %ANACONDA_FLAGS%
  if %errorlevel% neq 0 (
    exit /b %errorlevel%
  )
)

Update Appveyor CI

Update Appveyor CI


Rem Simple Batch File to copy ring DLL files and libraries to the bin folder
Rem 2016, Mahmoud Fayed <msfclipper@yahoo.com>

cd ..

copy lib\*.dll bin
copy libdepwin\allegro\bin\*.dll bin
copy libdepwin\freeglut\bin\*.dll bin
copy libdepwin\glew\bin\Release\Win32\*.dll bin
copy libdepwin\libcurl\bin\*.dll bin
copy libdepwin\mysql\lib\*.dll bin
copy libdepwin\openssl\bin\*.dll bin
copy C:\Qt\Qt5.5.1\5.5\mingw492_32\bin\*.dll bin

Rem Simple Batch File to copy ring DLL files and libraries to the bin folder
Rem 2016, Mahmoud Fayed <msfclipper@yahoo.com>

cd ..

copy lib\*.dll bin
copy libdepwin\allegro\bin\*.dll bin
copy libdepwin\freeglut\bin\*.dll bin
copy libdepwin\glew\bin\Release\Win32\*.dll bin
copy libdepwin\libcurl\bin\*.dll bin
copy libdepwin\mysql\lib\*.dll bin
copy libdepwin\openssl\bin\*.dll bin
copy libdepwin\libuv\*.dll bin

copy C:\Qt\Qt5.5.1\5.5\mingw492_32\bin\*.dll bin

Update bin/install.bat

Update bin/install.bat


@SET SUBDIR=%~dp0
@cd %SUBDIR%

@ctest -V -S test.cmake
@SET PATH=C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;%PATH%
@ctest -V -S test.cmake

Add batch script to test 64bit and 32bit MSVC from the terminal


git add .
git commit -a -m "update on %date:~0,10% -%time:~0,20%"
git push http://grasp@github.com/grasp/small_fish_1.git master

git add .
git commit -a -m "update on %date:~0,10% -%time:~0,20%"
git push -f http://grasp@github.com/grasp/small_fish_1.git master

update on 2013-10-19 - 9:36:12.81

update on 2013-10-19 - 9:36:12.81


@echo off
echo "Configure firewall for SEIMS..."
echo "-- Liangjun Zhu, zlj@lreis.ac.cn --"
pushd %~dp0
cd %~dp0
set exePath=%~dp0
for /f "delims=" %%i in ('dir /s/b "*.exe"') do (
echo %%~ni ...
netsh advfirewall firewall add rule name=%%i dir=in action=allow program=%exePath%\%%i.exe ENABLE=yes
)
echo "--- All executable programs configured succeed!"
pause

add bin folder for SEIMS executable programs


java^
 -Xms64m^
 -Xmx3072m^
 -XX:CompileCommand=exclude,javax/swing/text/GlyphView,getBreakSpot^
 -XX:-OmitStackTraceInFastThrow^
 -jar sw.jar

add exclude GlyphView,getBreakSpot argument


@echo off
rem Purpose:  runs the OpenAS2 application

rem Set some of the base system properties for the Java environment and logging
rem remove -Dorg.apache.commons.logging.Log=org.openas2.logging.Log if using another logging package
rem
set EXTRA_PARMS=-Xms32m -Xmx384m  -Dorg.apache.commons.logging.Log=org.openas2.logging.Log
rem For versions of Java that prevent restricted HTTP headers (see documentation for discussion on this)
rem set EXTRA_PARMS=%EXTRA_PARMS% -Dsun.net.http.allowRestrictedHeaders=true

rem set EXTRA_PARMS=%EXTRA_PARMS% -Dhttps.protocols=TLSv1.2

rem Uncomment any of the following for enhanced debug
rem set EXTRA_PARMS=%EXTRA_PARMS% -Dmaillogger.debug.enabled=true
rem set EXTRA_PARMS=%EXTRA_PARMS% -DlogRxdMsgMimeBodyParts=true
rem set EXTRA_PARMS=%EXTRA_PARMS% -DlogRxdMdnMimeBodyParts=true
rem set EXTRA_PARMS=%EXTRA_PARMS% -Djavax.net.debug=SSL

rem Setup the Java Virtual Machine
if not "%JAVA%" == "" goto :Check_JAVA_END
    if not "%JAVA_HOME%" == "" goto :TryJDKEnd
        call :warn JAVA_HOME not set; results may vary
:TryWOWJRE
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Runtime Environment" /s /v CurrentVersion ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Runtime Environment\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" goto :TryWOWJDK
    goto TryJDKEnd
:TryWOWJDK
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Development Kit" /s /v CurrentVersion  ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Development Kit\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" goto :TryJRE
    goto TryJDKEnd
:TryJRE
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Runtime Environment" /s /v CurrentVersion  ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Runtime Environment\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" goto :TryJDK
    goto TryJDKEnd
:TryJDK
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Development Kit" /s /v CurrentVersion  ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Development Kit\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" (
       call :warn Unable to retrieve JAVA_HOME from Registry
    )
:TryJDKEnd
    if not exist "%JAVA_HOME%" (
        call :warn JAVA_HOME is not valid: "%JAVA_HOME%"
        goto END
    )
    set JAVA=%JAVA_HOME%\bin\java
:Check_JAVA_END
set LIB_JARS=../lib/h2-1.4.192.jar;../lib/javax.mail.jar;../lib/bcpkix-jdk15on-154.jar;../lib/bcprov-jdk15on-154.jar;../lib/bcmail-jdk15on-154.jar;../lib/commons-logging-1.2.jar;../lib/openas2-server.jar
rem
"%JAVA%" %EXTRA_PARMS%  -cp .;%LIB_JARS% org.openas2.app.OpenAS2Server ../config/config.xml

:warn
:END

@echo off
rem Purpose:  runs the OpenAS2 application

rem Set some of the base system properties for the Java environment and logging
rem remove -Dorg.apache.commons.logging.Log=org.openas2.logging.Log if using another logging package
rem
set EXTRA_PARMS=-Xms32m -Xmx384m  -Dorg.apache.commons.logging.Log=org.openas2.logging.Log
rem For versions of Java that prevent restricted HTTP headers (see documentation for discussion on this)
rem set EXTRA_PARMS=%EXTRA_PARMS% -Dsun.net.http.allowRestrictedHeaders=true

rem set EXTRA_PARMS=%EXTRA_PARMS% -Dhttps.protocols=TLSv1.2

rem Uncomment any of the following for enhanced debug
rem set EXTRA_PARMS=%EXTRA_PARMS% -Dmaillogger.debug.enabled=true
rem set EXTRA_PARMS=%EXTRA_PARMS% -DlogRxdMsgMimeBodyParts=true
rem set EXTRA_PARMS=%EXTRA_PARMS% -DlogRxdMdnMimeBodyParts=true
rem set EXTRA_PARMS=%EXTRA_PARMS% -Djavax.net.debug=SSL
rem  set EXTRA_PARMS=%EXTRA_PARMS% -DCmdProcessorSocketCipher=SSL_DH_anon_WITH_RC4_128_MD5

rem Setup the Java Virtual Machine
if not "%JAVA%" == "" goto :Check_JAVA_END
    if not "%JAVA_HOME%" == "" goto :TryJDKEnd
        call :warn JAVA_HOME not set; results may vary
:TryWOWJRE
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Runtime Environment" /s /v CurrentVersion ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Runtime Environment\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" goto :TryWOWJDK
    goto TryJDKEnd
:TryWOWJDK
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Development Kit" /s /v CurrentVersion  ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\WOW6432NODE\JavaSoft\Java Development Kit\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" goto :TryJRE
    goto TryJDKEnd
:TryJRE
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Runtime Environment" /s /v CurrentVersion  ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Runtime Environment\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" goto :TryJDK
    goto TryJDKEnd
:TryJDK
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Development Kit" /s /v CurrentVersion  ^| find "CurrentVersion"`) DO (
       set JAVA_VERSION=%%A
    )
    FOR /F "usebackq tokens=3*" %%A IN (`REG QUERY "HKLM\Software\JavaSoft\Java Development Kit\%JAVA_VERSION%" /s /v JavaHome ^| find "JavaHome"`) DO (
       set JAVA_HOME=%%A %%B
    )
    if not exist "%JAVA_HOME%" (
       call :warn Unable to retrieve JAVA_HOME from Registry
    )
:TryJDKEnd
    if not exist "%JAVA_HOME%" (
        call :warn JAVA_HOME is not valid: "%JAVA_HOME%"
        goto END
    )
    set JAVA=%JAVA_HOME%\bin\java
:Check_JAVA_END
set LIB_JARS=../lib/h2-1.4.192.jar;../lib/javax.mail.jar;../lib/bcpkix-jdk15on-154.jar;../lib/bcprov-jdk15on-154.jar;../lib/bcmail-jdk15on-154.jar;../lib/commons-logging-1.2.jar;../lib/openas2-server.jar
rem
"%JAVA%" %EXTRA_PARMS%  -cp .;%LIB_JARS% org.openas2.app.OpenAS2Server ../config/config.xml

:warn
:END

Add the alternate old cipher for ease of switching


@Echo off

if exist "%~dp0required_pwsh" (
    where pwsh >nul 2>nul || goto FALLBACK
    pwsh -NoProfile -NoLogo -ExecutionPolicy unrestricted -File "%~dp0Prebuilt.ps1" %*
    goto :EOF
)

:FALLBACK
PowerShell -NoProfile -NoLogo -ExecutionPolicy unrestricted -File "%~dp0Prebuilt.ps1" %*

[clangbuilder] add script to download/config prebuilt binary


cd ..\src

..\build\tools\nuget.exe restore DeploymentCockpit.sln

set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v4.0.30319
call %msBuildDir%\msbuild.exe DeploymentCockpit.sln /p:Configuration=Release /t:Clean,Build /l:FileLogger,Microsoft.Build.Engine;logfile=..\build\build.log
set msBuildDir=

cd ..\build

rd .\BuildOutput /S /Q
md .\BuildOutput

md .\BuildOutput\Database
copy .\include\GenerateChangeScript.bat .\BuildOutput\Database
copy ..\src\DeploymentCockpit.Database\bin\Release\DeploymentCockpit.Database.dacpac .\BuildOutput\Database
copy ..\src\DeploymentCockpit.Database\bin\Release\DeploymentCockpit.Database_Create.sql .\BuildOutput\Database
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {(Get-Content .\BuildOutput\Database\DeploymentCockpit.Database_Create.sql) | ForEach-Object { $_ -replace 'DeploymentCockpit.Database', 'DeploymentCockpit' } | Set-Content .\BuildOutput\Database\DeploymentCockpit.Database_Create.sql}"

md .\BuildOutput\Server
xcopy ..\src\DeploymentCockpit.Server\bin\*.dll .\BuildOutput\Server\bin /I
xcopy ..\src\DeploymentCockpit.Server\App_Start\*.cs .\BuildOutput\Server\App_Start /I
copy ..\src\DeploymentCockpit.Server\Global.asax .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\Web.config .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\AppSettings.config .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\ConnectionStrings.config .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\index.html .\BuildOutput\Server
xcopy ..\src\DeploymentCockpit.Server\app\* .\BuildOutput\Server\app /I /S /EXCLUDE:exclusions.txt
xcopy ..\src\DeploymentCockpit.Server\assets\* .\BuildOutput\Server\assets /I /S /EXCLUDE:exclusions.txt
xcopy ..\src\DeploymentCockpit.Server\ext\* .\BuildOutput\Server\ext /I /S /EXCLUDE:exclusions.txt

md .\BuildOutput\JobRunner
xcopy ..\src\DeploymentCockpit.JobRunner\bin\Release\DeploymentCockpit.JobRunner.exe* .\BuildOutput\JobRunner
xcopy ..\src\DeploymentCockpit.JobRunner\bin\Release\*.dll .\BuildOutput\JobRunner
copy ..\src\DeploymentCockpit.JobRunner\AppSettings.config .\BuildOutput\JobRunner
copy ..\src\DeploymentCockpit.JobRunner\ConnectionStrings.config .\BuildOutput\JobRunner

md .\BuildOutput\Target
xcopy ..\src\DeploymentCockpit.Target\bin\Release\DeploymentCockpit.Target.exe* .\BuildOutput\Target
xcopy ..\src\DeploymentCockpit.Target\bin\Release\*.dll .\BuildOutput\Target
copy ..\src\DeploymentCockpit.Target\AppSettings.config .\BuildOutput\Target

if "%1" == "update" (
    rem Add .sample extension to avoid replacing files during update
    ren .\BuildOutput\Server\AppSettings.config AppSettings.config.sample
    ren .\BuildOutput\Server\ConnectionStrings.config ConnectionStrings.config.sample
    ren .\BuildOutput\JobRunner\AppSettings.config AppSettings.config.sample
    ren .\BuildOutput\JobRunner\ConnectionStrings.config ConnectionStrings.config.sample
    ren .\BuildOutput\Target\AppSettings.config AppSettings.config.sample
)

.\tools\7z.exe a .\BuildOutput\DeploymentCockpit.zip .\BuildOutput\*
rd .\BuildOutput\Database /S /Q
rd .\BuildOutput\Server /S /Q
rd .\BuildOutput\JobRunner /S /Q
rd .\BuildOutput\Target /S /Q

cd ..\src

..\build\tools\nuget.exe restore DeploymentCockpit.sln

set msBuildDir=%WINDIR%\Microsoft.NET\Framework\v4.0.30319
call %msBuildDir%\msbuild.exe DeploymentCockpit.sln /p:Configuration=Release /t:Clean,Build /l:FileLogger,Microsoft.Build.Engine;logfile=..\build\build.log /p:VisualStudioVersion=12.0
set msBuildDir=

cd ..\build

rd .\BuildOutput /S /Q
md .\BuildOutput

md .\BuildOutput\Database
copy .\include\GenerateChangeScript.bat .\BuildOutput\Database
copy ..\src\DeploymentCockpit.Database\bin\Release\DeploymentCockpit.Database.dacpac .\BuildOutput\Database
copy ..\src\DeploymentCockpit.Database\bin\Release\DeploymentCockpit.Database_Create.sql .\BuildOutput\Database
PowerShell -NoProfile -ExecutionPolicy Bypass -Command "& {(Get-Content .\BuildOutput\Database\DeploymentCockpit.Database_Create.sql) | ForEach-Object { $_ -replace 'DeploymentCockpit.Database', 'DeploymentCockpit' } | Set-Content .\BuildOutput\Database\DeploymentCockpit.Database_Create.sql}"

md .\BuildOutput\Server
xcopy ..\src\DeploymentCockpit.Server\bin\*.dll .\BuildOutput\Server\bin /I
xcopy ..\src\DeploymentCockpit.Server\App_Start\*.cs .\BuildOutput\Server\App_Start /I
copy ..\src\DeploymentCockpit.Server\Global.asax .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\Web.config .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\AppSettings.config .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\ConnectionStrings.config .\BuildOutput\Server
copy ..\src\DeploymentCockpit.Server\index.html .\BuildOutput\Server
xcopy ..\src\DeploymentCockpit.Server\app\* .\BuildOutput\Server\app /I /S /EXCLUDE:exclusions.txt
xcopy ..\src\DeploymentCockpit.Server\assets\* .\BuildOutput\Server\assets /I /S /EXCLUDE:exclusions.txt
xcopy ..\src\DeploymentCockpit.Server\ext\* .\BuildOutput\Server\ext /I /S /EXCLUDE:exclusions.txt

md .\BuildOutput\JobRunner
xcopy ..\src\DeploymentCockpit.JobRunner\bin\Release\DeploymentCockpit.JobRunner.exe* .\BuildOutput\JobRunner
xcopy ..\src\DeploymentCockpit.JobRunner\bin\Release\*.dll .\BuildOutput\JobRunner
copy ..\src\DeploymentCockpit.JobRunner\AppSettings.config .\BuildOutput\JobRunner
copy ..\src\DeploymentCockpit.JobRunner\ConnectionStrings.config .\BuildOutput\JobRunner

md .\BuildOutput\Target
xcopy ..\src\DeploymentCockpit.Target\bin\Release\DeploymentCockpit.Target.exe* .\BuildOutput\Target
xcopy ..\src\DeploymentCockpit.Target\bin\Release\*.dll .\BuildOutput\Target
copy ..\src\DeploymentCockpit.Target\AppSettings.config .\BuildOutput\Target

if "%1" == "update" (
    rem Add .sample extension to avoid replacing files during update
    ren .\BuildOutput\Server\AppSettings.config AppSettings.config.sample
    ren .\BuildOutput\Server\ConnectionStrings.config ConnectionStrings.config.sample
    ren .\BuildOutput\JobRunner\AppSettings.config AppSettings.config.sample
    ren .\BuildOutput\JobRunner\ConnectionStrings.config ConnectionStrings.config.sample
    ren .\BuildOutput\Target\AppSettings.config AppSettings.config.sample
)

.\tools\7z.exe a .\BuildOutput\DeploymentCockpit.zip .\BuildOutput\*
rd .\BuildOutput\Database /S /Q
rd .\BuildOutput\Server /S /Q
rd .\BuildOutput\JobRunner /S /Q
rd .\BuildOutput\Target /S /Q

Fix the build

Fix the build


@echo off

REM Copyright (C) 2017 The Qt Company Ltd.
REM Contact: https://www.qt.io/licensing/
REM
REM This file is part of Qbs.
REM
REM $QT_BEGIN_LICENSE:LGPL$
REM Commercial License Usage
REM Licensees holding valid commercial Qt licenses may use this file in
REM accordance with the commercial license agreement provided with the
REM Software or, alternatively, in accordance with the terms contained in
REM a written agreement between you and The Qt Company. For licensing terms
REM and conditions see https://www.qt.io/terms-conditions. For further
REM information use the contact form at https://www.qt.io/contact-us.
REM
REM GNU Lesser General Public License Usage
REM Alternatively, this file may be used under the terms of the GNU Lesser
REM General Public License version 3 as published by the Free Software
REM Foundation and appearing in the file LICENSE.LGPL3 included in the
REM packaging of this file. Please review the following information to
REM ensure the GNU Lesser General Public License version 3 requirements
REM will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
REM
REM GNU General Public License Usage
REM Alternatively, this file may be used under the terms of the GNU
REM General Public License version 2.0 or (at your option) the GNU General
REM Public license version 3 or any later version approved by the KDE Free
REM Qt Foundation. The licenses are as published by the Free Software
REM Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
REM included in the packaging of this file. Please review the following
REM information to ensure the GNU General Public License requirements will
REM be met: https://www.gnu.org/licenses/gpl-2.0.html and
REM https://www.gnu.org/licenses/gpl-3.0.html.
REM
REM $QT_END_LICENSE$

setlocal enabledelayedexpansion || exit /b
if not exist VERSION ( echo This script must be run from the qbs source directory 1>&2 && exit /b 1 )
for /f %%j in (VERSION) do ( set "version=!version!%%j," )
set "version=%version:~0,-1%"

set builddir=%TEMP%\qbs-release-%version%
if exist "%builddir%" ( del /s /q "%builddir%" || exit /b )

qbs setup-toolchains --settings-dir "%builddir%\.settings" --detect || exit /b

if exist "%QTDIR%" (
    qbs setup-qt --settings-dir "%builddir%\.settings"^
     "%QTDIR%\bin\qmake.exe" qt || exit /b
) else (
    echo QTDIR environment variable not set or does not exist: %QTDIR%
    exit /b 1
)
if exist "%QTDIR64%" (
    qbs setup-qt --settings-dir "%builddir%\.settings"^
     "%QTDIR64%\bin\qmake.exe" qt64 || exit /b
) else (
    echo QTDIR64 environment variable not set or does not exist: %QTDIR64%
    exit /b 1
)

REM Work around QBS-1142, where symlinks to UNC named paths aren't resolved
REM properly, for example if this command is being run in a Docker container
REM where the current directory is a symlink
(robocopy "%CD%" "%builddir%\source" /e /njh /njs /ndl /nc /ns /xd .git) ^& IF %ERRORLEVEL% GTR 1 exit %ERRORLEVEL%

qbs build --settings-dir "%builddir%\.settings"^
 -f "%builddir%\source" -d "%builddir%\build"^
 -p dist qbs.buildVariant:release dist.includeTopLevelDir:true^
 release "qbs.installRoot:%builddir%\qbs-windows-x86-%version%" profile:qt^
 release-64 "qbs.installRoot:%builddir%\qbs-windows-x86_64-%version%" profile:qt64 || exit /b

copy /y "%builddir%\build\release\qbs-windows-x86-%version%.zip" dist || exit /b
copy /y "%builddir%\build\release-64\qbs-windows-x86_64-%version%.zip" dist || exit /b

@echo off

REM Copyright (C) 2017 The Qt Company Ltd.
REM Contact: https://www.qt.io/licensing/
REM
REM This file is part of Qbs.
REM
REM $QT_BEGIN_LICENSE:LGPL$
REM Commercial License Usage
REM Licensees holding valid commercial Qt licenses may use this file in
REM accordance with the commercial license agreement provided with the
REM Software or, alternatively, in accordance with the terms contained in
REM a written agreement between you and The Qt Company. For licensing terms
REM and conditions see https://www.qt.io/terms-conditions. For further
REM information use the contact form at https://www.qt.io/contact-us.
REM
REM GNU Lesser General Public License Usage
REM Alternatively, this file may be used under the terms of the GNU Lesser
REM General Public License version 3 as published by the Free Software
REM Foundation and appearing in the file LICENSE.LGPL3 included in the
REM packaging of this file. Please review the following information to
REM ensure the GNU Lesser General Public License version 3 requirements
REM will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
REM
REM GNU General Public License Usage
REM Alternatively, this file may be used under the terms of the GNU
REM General Public License version 2.0 or (at your option) the GNU General
REM Public license version 3 or any later version approved by the KDE Free
REM Qt Foundation. The licenses are as published by the Free Software
REM Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
REM included in the packaging of this file. Please review the following
REM information to ensure the GNU General Public License requirements will
REM be met: https://www.gnu.org/licenses/gpl-2.0.html and
REM https://www.gnu.org/licenses/gpl-3.0.html.
REM
REM $QT_END_LICENSE$

setlocal enabledelayedexpansion || exit /b
if not exist VERSION ( echo This script must be run from the qbs source directory 1>&2 && exit /b 1 )
for /f %%j in (VERSION) do ( set "version=!version!%%j," )
set "version=%version:~0,-1%"

set builddir=%TEMP%\qbs-release-%version%
if exist "%builddir%" ( del /s /q "%builddir%" || exit /b )

qbs setup-toolchains --settings-dir "%builddir%\.settings" --detect || exit /b

if exist "%QTDIR%" (
    qbs setup-qt --settings-dir "%builddir%\.settings"^
     "%QTDIR%\bin\qmake.exe" qt || exit /b
) else (
    echo QTDIR environment variable not set or does not exist: %QTDIR%
    exit /b 1
)
if exist "%QTDIR64%" (
    qbs setup-qt --settings-dir "%builddir%\.settings"^
     "%QTDIR64%\bin\qmake.exe" qt64 || exit /b
) else (
    echo QTDIR64 environment variable not set or does not exist: %QTDIR64%
    exit /b 1
)

REM Work around QBS-1142, where symlinks to UNC named paths aren't resolved
REM properly, for example if this command is being run in a Docker container
REM where the current directory is a symlink
(robocopy "%CD%" "%builddir%\source" /e /njh /njs /ndl /nc /ns /xd .git) ^& IF %ERRORLEVEL% GTR 1 exit %ERRORLEVEL%

qbs build --settings-dir "%builddir%\.settings"^
 -f "%builddir%\source" -d "%builddir%\build"^
 -p dist qbs.buildVariant:release products.dist.includeTopLevelDir:true^
 release "qbs.installRoot:%builddir%\qbs-windows-x86-%version%" profile:qt^
 release-64 "qbs.installRoot:%builddir%\qbs-windows-x86_64-%version%" profile:qt64 || exit /b

copy /y "%builddir%\build\release\qbs-windows-x86-%version%.zip" dist || exit /b
copy /y "%builddir%\build\release-64\qbs-windows-x86_64-%version%.zip" dist || exit /b

Fix layout of windows src packages

Fix layout of windows src packages

The command line argument must be fully qualified with "products".

Change-Id: I9337b08c9da43edbfc9f20bce5413bbd60e919bb
Reviewed-by: Joerg Bornemann <47777b9406dbddd02a3fdca8341789a013805a11@qt.io>
Reviewed-by: Christian Kandeler <3aa99dcdd3f0cac61fb81c2a11771c0cc2497607@qt.io>


# Copyright 2009 The Go Authors.  All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.

all: $(TARG)

# ugly hack to deal with whitespaces in $GOROOT
nullstring :=
space := $(nullstring) # a space at the end
QUOTED_GOROOT:=$(subst $(space),\ ,$(GOROOT))

include $(QUOTED_GOROOT)/src/Make.common

ifeq ($(GOOS),windows)
TARG:=$(TARG).exe
endif

PREREQ+=$(patsubst %,%.make,$(DEPS))

$(TARG): _go_.$O $(OFILES)
	$(QUOTED_GOBIN)/$(LD) -o $@ _go_.$O $(OFILES)

_go_.$O: $(GOFILES) $(PREREQ)
	$(QUOTED_GOBIN)/$(GC) -o $@ $(GOFILES)

install: $(QUOTED_GOBIN)/$(TARG)

$(QUOTED_GOBIN)/$(TARG): $(TARG)
	cp -f $(TARG) $(QUOTED_GOBIN)

CLEANFILES+=$(TARG)

nuke: clean
	rm -f $(QUOTED_GOBIN)/$(TARG)

# Copyright 2009 The Go Authors.  All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.

ifeq ($(GOOS),windows)
TARG:=$(TARG).exe
endif

all: $(TARG)

# ugly hack to deal with whitespaces in $GOROOT
nullstring :=
space := $(nullstring) # a space at the end
QUOTED_GOROOT:=$(subst $(space),\ ,$(GOROOT))

include $(QUOTED_GOROOT)/src/Make.common

PREREQ+=$(patsubst %,%.make,$(DEPS))

$(TARG): _go_.$O $(OFILES)
	$(QUOTED_GOBIN)/$(LD) -o $@ _go_.$O $(OFILES)

_go_.$O: $(GOFILES) $(PREREQ)
	$(QUOTED_GOBIN)/$(GC) -o $@ $(GOFILES)

install: $(QUOTED_GOBIN)/$(TARG)

$(QUOTED_GOBIN)/$(TARG): $(TARG)
	cp -f $(TARG) $(QUOTED_GOBIN)

CLEANFILES+=$(TARG)

nuke: clean
	rm -f $(QUOTED_GOBIN)/$(TARG)

fix windows Make.cmd:
- TARG had extra space at the end;
- it should be set before "all" target.

R=rsc, Joe Poirier
CC=golang-dev
http://codereview.appspot.com/1846042

Committer: Alex Brainman <54ba58c8441b5eff861de6b4e5ee46baf086b142@gmail.com>


@echo off

call :BuildConfiguration Debug Win32 || goto :eof
call :BuildConfiguration Release Win32 || goto :eof
call :BuildConfiguration Debug "Any CPU" || goto :eof
call :BuildConfiguration Release "Any CPU" || goto :eof
call :BuildConfiguration ReleaseWithExceptions Win32 || goto :eof

title Done!
echo Done!
goto :eof

:BuildConfiguration
title Building %1 - %2
echo ^>^>^>^>^>^> Building %1 - %2 ^<^<^<^<^<^<
"%ProgramFiles(x86)%\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSbuild.exe" /t:Build /p:Configuration=%1 /property:Platform=%2 "Jewel3D.sln"
if errorlevel 1 (
   title Build Failure %1 - %2
   echo ^>^>^>^>^>^> Build Failure %1 - %2 ^<^<^<^<^<^<
   pause
)
goto :eof

@echo off

if not "%1" == "-r" (
	call :BuildConfiguration Debug Win32 || goto :eof
	call :BuildConfiguration Debug "Any CPU" || goto :eof
)
if not "%1" == "-d" (
	call :BuildConfiguration Release Win32 || goto :eof
	call :BuildConfiguration Release "Any CPU" || goto :eof
	call :BuildConfiguration ReleaseWithExceptions Win32 || goto :eof
)

title Done!
echo Done!
goto :eof

:BuildConfiguration
title Building %1 - %2
echo ^>^>^>^>^>^> Building %1 - %2 ^<^<^<^<^<^<
"%ProgramFiles(x86)%\Microsoft Visual Studio\2017\BuildTools\MSBuild\15.0\Bin\MSbuild.exe" /v:m /t:Build /p:Configuration=%1 /property:Platform=%2 "Jewel3D.sln"
if errorlevel 1 (
   title Build Failure %1 - %2
   echo ^>^>^>^>^>^> Build Failure %1 - %2 ^<^<^<^<^<^<
   pause
)
goto :eof

BUILD script can now select to build only Debug or Release

- Reduced the verbosity of the BUILD script


@echo OFF

:: change these variables to fit your system

:: path to dp2 command line interface
SET DP2=C:\Program\daisy-pipeline\cli\dp2
:: use this directory to store results
SET TARGET=C:\MY_DATA\EPUB\migrator-batch-convert
 :: read *.xml files in this directory and its subdirectories
SET SOURCE=C:\MY_DATA\Arkiv\arkiv-test
 :: I added this line for retrieving css content in the html report /TJ
SET BATCH_HOME=C:\MY_LOCAL_SCRIPTS\nordic-epub3-dtbook-migrator-batch

mkdir "%TARGET%\zip"
mkdir "%TARGET%\log"
mkdir "%TARGET%\epub"

SET current_date=%date%
SET startTime=%time%

SET /a sth=%startTime:~0,2%
SET /a stm=1%startTime:~3,2% - 100
SET /a sts=1%startTime:~6,2% - 100

SET SCRIPT_1=nordic-dtbook-validate
SET SCRIPT_2=nordic-dtbook-to-epub3
SET SCRIPT_3=nordic-epub3-validate
SET SCRIPT_4=nordic-epub3-to-dtbook
SET LOGFILE=%TARGET%\report-%current_date%-%sth%-%stm%-%sts%.html

SET /a SOURCE_DTBOOK_COUNT=0

DEL "%LOGFILE%"
echo "Writing output to LOGFILE"

PUSHD %SOURCE%
FOR /R %%A IN (*.xml) DO SET /a SOURCE_DTBOOK_COUNT+=1
SET /A PROGRESSBAR_INCREMENTS=100/(%SOURCE_DTBOOK_COUNT%*4)

CALL :log "<!DOCTYPE html>"
CALL :log ""
CALL :log ""
CALL :log "    <meta encoding="utf-8"/>"
CALL :log "    <title>Nordic EPUB3/DTBook batch conversion</title>"
CALL :log "    <meta name=""viewport"" content=""width=device-width, initial-scale=1.0"" />"
CALL :log "    "
CALL :log "    "
CALL :log ""
CALL :log ""
CALL :log "
"
CALL :log "
Nordic EPUB3/DTBook batch conversion
"
CALL :log "
Start time: %current_date%-%sth%-%stm%-%sts%
"
CALL :log "
DTBook files: %SOURCE_DTBOOK_COUNT%
"
CALL :log "
"
CALL :log "
"
CALL :log "    0__DONE"
CALL :log "
"
CALL :log "
"
CALL :log "
"
CALL :log "
"
CALL :log "    0__FAILED"
CALL :log "
"
CALL :log "
"
CALL :log "
"
CALL :log "
"
CALL :log "    0__SKIPPED"
CALL :log "
"
CALL :log "
"
CALL :log "
"
CALL :log "

"
CALL :log "Book ID	"
CALL :log "%SCRIPT_1%	"
CALL :log "%SCRIPT_2%	"
CALL :log "%SCRIPT_3%	"
CALL :log "%SCRIPT_4%	"
CALL :log "

"

SET /a PROGRESS_DONE_COUNT=0
SET /a PROGRESS_SKIPPED_COUNT=0
SET /a PROGRESS_FAILED_COUNT=0

FOR /R %%I IN (*.xml) DO CALL :nordic_test %%~nI %%~dpI
POPD

:: finishing the log file
CALL :log "

"
CALL :log "
Finish time: %current_date%-%sth%-%stm%-%sts%
"
CALL :log "
"
CALL :log ""

echo "Report file: %LOGFILE%"

:: ------------------------------------------------------------------------------------------
:: FUNCTION SECTION
:: ------------------------------------------------------------------------------------------

:log

SET var=%1
SET var=%var:>=^>%
SET var=%var:<=^<%
SET var=%var:""="%
echo %var:~1,-1% >> "%LOGFILE%"
goto :eof

:html_h1
    CALL :log "
%1
"
goto :eof

:html_h2
    CALL :log "
%1
"
goto :eof

:html_h3
    CALL :log "
%1
"
goto :eof

:html_tr
    CALL :log "
"
goto :eof

:html_tr_end
    CALL :log "
"
goto :eof

:html_td
    if "%1" == "DONE" (
        CALL :log "
"
    ) else (
        if "%1" == "VALIDATION_FAIL" (
        CALL :log "
"
        ) else (
        CALL :log "
"
		)
	)
 goto :eof

:html_td_end
    CALL :log "
	"
goto :eof

:html_li
    if "%2" == "" (
        CALL :log "
%~1
"
    ) else (
        CALL :log "
%~1
"
    )
goto :eof

:update_progress
    SET STATUS=%1
    SET /a COUNT=0
    if %STATUS% == DONE (
        SET STATUS=done
        SET /a PROGRESS_DONE_COUNT=%PROGRESS_DONE_COUNT% + 1
        SET /a COUNT=%PROGRESS_DONE_COUNT%
	) else (
        if %STATUS% == SKIPPED (
            SET STATUS=skipped
            SET /a PROGRESS_SKIPPED_COUNT=%PROGRESS_SKIPPED_COUNT% + 1
            SET /a COUNT=%PROGRESS_SKIPPED_COUNT%
    ) else (
            SET STATUS=failed
            SET /a PROGRESS_FAILED_COUNT=%PROGRESS_FAILED_COUNT% + 1
            SET /a COUNT=%PROGRESS_FAILED_COUNT%
        )
	)
    SET /A PROGRESS=%PROGRESSBAR_INCREMENTS% * %COUNT%

    CALL :log ""
    CALL :log ""
goto :eof

:nordic_test
    :: takes two parameters; first the id, then the full file path
    CALL :html_tr
    CALL :log "%1	"

    SET STATUS_1=""
    SET STATUS_2=""
    SET STATUS_3=""
    SET STATUS_4=""

	SET CURRENT_FILE=%1
	SET CURRENT_PATH=%2

	IF EXIST "%CURRENT_PATH%%CURRENT_FILE%.xml" (
	CALL :runNordicDtbVal %%CURRENT_FILE%% %%CURRENT_PATH%%
        ) else (
        CALL :html_td "danger"
        CALL :html_li "Status: SKIPPED"
        CALL :html_li "DTBook not found: %%2"
        CALL :update_progress SKIPPED
        CALL :html_td_end

		    CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

			CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

			CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

    CALL :html_tr_end
	)
	goto :eof

:runNordicDtbVal

	START /WAIT %DP2% %SCRIPT_1% --x-no-legacy="true" --x-dtbook="%2%1.xml" --output="%TARGET%\zip\%1.%SCRIPT_1%.zip" -p
    START /B /W %DP2% log --lastid --file="%TARGET%\log\%1.%SCRIPT_1%.log"
        MKDIR "%TARGET%\zip\%1.%SCRIPT_1%"
        7z x %TARGET%\zip\%1.%SCRIPT_1%.zip -o%TARGET%\zip\%1.%SCRIPT_1%

		START /B /W %DP2% status -l>>"%TARGET%\zip\%1.%SCRIPT_1%\status.txt"
		FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_1%\status.txt">>"%TARGET%\zip\%1.%SCRIPT_1%\validation-status.txt"

		FOR /F "tokens=1,2,3 delims=: " %%M IN ('FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_1%\validation-status.txt"') DO SET STATUS_1=%%O
        CALL :update_progress %%STATUS_1%%
        SET HTML_1=%TARGET%\zip\%1.%SCRIPT_1%\html-report\html-report.xml
        SET LOG_1=%TARGET%\log\%1.%SCRIPT_1%.log
		CALL :html_td %%STATUS_1%%
        CALL :html_li "Status: %%STATUS_1%%"
        CALL :html_li "HTML report" %%HTML_1%%
        CALL :html_li "detailed log" %%LOG_1%%
        CALL :html_li "basename %2" %2
        CALL :html_td_end
		START /B /W %DP2% delete --lastid

		CALL :runDtbToEpub %CURRENT_FILE% %CURRENT_PATH%

	goto :eof

:runDtbToEpub
IF "%STATUS_1%" == "DONE" (
START /WAIT %DP2% %SCRIPT_2% --x-no-legacy="false" --x-strict="false" --x-dtbook="%2%1.xml" --output="%TARGET%\zip\%1.%SCRIPT_2%.zip" -p
            START /B /W %DP2% log --lastid --file="%TARGET%\log\%1.%SCRIPT_2%.log"

            MKDIR "%TARGET%\zip\%1.%SCRIPT_2%"
            7z x %TARGET%\zip\%1.%SCRIPT_2%.zip -o%TARGET%\zip\%1.%SCRIPT_2%
			START /B /W %DP2% status -l>>"%TARGET%\zip\%1.%SCRIPT_2%\status.txt"
            FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_2%\status.txt">>"%TARGET%\zip\%1.%SCRIPT_2%\validation-status.txt"

			FOR /F "tokens=1,2,3 delims=: " %%M IN ('FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_2%\validation-status.txt"') DO SET STATUS_2=%%O
            CALL :update_progress %%STATUS_2%%
            SET LOG_2=%TARGET%\log\%1.%SCRIPT_2%.log
            SET HTML_2=%TARGET%\zip\%1.%SCRIPT_2%\html-report\html-report.xml
			CALL :html_td %%STATUS_2%%
			CALL :html_li "Status: %%STATUS_2%%"
			CALL :html_li "HTML report" %%HTML_2%%
			CALL :html_li "detailed log" %%LOG_2%%
			CALL :html_li "basename %%2" %%2
			CALL :html_td_end
			START /W %DP2% delete --lastid

			SET EPUB=%TARGET%\zip\%1.%SCRIPT_2%\output-dir\%1.epub
			SET EPUB_PTH=%TARGET%\zip\%1.%SCRIPT_2%\output-dir\

			CALL :runNordicEpubVal %CURRENT_FILE%
			) else (
            CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

			CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

			CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

			CALL :html_tr_end
        )
	goto :eof

:runNordicEpubVal
IF "%STATUS_2%" == "DONE" (
            START /W %DP2% %SCRIPT_3% --x-strict="false" --x-epub="%EPUB%" --output="%TARGET%\zip\%1.%SCRIPT_3%.zip" -p
            START /B /W %DP2% log --lastid --file="%TARGET%\log\%1.%SCRIPT_3%.log"
            MKDIR "%TARGET%\zip\%1.%SCRIPT_3%"
            7z x %TARGET%\zip\%1.%SCRIPT_3%.zip -o%TARGET%\zip\%1.%SCRIPT_3%
            START /B /W %DP2% status -l>>"%TARGET%\zip\%1.%SCRIPT_3%\status.txt"
            FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_3%\status.txt">>"%TARGET%\zip\%1.%SCRIPT_3%\validation-status.txt"
			FOR /F "tokens=1,2,3 delims=: " %%M IN ('FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_3%\validation-status.txt"') DO SET STATUS_3=%%O
            CALL :update_progress %%STATUS_3%%
			SET LOG_3=%TARGET%\log\%1.%SCRIPT_3%.log
            SET HTML_3=%TARGET%\zip\%1.%SCRIPT_3%\html-report\html-report.xml
			CALL :html_td %%STATUS_3%%
			CALL :html_li "Status: %%STATUS_3%%"
			CALL :html_li "HTML report" %%HTML_3%%
			CALL :html_li "detailed log" %%LOG_3%%
            CALL :html_li "basename %%EPUB%%" %%EPUB_PTH%%
            CALL :html_td_end
            START /W %DP2% delete --lastid

	   CALL :runNordicEpubToDtb %CURRENT_FILE%
			) else (
            CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

			CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end

			CALL :html_tr_end
			)
	goto :eof

:runNordicEpubToDtb
IF "%STATUS_3%" == "DONE" (
            START /W %DP2% %SCRIPT_4% --x-strict="false" --x-epub="%EPUB%" --output="%TARGET%\zip\%1.%SCRIPT_4%.zip" -p
            START /B /W %DP2% log --lastid --file="%TARGET%\log\%1.%SCRIPT_4%.log"
            MKDIR "%TARGET%\zip\%1.%SCRIPT_4%"
            7z x %TARGET%\zip\%1.%SCRIPT_4%.zip -o%TARGET%\zip\%1.%SCRIPT_4%
            START /B /W %DP2% status -l>>"%TARGET%\zip\%1.%SCRIPT_4%\status.txt"
            FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_4%\status.txt">>"%TARGET%\zip\%1.%SCRIPT_4%\validation-status.txt"
			FOR /F "tokens=1,2,3 delims=: " %%M IN ('FINDSTR "Status" "%TARGET%\zip\%1.%SCRIPT_4%\validation-status.txt"') DO SET STATUS_4=%%O
            CALL :update_progress %%STATUS_4%%
			SET LOG_4=%TARGET%\log\%1.%SCRIPT_4%.log
            SET HTML_4=%TARGET%\zip\%1.%SCRIPT_4%\html-report\html-report.xml
			CALL :html_td %%STATUS_4%%
			CALL :html_li "Status: %%STATUS_4%%"
			CALL :html_li "HTML report" %%HTML_4%%
			CALL :html_li "detailed log" %%LOG_4%%
            CALL :html_li "basename %%EPUB%%" %%EPUB_PTH%%
            CALL :html_td_end
			CALL :html_tr_end
            START /W %DP2% delete --lastid

						) else (
            CALL :html_td
            CALL :html_li "Status: SKIPPED"
            CALL :update_progress SKIPPED
            CALL :html_td_end
			CALL :html_tr_end
			)
	goto :eof

Create run.bat

Create run.bat


REM  Licensed to the Apache Software Foundation (ASF) under one
REM  or more contributor license agreements.  See the NOTICE file
REM  distributed with this work for additional information
REM  regarding copyright ownership.  The ASF licenses this file
REM  to you under the Apache License, Version 2.0 (the
REM  "License"); you may not use this file except in compliance
REM  with the License.  You may obtain a copy of the License at
REM
REM    https://www.apache.org/licenses/LICENSE-2.0
REM
REM  Unless required by applicable law or agreed to in writing,
REM  software distributed under the License is distributed on an
REM  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
REM  KIND, either express or implied.  See the License for the
REM  specific language governing permissions and limitations
REM  under the License.

echo off

REM Set up the solution file in Windows.

set my_cmake_path="put_your_cmake_path_here"
set cmake_path_win7="C:\Program Files (x86)\CMake 2.8\bin\cmake.exe"
set cmake_path_xp="C:\Program Files\CMake 2.8\bin\cmake.exe"

if exist %my_cmake_path% (
   set cmake_path=%my_cmake_path%
   goto RUN_CMAKE
)

if exist %cmake_path_win7% (
   set cmake_path=%cmake_path_win7%
   goto RUN_CMAKE
)

if exist %cmake_path_xp% (
   set cmake_path=%cmake_path_xp%
   goto RUN_CMAKE
)

echo "Set the proper cmake path in the variable 'my_cmake_path' in cmake_windows.bat, and re-run"
goto EXIT_ERROR

:RUN_CMAKE
%cmake_path% -G"Visual Studio 9 2008" -H. -Bbuild_win32

:EXIT_ERROR

Remove trailing ^M to make Git happy

Remove trailing ^M to make Git happy

Related to: https://github.com/apache/avro/commit/72e1135f7c1171b7f028f7f4f5fa0a652eb4edc2

Signed-off-by: Martin Tzvetanov Grigorov <467ed6115092226a07ff6116d483984b94cf27b9@apache.org>


@echo off

cls

REM 32비트에 맞게 하려면.
REM >rustup target add i686-pc-windows-msvc

SET LIBCLANG_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\Llvm\x64\bin
SET PATH_ORIG=%PATH%
SET PATH=%PATH%;C:\Program Files\Git\usr\bin

cd %GOPATH%\src\github.com\ghts\ghts\xing\base

"%HOMEPATH%\.cargo\bin\bindgen.exe"  --no-layout-tests type_c.h -o type_c.rs -- --target=i686-pc-windows-msvc

SET PATH=%PATH_ORIG%

@echo off

REM 즌비믈
REM Visual Studio BuildTools 에서 clang 설치.
REM >cargo install bindgen                    # bindgen 설치
REM >rustup target add i686-pc-windows-msvc   # Xing API는 32비트 윈도우 DLL

cls

SET LIBCLANG_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Tools\Llvm\x64\bin
SET PATH_ORIG=%PATH%
SET PATH=%PATH%;C:\Program Files\Git\usr\bin

cd %GOPATH%\src\github.com\ghts\ghts\xing\base

"%HOMEPATH%\.cargo\bin\bindgen.exe"  --no-layout-tests type_c.h -o type_c.rs -- --target=i686-pc-windows-msvc

SET PATH=%PATH_ORIG%

준비물 설명 코멘트 추가.

준비물 설명 코멘트 추가.


copy mpi.f.single mpi.f
copy mpif.h.single mpif.h

if errorlevel 1 exit 1

flang -g -w -O -Wall -o genesis2 main.f check.f diagno.f esource.f field.f incoherent.f math.f partsim.f pushp.f loadbeam.f loadrad.f magfield.f tdepend.f track.f string.f rpos.f scan.f source.f stepz.f timerec.f initrun.f  input.f output.f mpi.f > output.txt 2>&1

if errorlevel 1 exit 1

echo "DEBUG Info..."
dir

echo "The build output was: "
type output.txt

echo "-----------------------------------------------"

echo "Copying the file to Library Bin at %LIBRARY_BIN%"
copy genesis2.exe %LIBRARY_BIN%

if errorlevel 1 exit 1
exit 0

copy mpi.f.single mpi.f
copy mpif.h.single mpif.h

if errorlevel 1 exit 1

flang -g -w -O -Wall -o genesis2 main.f check.f diagno.f esource.f field.f incoherent.f math.f partsim.f pushp.f loadbeam.f loadrad.f magfield.f tdepend.f track.f string.f rpos.f scan.f source.f stepz.f timerec.f initrun.f  input.f output.f mpi.f > output.txt 2>&1

echo "DEBUG Info..."
dir

echo "The build output was: "
type output.txt

echo "-----------------------------------------------"

echo "Copying the file to Library Bin at %LIBRARY_BIN%"
copy genesis2.exe %LIBRARY_BIN%

if errorlevel 1 exit 1
exit 0

Remove errorlevel 1 after compile to be able to print the errors.


:: Start with bootstrap
cd .\tools\build
ECHO .\bootstrap.bat
CALL .\bootstrap.bat
IF errorlevel 1 exit 1
ECHO .\bootstrap.bat gcc
CALL .\bootstrap.bat gcc
IF errorlevel 1 exit 1
ECHO .\b2.exe install toolset=gcc --prefix=%SRC_DIR%\b2_for_mingw
CALL .\b2.exe install toolset=gcc --prefix=%SRC_DIR%\b2_for_mingw
IF errorlevel 1 exit 1
ECHO cd %SRCDIR%
cd %SRCDIR%
IF errorlevel 1 exit 1
set PATH=%PATH%;%SRCDIR%\b2_for_mingw\bin
IF errorlevel 1 exit 1
ECHO b2 toolset=gcc --build-type=complete stage ^
        --build-dir=buildboost ^
        --prefix=%LIBRARY_PREFIX% ^
        address-model=%ARCH% ^
        variant=release ^
        threading=multi ^
        link=shared ^
        -j%CPU_COUNT% ^
        -s ZLIB_INCLUDE="%LIBRARY_INC%" ^
        -s ZLIB_LIBPATH="%LIBRARY_LIB%" ^
        --with-python
CALL b2 toolset=gcc ^
        address-model=%ARCH% ^
        variant=release ^
        threading=multi ^
        link=shared ^
        -j%CPU_COUNT% ^
        -s ZLIB_INCLUDE="%LIBRARY_INC%" ^
        -s ZLIB_LIBPATH="%LIBRARY_LIB%" ^
        --with-python
        --build-type=complete stage ^
        --build-dir=buildboost ^
        --prefix=%LIBRARY_PREFIX%
IF errorlevel 1 exit 1
move %LIBRARY_INC%\boost-1_61\boost %LIBRARY_INC%
IF errorlevel 1 exit 1

move %LIBRARY_LIB%\*vc%LIB_VER%-mt-1_61.dll "%LIBRARY_BIN%"
IF errorlevel 1 exit 1

:: Start with bootstrap
cd .\tools\build
ECHO .\bootstrap.bat
CALL .\bootstrap.bat
IF errorlevel 1 exit 1
ECHO .\bootstrap.bat gcc
CALL .\bootstrap.bat gcc
IF errorlevel 1 exit 1
ECHO .\b2.exe install toolset=gcc --prefix=%SRC_DIR%\b2_for_mingw
CALL .\b2.exe install toolset=gcc --prefix=%SRC_DIR%\b2_for_mingw
IF errorlevel 1 exit 1
ECHO cd %SRCDIR%
cd %SRCDIR%
IF errorlevel 1 exit 1
set PATH=%PATH%;%SRCDIR%\b2_for_mingw\bin
IF errorlevel 1 exit 1
ECHO b2 toolset=gcc --build-type=complete stage ^
        --build-dir=buildboost ^
        --prefix=%LIBRARY_PREFIX% ^
        address-model=%ARCH% ^
        variant=release ^
        threading=multi ^
        link=shared ^
        -j%CPU_COUNT% ^
        -s ZLIB_INCLUDE="%LIBRARY_INC%" ^
        -s ZLIB_LIBPATH="%LIBRARY_LIB%" ^
        --with-python
CALL b2 toolset=gcc ^
        address-model=%ARCH% ^
        variant=release ^
        threading=multi ^
        link=shared ^
        -j%CPU_COUNT% ^
        -s ZLIB_INCLUDE="%LIBRARY_INC%" ^
        -s ZLIB_LIBPATH="%LIBRARY_LIB%" ^
        --with-python
        --build-dir=buildboost ^
        --prefix=%LIBRARY_PREFIX%
IF errorlevel 1 exit 1
move %LIBRARY_INC%\boost-1_61\boost %LIBRARY_INC%
IF errorlevel 1 exit 1

move %LIBRARY_LIB%\*vc%LIB_VER%-mt-1_61.dll "%LIBRARY_BIN%"
IF errorlevel 1 exit 1

Update bld.bat

Update bld.bat


@echo off

REM This build script allows you to build the TTR Mouse Click Simulator.
REM For information about prerequisites, see the Wiki page at
REM https://github.com/TTExtensions/MouseClickSimulator/wiki/Running-the-Simulator

SetLocal ENABLEDELAYEDEXPANSION
REM Change the working directory to the script's directory.
REM E.g. if the user right-clicks on the script and selects "Run as Administrator",
REM the working directory would be the windows\system32 dir.
cd %~dp0

echo.Building the TTR Mouse Click Simulator...
echo.
REM MSBuild is always installed in the 32-Bit program files folder
if "!ProgramFiles(x86)!"=="" (
	set "ProgramFiles32Bit=!ProgramFiles!"
) else (
	set "ProgramFiles32Bit=!ProgramFiles(x86)!"
)
set "BuildExe=!ProgramFiles32Bit!\MSBuild\14.0\Bin\MSBuild.exe"

if not exist "!BuildExe!" (
	echo.ERROR: MSBuild not found at "!BuildExe!"^^!
	pause
	exit /b 1
)

"!BuildExe!" /v:minimal /nologo /p:Configuration=Release "TTMouseclickSimulator\TTMouseclickSimulator.csproj"
if not errorlevel 1 (
	echo.
	echo.Build successful^^!
)
pause
exit /b !ERRORLEVEL!

@echo off

REM This build script allows you to build the TTR Mouse Click Simulator.
REM For information about prerequisites, see the Wiki page at
REM https://github.com/TTExtensions/MouseClickSimulator/wiki/Running-the-Simulator

SetLocal ENABLEDELAYEDEXPANSION
REM Change the working directory to the script's directory.
REM E.g. if the user right-clicks on the script and selects "Run as Administrator",
REM the working directory would be the windows\system32 dir.
cd "%~dp0"

echo.Building the TTR Mouse Click Simulator...
echo.
REM MSBuild is always installed in the 32-Bit program files folder
if "!ProgramFiles(x86)!"=="" (
	set "ProgramFiles32Bit=!ProgramFiles!"
) else (
	set "ProgramFiles32Bit=!ProgramFiles(x86)!"
)
set "BuildExe=!ProgramFiles32Bit!\MSBuild\14.0\Bin\MSBuild.exe"

if not exist "!BuildExe!" (
	echo.ERROR: MSBuild not found at "!BuildExe!"^^!
	pause
	exit /b 1
)

"!BuildExe!" /v:minimal /nologo /p:Configuration=Release "TTMouseclickSimulator\TTMouseclickSimulator.csproj"
if not errorlevel 1 (
	echo.
	echo.Build successful^^!
)
pause
exit /b !ERRORLEVEL!

Follow-Up: Use quotation marks for path parameters.


@echo off

set PACKAGES=..\.dist
set SOURCE=https://api.nuget.org/v3/index.json
set /p APIKEY=<"..\..\ApiKey.txt"

set PKGVER=3.3.2

dotnet nuget push "%PACKAGES%\FastExpressionCompiler.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.Internal.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.LightExpression.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.LightExpression.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.LightExpression.Internal.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate

echo:
echo:Publishing completed.

pause

@echo off

set PACKAGES=..\.dist
set SOURCE=https://api.nuget.org/v3/index.json
set /p APIKEY=<"..\..\ApiKey.txt"

set PKGVER=3.3.3

dotnet nuget push "%PACKAGES%\FastExpressionCompiler.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.Internal.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.LightExpression.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.LightExpression.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate
dotnet nuget push "%PACKAGES%\FastExpressionCompiler.LightExpression.Internal.src.%PKGVER%.nupkg" -k %APIKEY% -s %SOURCE% --skip-duplicate

echo:
echo:Publishing completed.

pause

change the pyblished version

change the pyblished version