-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathinno-setup-SolarLibraries.iss
143 lines (134 loc) · 12.4 KB
/
inno-setup-SolarLibraries.iss
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
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!
[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{04CC0EF2-35C2-4E1E-9DAD-2F34B67F6273}
AppName=SolARFramework
AppVersion=0.6.0
;AppVerName=SolARFramework 0.6.0
AppPublisher=b<>com
AppPublisherURL=http://www.b-com.com/
AppSupportURL=http://www.b-com.com/
AppUpdatesURL=http://www.b-com.com/
DefaultDirName={sd}\SolARFramework
DefaultGroupName=SolARFramework
LicenseFile=.\installeurs\LICENSE
OutputBaseFilename=SolarFramework-installer
SetupIconFile=.\installeurs\solar.ico
UninstallFilesDir={app}\uninst
Compression=lzma/fast
; Tell Windows Explorer to reload the environment
ChangesEnvironment=yes
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
; list of components that can be installed
[Components]
Name: "SolARlibraries"; Description: "SolAR Libraries"; Types: full
Name: "QTinstallation"; Description: "QT creator dependencies"; Types: full
Name: "ThirdParties"; Description: "Third Party libraries"; Types: full
Name: "ThirdParties\boost"; Description: "Boost 1.68.0"; Types: full
Name: "ThirdParties\ceres"; Description: "Ceres 1.14.0"; Types: full
Name: "ThirdParties\eigen"; Description: "Eigen 3.3.5"; Types: full
Name: "ThirdParties\fbow"; Description: "FBow 0.0.1"; Types: full
Name: "ThirdParties\freeglut"; Description: "Freeglut 3.0.0"; Types: full
Name: "ThirdParties\gflags"; Description: "Gflags 2.2.1"; Types: full
Name: "ThirdParties\glog"; Description: "Glog 0.3.5"; Types: full
Name: "ThirdParties\opencv"; Description: "OpenCV 3.4.3"; Types: full
Name: "ThirdParties\opengv"; Description: "OpenGV 1.0.0"; Types: full
Name: "ThirdParties\spdlog"; Description: "Spdlog 0.14.0"; Types: full
Name: "ThirdParties\xpcf"; Description: "Xpcf 2.1.0"; Types: full
Name: "sources"; Description: "sources"; Types: full
Name: "sources\SolARFramework"; Description: "Framework sources"; Types: full
Name: "sources\Modules"; Description: "Modules sources"; Types: full
Name: "sources\Modules\SolARModuleCeres"; Description: "SolARModuleCeres Module"; Types: full
Name: "sources\Modules\SolARModuleOpenCV"; Description: "SolARModuleOpenCV Module"; Types: full
Name: "sources\Modules\SolARModuleNonFreeOpenCV"; Description: "SolARModuleNonFreeOpenCV Modules"; Types: full
Name: "sources\Modules\SolARModuleFBOW"; Description: "SolARModuleFBOW Module"; Types: full
Name: "sources\Modules\SolARModuleOpenGL"; Description: "SolARModuleOpenGL Module"; Types: full
Name: "sources\Modules\SolARModuleOpenGV"; Description: "SolARModuleOpenGV Module"; Types: full
Name: "sources\Modules\SolARModuleTools"; Description: "SolARModuleTools Module"; Types: full
Name: "sources\Modules\SolARPipelineManager"; Description: "SolARPipelineManager Module"; Types: full
Name: "sources\Modules\SolARUnityPlugin"; Description: "SolARUnityPlugin Module"; Types: full
Name: "sources\Samples"; Description: "Samples sources"; Types: full
Name: "sources\Samples\FiducialMarker"; Description: "Fiducial Marker Sample"; Types: full
Name: "sources\Samples\NaturalImage"; Description: "Natural Image Sample"; Types: full
Name: "sources\Samples\Slam"; Description: "Slam Sample"; Types: full
Name: "sources\Samples\Triangulation"; Description: "Triangulation Sample"; Types: full
Name: "buildscripts"; Description: "Build scripts"; Types: full
Name: "samples"; Description: "Executable Samples"; Types: full
Name: "samples\FiducialMarker"; Description: "Fiducial Marker Sample"; Types: full
Name: "samples\NaturalImage"; Description: "Natural Image Marker Sample"; Types: full
Name: "samples\Triangulation"; Description: "Triangulation Sample"; Types: full
Name: "samples\Slam"; Description: "Slam Sample"; Types: full
; source files included inside the installer
[Files]
Source: ".\installeurs\SolARLibraries\bcomBuild\*"; DestDir: "{app}\SolARLibraries\bcomBuild"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "SolARlibraries samples samples\FiducialMarker samples\NaturalImage samples\Triangulation samples\Slam "
Source: ".\installeurs\SolARLibraries\.xpcf\*"; DestDir: "{app}\SolARLibraries\.xpcf\"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "SolARlibraries samples samples\FiducialMarker samples\NaturalImage samples\Triangulation samples\Slam "
Source: ".\installeurs\forQT-only\Setup_pkg-config.exe"; DestDir: "{app}\uninst"; AfterInstall: RunOtherInstaller; Components: "QTinstallation"
Source: ".\installeurs\forQT-only\pkg-config_Uninstall.exe"; DestDir: "{app}\uninst"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "QTinstallation"
Source: ".\installeurs\thirdParties\*"; DestDir: "{app}\SolARLibraries\thirdParties"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties"
Source: ".\installeurs\thirdParties\boost\*"; DestDir: "{app}\SolARLibraries\thirdParties\boost"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\boost"
Source: ".\installeurs\thirdParties\ceres\*"; DestDir: "{app}\SolARLibraries\thirdParties\ceres"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\ceres"
Source: ".\installeurs\thirdParties\eigen\*"; DestDir: "{app}\SolARLibraries\thirdParties\eigen"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\eigen"
Source: ".\installeurs\thirdParties\fbow\*"; DestDir: "{app}\SolARLibraries\thirdParties\fbow"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\fbow"
Source: ".\installeurs\thirdParties\freeglut\*"; DestDir: "{app}\SolARLibraries\thirdParties\freeglut"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\freeglut"
Source: ".\installeurs\thirdParties\gflags\*"; DestDir: "{app}\SolARLibraries\thirdParties\gflags"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\gflags"
Source: ".\installeurs\thirdParties\glog\*"; DestDir: "{app}\SolARLibraries\thirdParties\glog"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\glog"
Source: ".\installeurs\thirdParties\opencv\*"; DestDir: "{app}\SolARLibraries\thirdParties\opencv"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\opencv"
Source: ".\installeurs\thirdParties\opengv\*"; DestDir: "{app}\SolARLibraries\thirdParties\opengv"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\opengv"
Source: ".\installeurs\thirdParties\spdlog\*"; DestDir: "{app}\SolARLibraries\thirdParties\spdlog"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\spdlog"
Source: ".\installeurs\thirdParties\xpcf\*"; DestDir: "{app}\SolARLibraries\thirdParties\xpcf"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "ThirdParties\xpcf"
Source: ".\installeurs\sources\*"; DestDir: "{app}\sources"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources"
Source: ".\installeurs\sources\SolARFramework\*"; DestDir: "{app}\sources\SolARFramework"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\SolARFramework"
Source: ".\installeurs\sources\Modules\*"; DestDir: "{app}\sources\Modules"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules"
Source: ".\installeurs\sources\Modules\SolARModuleCeres\*"; DestDir: "{app}\sources\Modules\SolARModuleCeres"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARModuleCeres"
Source: ".\installeurs\sources\Modules\SolARModuleOpenCV\*"; DestDir: "{app}\sources\Modules\SolARModuleOpenCV"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARModuleOpenCV"
Source: ".\installeurs\sources\Modules\SolARModuleNonFreeOpenCV\*"; DestDir: "{app}\sources\Modules\SolARModuleNonFreeOpenCV"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARModuleNonFreeOpenCV"
Source: ".\installeurs\sources\Modules\SolARModuleFBOW\*"; DestDir: "{app}\sources\Modules\SolARModuleFBOW"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARModuleFBOW"
Source: ".\installeurs\sources\Modules\SolARModuleOpenGL\*"; DestDir: "{app}\sources\Modules\SolARModuleOpenGL"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARModuleOpenGL"
Source: ".\installeurs\sources\Modules\SolARModuleOpenGV\*"; DestDir: "{app}\sources\Modules\SolARModuleOpenGV"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARModuleOpenGV"
Source: ".\installeurs\sources\Modules\SolARModuleTools\*"; DestDir: "{app}\sources\Modules\SolARModuleTools"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARModuleTools"
Source: ".\installeurs\sources\Modules\SolARPipelineManager\*"; DestDir: "{app}\sources\Modules\SolARPipelineManager"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARPipelineManager"
Source: ".\installeurs\sources\Modules\SolARUnityPlugin\*"; DestDir: "{app}\sources\Modules\SolARUnityPlugin"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Modules\SolARUnityPlugin"
Source: ".\installeurs\sources\Samples\*"; DestDir: "{app}\sources\Samples"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Samples"
Source: ".\installeurs\sources\Samples\FiducialMarker\*"; DestDir: "{app}\sources\Samples\FiducialMarker"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Samples\FiducialMarker"
Source: ".\installeurs\sources\Samples\NaturalImageMarker\*"; DestDir: "{app}\sources\Samples\NaturalImageMarker"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Samples\NaturalImage"
Source: ".\installeurs\sources\Samples\Sample-Slam\*"; DestDir: "{app}\sources\Samples\Sample-Slam"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Samples\Slam"
Source: ".\installeurs\sources\Samples\Sample-Triangulation\*"; DestDir: "{app}\sources\Samples\Sample-Triangulation"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "sources\Samples\Triangulation"
Source: ".\installeurs\build-scripts\*"; DestDir: "{app}\build-scripts"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "buildscripts"
Source: ".\installeurs\Samples\*"; DestDir: "{app}\Samples"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "samples"
Source: ".\installeurs\Samples\FiducialMarker\*"; DestDir: "{app}\Samples\FiducialMarker"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "samples\FiducialMarker"
Source: ".\installeurs\Samples\NaturalImage\*"; DestDir: "{app}\Samples\NaturalImage"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "samples\NaturalImage"
Source: ".\installeurs\Samples\Triangulation\*"; DestDir: "{app}\Samples\Triangulation"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "samples\Triangulation"
Source: ".\installeurs\Samples\Slam\*"; DestDir: "{app}\Samples\Slam"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "samples\Slam"
Source: ".\installeurs\Samples\fbow_voc\*"; DestDir: "{app}\Samples\fbow_voc"; Flags: ignoreversion recursesubdirs createallsubdirs; Components: "samples\Slam"
; NOTE: Don't use "Flags: ignoreversion" on any shared system files
; to be run during uninstallation
[UninstallRun]
Filename: "{app}\uninst\pkg-config_Uninstall.exe"; Components: "QTinstallation"
; custom functions and procedures
[Code]
function NextButtonClick(CurPageID: Integer): Boolean;
begin
Result := True;
{ if we're on the directory selection page and the value returned by }
{ the WizardDirValue function contains at least one space, then... }
if (CurPageID = wpSelectDir) and (Pos(' ', WizardDirValue) > 0) then
begin
Result := False;
MsgBox('Target installation directory cannot contain spaces. ' +
'Choose a different one.', mbError, MB_OK);
end;
end;
procedure RunOtherInstaller;
var
ResultCode: Integer;
begin
if not Exec(ExpandConstant('{app}\uninst\Setup_pkg-config.exe'), '', '', SW_SHOWNORMAL,
ewWaitUntilTerminated, ResultCode)
then
MsgBox('Other installer failed to run!' + #13#10 +
SysErrorMessage(ResultCode), mbError, MB_OK);
end;