forked from analogdevicesinc/libm2k
-
Notifications
You must be signed in to change notification settings - Fork 0
/
libm2k.iss.cmakein
134 lines (108 loc) · 7.69 KB
/
libm2k.iss.cmakein
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
#define MsvcLib "msvcp140.dll"
[Setup]
AppId={{0B97BC46-2BA1-4931-88F2-61E84FC7EFEF}
AppName="libm2k"
AppVersion="@PROJECT_VERSION@"
AppPublisher="Analog Devices, Inc."
AppPublisherURL="http://www.analog.com"
AppSupportURL="http://www.analog.com"
AppUpdatesURL="http://www.analog.com"
AppCopyright="Copyright 2019 ADI and other contributors"
CreateAppDir=no
LicenseFile="C:\projects\libm2k\LICENSE"
OutputBaseFilename=libm2k-system-setup
OutputDir="C:\"
Compression=lzma
SolidCompression=yes
ArchitecturesInstallIn64BitMode=x64
[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"
Name: "brazilianportuguese"; MessagesFile: "compiler:Languages\BrazilianPortuguese.isl"
Name: "catalan"; MessagesFile: "compiler:Languages\Catalan.isl"
Name: "corsican"; MessagesFile: "compiler:Languages\Corsican.isl"
Name: "czech"; MessagesFile: "compiler:Languages\Czech.isl"
Name: "danish"; MessagesFile: "compiler:Languages\Danish.isl"
Name: "dutch"; MessagesFile: "compiler:Languages\Dutch.isl"
Name: "finnish"; MessagesFile: "compiler:Languages\Finnish.isl"
Name: "french"; MessagesFile: "compiler:Languages\French.isl"
Name: "german"; MessagesFile: "compiler:Languages\German.isl"
Name: "greek"; MessagesFile: "compiler:Languages\Greek.isl"
Name: "hebrew"; MessagesFile: "compiler:Languages\Hebrew.isl"
Name: "hungarian"; MessagesFile: "compiler:Languages\Hungarian.isl"
Name: "italian"; MessagesFile: "compiler:Languages\Italian.isl"
Name: "japanese"; MessagesFile: "compiler:Languages\Japanese.isl"
Name: "norwegian"; MessagesFile: "compiler:Languages\Norwegian.isl"
Name: "polish"; MessagesFile: "compiler:Languages\Polish.isl"
Name: "portuguese"; MessagesFile: "compiler:Languages\Portuguese.isl"
Name: "russian"; MessagesFile: "compiler:Languages\Russian.isl"
Name: "scottishgaelic"; MessagesFile: "compiler:Languages\ScottishGaelic.isl"
Name: "serbiancyrillic"; MessagesFile: "compiler:Languages\SerbianCyrillic.isl"
Name: "serbianlatin"; MessagesFile: "compiler:Languages\SerbianLatin.isl"
Name: "slovenian"; MessagesFile: "compiler:Languages\Slovenian.isl"
Name: "spanish"; MessagesFile: "compiler:Languages\Spanish.isl"
Name: "turkish"; MessagesFile: "compiler:Languages\Turkish.isl"
Name: "ukrainian"; MessagesFile: "compiler:Languages\Ukrainian.isl"
[Code]
function isIioInstalled(): Boolean;
begin
Result := True;
if not FileExists(ExpandConstant('{sys}\libiio.dll')) then begin
Result := False;
end;
if not FileExists(ExpandConstant('{sys}\libusb-1.0.dll')) then begin
Result := False;
end;
if not FileExists(ExpandConstant('{sys}\libxml2.dll')) then begin
Result := False;
end;
end;
function isMsvcInstalled(): Boolean;
begin
Result := True;
if not FileExists(ExpandConstant('{sys}\{#MsvcLib}')) then begin
Result := False;
end;
end;
[Files]
Source: "C:\projects\libm2k\build-win64\dist\libm2k-py*-win64.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall
Source: "C:\projects\libm2k\build-win32\dist\libm2k-py*-win32.exe"; DestDir: "{tmp}"; Flags: deleteafterinstall
Source: "C:\projects\libm2k\build-win32\libm2k.dll"; DestDir: "{sys}"; Flags: 32bit replacesameversion
Source: "C:\projects\libm2k\build-win64\libm2k.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Flags: replacesameversion
Source: "C:\projects\libm2k\build-win32\{#MsvcLib}"; DestDir: "{sys}"; Check: not isMsvcInstalled; Flags: onlyifdoesntexist 32bit
Source: "C:\projects\libm2k\build-win64\{#MsvcLib}"; DestDir: "{sys}"; Check: Is64BitInstallMode and (not isMsvcInstalled); Flags: onlyifdoesntexist
;Source: "C:\projects\libm2k\build-win32\*.exe"; DestDir: "{sys}"; Check: not Is64BitInstallMode
;Source: "C:\projects\libm2k\build-win64\*.exe"; DestDir: "{sys}"; Check: Is64BitInstallMode
Source: "C:\projects\libm2k\build-win32\m2kcli.exe"; DestDir: "{sys}"; Check: not Is64BitInstallMode; Tasks: install_libm2k_tools;
Source: "C:\projects\libm2k\build-win64\m2kcli.exe"; DestDir: "{sys}"; Check: Is64BitInstallMode; Tasks: install_libm2k_tools;
Source: "C:\projects\libm2k\build-win32\libm2k.lib"; DestDir: "{pf32}\Microsoft Visual Studio 15.0\VC\lib"; Check: not Is64BitInstallMode
Source: "C:\projects\libm2k\build-win64\libm2k.lib"; DestDir: "{pf32}\Microsoft Visual Studio 15.0\VC\lib\amd64"; Check: Is64BitInstallMode
Source: "C:\projects\libm2k\include\*"; DestDir: "{pf32}\Microsoft Visual Studio 15.0\VC\include"; Flags: replacesameversion recursesubdirs
Source: "C:\libiio-win32\libiio.dll"; DestDir: "{sys}"; Tasks: install_libiio_force install_libiio; Flags: 32bit replacesameversion
Source: "C:\libiio-win64\libiio.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Tasks: install_libiio_force install_libiio; Flags: replacesameversion
Source: "C:\libiio-win32\libxml2.dll"; DestDir: "{sys}"; Tasks: install_libiio_force install_libiio; Flags: 32bit
Source: "C:\libiio-win64\libxml2.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Tasks: install_libiio_force install_libiio;
Source: "C:\libiio-win32\libusb-1.0.dll"; DestDir: "{sys}"; Tasks: install_libiio_force install_libiio; Flags: 32bit
Source: "C:\libiio-win64\libusb-1.0.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Tasks: install_libiio_force install_libiio;
Source: "C:\libiio-win32\libserialport-0.dll"; DestDir: "{sys}"; Tasks: install_libiio_force install_libiio; Flags: 32bit
Source: "C:\libiio-win64\libserialport-0.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Tasks: install_libiio_force install_libiio;
Source: "C:\glog\build_0_4_0-Win32\Release\glog.dll"; DestDir: "{sys}"; Tasks: install_glog; Flags: 32bit
Source: "C:\glog\build_0_4_0-x64\Release\glog.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Tasks: install_glog;
Source: "C:\projects\libm2k\build-win32\libm2k-sharp.dll"; DestDir: "{cf}\libm2k"; Check: not Is64BitInstallMode; Flags: replacesameversion
Source: "C:\projects\libm2k\build-win32\libm2k-sharp-cxx-wrap.dll"; DestDir: "{sys}"; Check: not Is64BitInstallMode; Flags: replacesameversion
Source: "C:\projects\libm2k\build-win64\libm2k-sharp.dll"; DestDir: "{cf}\libm2k"; Check: Is64BitInstallMode; Flags: replacesameversion
Source: "C:\projects\libm2k\build-win64\libm2k-sharp-cxx-wrap.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Flags: replacesameversion
Source: "C:\projects\libm2k\build-win32\libm2k_lv.dll"; DestDir: "{sys}"; Flags: 32bit replacesameversion; Tasks: install_labview_wrapper;
Source: "C:\projects\libm2k\build-win64\libm2k_lv.dll"; DestDir: "{sys}"; Check: Is64BitInstallMode; Flags: replacesameversion; Tasks: install_labview_wrapper;
[Tasks]
Name: "install_python_bindings_37"; Description: "Install libm2k Python-3.7 bindings";
Name: "install_python_bindings_38"; Description: "Install libm2k Python-3.8 bindings";
Name: "install_libiio"; Description: "Install libiio"; Check: Not isIioInstalled;
Name: "install_libiio_force"; Description: "Overwrite libiio ( libiio is already installed in your system. Overwrite? )"; Check: isIioInstalled;
Name: "install_libm2k_tools"; Description: "Install libm2k tools";
Name: "install_labview_wrapper"; Description: "Install wrapper for LabVIEW bindings";
Name: "install_glog"; Description: "Install with logging support";
[Run]
Filename: "{tmp}\libm2k-py37-win64.exe"; StatusMsg: "Installing Python bindings"; Check: Is64BitInstallMode; Tasks: install_python_bindings_37; Flags: skipifsilent
Filename: "{tmp}\libm2k-py37-win32.exe"; StatusMsg: "Installing Python bindings"; Check: not Is64BitInstallMode; Tasks: install_python_bindings_37; Flags: skipifsilent
Filename: "{tmp}\libm2k-py38-win64.exe"; StatusMsg: "Installing Python bindings"; Check: Is64BitInstallMode; Tasks: install_python_bindings_38; Flags: skipifsilent
Filename: "{tmp}\libm2k-py38-win32.exe"; StatusMsg: "Installing Python bindings"; Check: not Is64BitInstallMode; Tasks: install_python_bindings_38; Flags: skipifsilent