1@echo off
2
3rem This script converts portable *.zip package to *.msi package
4
5rem Check command arguments
6if "%1" == "" (
7  echo.
8  echo Syntax:
9  echo.
10  echo   %~nx0 ^<Full path to portable .zip package^>
11  goto :eof
12)
13
14rem Path to Windows Installer XML (WiX) toolset
15set PATH=%PATH%;"C:\Program Files (x86)\WiX Toolset v3.9\bin"
16
17rem The new package will be created from here
18set BUILD_PACK_DIR=%TEMP%\awgg-%DATE: =%
19
20rem The new package will be saved here
21set PACK_DIR=%~dp0/release
22
23rem Determine package file name
24for /f %%i in ("%1") do set PACKAGE=%%~ni
25
26rem Get package version and architecture
27for /f "tokens=1,2,3,4,5 delims=-." %%a in ("%PACKAGE%") do (
28  set AWGG_VER=%%b.%%c.%%d
29  set CPU_TARGET=%%e
30)
31
32rem Prepare needed variables
33if "%CPU_TARGET%" == "i386" (
34  set CPU_TARGET=x86
35  set PF=ProgramFilesFolder
36) else if "%CPU_TARGET%" == "x86_64" (
37  set CPU_TARGET=x64
38  set PF=ProgramFiles64Folder
39)
40
41rem Prepare package build dir
42mkdir %BUILD_PACK_DIR%
43
44rem Extract archive
45unzip %1 -d %BUILD_PACK_DIR%
46
47rem Copy needed files
48copy license.rtf             %BUILD_PACK_DIR%\
49copy awgg.wxs           %BUILD_PACK_DIR%\
50copy ..\..\src\awgg.ico %BUILD_PACK_DIR%\
51
52pushd %BUILD_PACK_DIR%
53
54move awgg "AWGG"
55heat dir "AWGG" -ag -cg HeatGroup -dr %PF% -var var.SourcePath -o include.wxs
56candle -arch %CPU_TARGET% -dProductVersion=%AWGG_VER% -dSourcePath="AWGG" -dProgramFiles=%PF% awgg.wxs include.wxs
57light -ext WixUIExtension -cultures:en-us include.wixobj awgg.wixobj -o %PACKAGE%.msi
58
59rem Move created package
60move %PACKAGE%.msi %PACK_DIR%/
61
62rem Clean temp directories
63popd
64rmdir /S /Q %BUILD_PACK_DIR%
65