-
Notifications
You must be signed in to change notification settings - Fork 0
/
win_install_mingw_libs.vbs
170 lines (118 loc) · 3.39 KB
/
win_install_mingw_libs.vbs
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
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
' Clean and copy SyntroGUI/SyntroLib files to the %SYNTRODIR% include
' and bin directories.
'
' The script expects SYNTRODIR to be in the environment.
'
' The folders bin and include will be created if they don't exist
'
Set fso = CreateObject("Scripting.FileSystemObject")
Set ws = CreateObject("WScript.Shell")
SyntroDir = ws.ExpandEnvironmentStrings("%SYNTRODIR%")
If Not fso.FolderExists(SyntroDir) Then
MsgBox "Environment variable SYNTRODIR is not defined", vbOkOnly, "Fatal Error"
WScript.Quit
End If
On Error Resume Next
CleanAll
CopyHeaders
CopyLibs
CopyDLLs
Sub CleanAll
folderName = SyntroDir + "/include"
If Not fso.FolderExists(folderName) Then
fso.CreateFolder folderName
Else
fso.DeleteFile folderName + "/*.h"
End If
folderName = SyntroDir + "/include/SyntroControlLib"
If Not fso.FolderExists(folderName) Then
fso.CreateFolder folderName
Else
fso.DeleteFile folderName + "/*.h"
End If
folderName = SyntroDir + "/include/SyntroAV"
If Not fso.FolderExists(folderName) Then
fso.CreateFolder folderName
Else
fso.DeleteFile folderName + "/*.h"
End If
folderName = SyntroDir + "/bin"
If Not fso.FolderExists(folderName) Then
fso.CreateFolder folderName
Else
fso.DeleteFile folderName + "/*.dll"
End If
End Sub
Sub CopyHeaders
dstFolder = SyntroDir + "/include/"
srcFolder = SyntroDir + "/SyntroCore/SyntroLib"
If Not fso.FolderExists(srcFolder) Then
MsgBox srcFolder + " not found", vbOkOnly, "Error"
Exit Sub
End If
Set src = fso.getfolder(srcFolder)
For Each file in src.Files
If fso.GetExtensionName(file) = "h" Then
file.Copy dstFolder
End If
Next
dstFolder = SyntroDir + "/include/SyntroControlLib/"
srcFolder = SyntroDir + "/SyntroCore/SyntroControlLib"
If Not fso.FolderExists(srcFolder) Then
MsgBox srcFolder + " not found", vbOkOnly, "Error"
Exit Sub
End If
Set src = fso.getfolder(srcFolder)
For Each file in src.Files
If fso.GetExtensionName(file) = "h" Then
file.Copy dstFolder
End If
Next
srcFolder = SyntroDir + "/SyntroCore/SyntroGUI"
If Not fso.FolderExists(srcFolder) Then
MsgBox srcFolder + " not found", vbOkOnly, "Error"
Exit Sub
End If
Set src = fso.getfolder(srcFolder)
For Each file in src.Files
If fso.GetExtensionName(file) = "h" Then
file.Copy dstFolder
End If
Next
dstFolder = SyntroDir + "/include/SyntroAV/"
srcFolder = SyntroDir + "/SyntroCore/SyntroLib/SyntroAV"
If Not fso.FolderExists(srcFolder) Then
MsgBox srcFolder + " not found", vbOkOnly, "Error"
Exit Sub
End If
Set src = fso.getfolder(srcFolder)
For Each file in src.Files
If fso.GetExtensionName(file) = "h" Then
file.Copy dstFolder
End If
Next
End Sub
Sub CopyDLLs()
dstFolder = SyntroDir + "/bin/"
srcFile = SyntroDir + "/SyntroCore/SyntroLib/Release/SyntroLib.dll"
If Not fso.FileExists(srcFile) Then
MsgBox srcFile + " not found", vbOkOnly, "Copy Error"
Exit Sub
Else
fso.CopyFile srcFile, dstFolder
End If
srcFile = SyntroDir + "/SyntroCore/SyntroControlLib/Release/SyntroControlLib.dll"
If Not fso.FileExists(srcFile) Then
MsgBox srcFile + " not found", vbOkOnly, "Copy Error"
Exit Sub
Else
fso.CopyFile srcFile, dstFolder
End If
srcFile = SyntroDir + "/SyntroCore/SyntroGUI/Release/SyntroGUI.dll"
If Not fso.FileExists(srcFile) Then
MsgBox srcFile + " not found", vbOkOnly, "Copy Error"
Exit Sub
Else
fso.CopyFile srcFile, dstFolder
End If
End Sub