-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Expand file tree
/
Copy pathbuild.bat
More file actions
126 lines (105 loc) · 3.58 KB
/
build.bat
File metadata and controls
126 lines (105 loc) · 3.58 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
@echo off
rem Inno Setup
rem Copyright (C) 1997-2026 Jordan Russell
rem Portions by Martijn Laan
rem For conditions of distribution and use, see LICENSE.TXT.
rem
rem Batch file to prepare a release
rem
rem Calls setup-sign.bat if it exists to create a signed build, otherwise creates setup.exe without signing
rem Signed build also require a setup-presign.bat to exist which should sign all files passed to it
rem
rem This batch files does the following things:
rem -Compile and use ISSigTool
rem -Compile ISHelpGen
rem -Compile ISetup*.chm
rem -Compile Inno Setup
rem -Run the unit tests
rem -Create 32-bit and 64-bit Inno Setup installers
rem
rem Once done the installer can be found in Output
setlocal
set VER=7.0.0-dev
echo Building Inno Setup %VER%...
echo.
cd /d %~dp0
call .\compile.bat x64 issigtool
if errorlevel 1 goto failed
echo Compiling ISSigTool done
rem Verify precompiled binaries which are used during compilation
rem Note: Other precompiled binaries are verified by Setup.iss
call .\issig.bat verify --key-file=def01.ispublickey ^
Projects\Src\Compression.LZMADecompressor\Lzma2Decode\ISLzmaDec-x86.obj ^
Projects\Src\Compression.LZMADecompressor\Lzma2Decode\ISLzmaDec-x64.obj ^
Projects\Src\Compression.LZMA1SmallDecompressor\LzmaDecode\LzmaDecodeInno-x86.obj ^
Projects\Src\Compression.LZMA1SmallDecompressor\LzmaDecode\LzmaDecodeInno-x64.obj ^
Projects\Src\Compression.SevenZipDecoder\7zDecode\IS7zDec-x86.obj ^
Projects\Src\Compression.SevenZipDecoder\7zDecode\IS7zDec-x64.obj
if errorlevel 1 goto failed
echo ISSigTool verify done
rem Embed user's public key into sources
call .\issig.bat embed
if errorlevel 1 goto failed
echo ISSigTool embed done
call .\compile.bat x64 ishelpgen
if errorlevel 1 goto failed
echo Compiling ISHelpGen done
cd ishelp
if errorlevel 1 goto failed
call .\compile.bat
if errorlevel 1 goto failed
cd ..
if errorlevel 1 goto failed
echo Compiling ISetup*.chm done
pause
call :build x86
if errorlevel 1 goto failed
echo Cleaning output of previous build
del Files\ISCmplr.dll Files\ISPP.dll Files\Setup.e32 Files\Setup.e64 Files\SetupCustomStyle.e32 Files\SetupCustomStyle.e64 Files\SetupLdr.e32 Files\SetupLdr.e64
if errorlevel 1 goto failed
del Files\ISIDE.exe Files\ISCC.exe Files\ISSigTool.exe Files\ISTestTool.exe
if errorlevel 1 goto failed
call :build x64
if errorlevel 1 goto failed
echo All done!
pause
exit /b 0
:failed
echo *** FAILED ***
pause
exit /b 1
:build
call .\compile.bat %~1
if errorlevel 1 exit /b 1
echo Compiling %~1 Inno Setup done
Files\ISTestTool.exe
if errorlevel 1 exit /b 1
echo Testing %~1 Inno Setup done
if exist .\setup-presign.bat (
echo - Presigning
call .\setup-presign.bat Files\ISCC.exe Files\ISCmplr.dll Files\ISPP.dll
if errorlevel 1 exit /b 1
echo Presign done
)
rem Sign using user's private key - also see compile.bat
call .\issig.bat sign Files\ISCmplr.dll Files\ISPP.dll Files\Setup.e32 Files\Setup.e64 Files\SetupCustomStyle.e32 Files\SetupCustomStyle.e64 Files\SetupLdr.e32 Files\SetupLdr.e64
if errorlevel 1 exit /b 1
echo ISSigTool sign %~1 done
echo - %~1 Setup.exe
if exist .\setup-sign.bat (
call .\setup-sign.bat /D%~1
) else (
files\iscc setup.iss /D%~1
)
if errorlevel 1 exit /b 1
echo - Renaming %~1 files
cd output
if errorlevel 1 exit /b 1
move /y mysetup.exe innosetup-%VER%-%~1.exe
if errorlevel 1 exit /b 1
cd ..
if errorlevel 1 exit /b 1
echo Creating %~1 Inno Setup installer done
call .\issig.bat sign output\innosetup-%VER%-%~1.exe
if errorlevel 1 exit /b 1
exit /b