1
; A script for packaging botan with InnoSetup
5
AppVerName=Botan %{version}
7
AppPublisher=Jack Lloyd
8
AppPublisherURL=https://botan.randombit.net/
11
VersionInfoCopyright=Copyright (C) 1999-2012 Jack Lloyd and others
12
VersionInfoVersion=%{version_major}.%{version_minor}.%{version_patch}.0
14
; Require at least Windows XP
17
ArchitecturesAllowed=%{innosetup_arch}
18
ArchitecturesInstallIn64BitMode=%{innosetup_arch}
20
DefaultDirName={pf}\botan
21
DefaultGroupName=botan
26
OutputBaseFilename=botan-%{version}-%{arch}
29
Name: "user"; Description: "User"
30
Name: "devel"; Description: "Developer"
31
Name: "custom"; Description: "Custom"; Flags: iscustom
34
name: "dll"; Description: "Runtime DLLs"; Types: user devel custom; Flags: fixed
35
name: "implib"; Description: "Import Library"; Types: devel
36
name: "includes"; Description: "Include Files"; Types: devel
37
name: "docs"; Description: "Developer Documentation"; Types: devel
40
; DLL and license file is always included
41
Source: "..\doc\license.rst"; DestDir: "{app}"; Components: dll; AfterInstall: ConvertLineEndings
42
Source: "..\botan.dll"; DestDir: "{app}"; Components: dll
43
Source: "..\botan.dll.manifest"; DestDir: "{app}"; Components: dll; Flags: skipifsourcedoesntexist
45
Source: "include\botan\*"; DestDir: "{app}\include\botan"; Components: includes; AfterInstall: ConvertLineEndings
47
Source: "..\doc\*.rst"; DestDir: "{app}\doc"; Excludes: "license.rst"; Components: docs; AfterInstall: ConvertLineEndings
49
Source: "..\doc\examples\*.cpp"; DestDir: "{app}\doc\examples"; Components: docs; AfterInstall: ConvertLineEndings
51
Source: "..\botan.exp"; DestDir: "{app}"; Components: implib
52
Source: "..\botan.lib"; DestDir: "{app}"; Components: implib
60
procedure ConvertLineEndings();
63
FileContents : String;
65
FilePath := ExpandConstant(CurrentFileName)
67
if ExtractFileName(CurrentFileName) <> 'build.h' then
69
LoadStringFromFile(FilePath, FileContents);
70
StringChangeEx(FileContents, LF, CRLF, False);
71
SaveStringToFile(FilePath, FileContents, False);