提交 48679c11 authored 作者: Michael Jerris's avatar Michael Jerris

Adding GetLibs.vbs. This file is a full replacement for GetLibs.bat and…

Adding GetLibs.vbs.  This file is a full replacement for GetLibs.bat and replaces everything in the tools directory except for the osipparser replacement project file.  It still uses the tools directory for temporary storage of some files.

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@71 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 35831494
On Error Resume Next
Set WshShell = CreateObject("WScript.Shell")
Set FSO = CreateObject("Scripting.FileSystemObject")
Set WshSysEnv = WshShell.Environment("SYSTEM")
Set xml = CreateObject("Microsoft.XMLHTTP")
Set oStream = createobject("Adodb.Stream")
ScriptDir=Left(WScript.ScriptFullName,Len(WScript.ScriptFullName)-Len(WScript.ScriptName))
LibDestDir=Showpath(ScriptDir & "..\..\libs")
UtilsDir=Showpath(ScriptDir & "Tools")
GetTarGZObjects UtilsDir
If Not FSO.FolderExists(LibDestDir & "osip") Then
WgetUnTarGz "http://www.antisip.com/download/libosip2-2.2.1.tar.gz", LibDestDir
RenameFolder LibDestDir & "libosip2-2.2.1", "osip"
FSO.CopyFile Utilsdir & "osipparser2.vcproj", LibDestDir & "osip\platform\vsnet\", True
Upgrade LibDestDir & "osip\platform\vsnet\osipparser2.vcproj", LibDestDir & "osip\platform\vsnet\osipparser2.vcproj"
Upgrade LibDestDir & "osip\platform\vsnet\osip2.vcproj", LibDestDir & "osip\platform\vsnet\osip2.vcproj"
End If
If Not FSO.FolderExists(LibDestDir & "libeXosip2") Then
WgetUnTarGz "http://www.antisip.com/download/libeXosip2-1.9.1-pre17.tar.gz", LibDestDir
RenameFolder LibDestDir & "libeXosip2-1.9.1-pre17", "libeXosip2"
Upgrade LibDestDir & "libeXosip2\platform\vsnet\eXosip.vcproj", LibDestDir & "libeXosip2\platform\vsnet\eXosip.vcproj"
End If
If Not FSO.FolderExists(LibDestDir & "jthread-1.1.2") Then
WgetUnTarGz "http://research.edm.luc.ac.be/jori/jthread/jthread-1.1.2.tar.gz", LibDestDir
End If
If Not FSO.FolderExists(LibDestDir & "jrtplib") Then
WgetUnTarGz "http://research.edm.luc.ac.be/jori/jrtplib/jrtplib-3.3.0.tar.gz", LibDestDir
RenameFolder LibDestDir & "jrtplib-3.3.0", "jrtplib"
End If
If Not FSO.FolderExists(LibDestDir & "apr") Then
WgetUnTarGz "ftp://ftp.wayne.edu/apache/apr/apr-1.2.2.tar.gz", LibDestDir
RenameFolder LibDestDir & "apr-1.2.2", "apr"
Unix2dos LibDestDir & "apr\libapr.dsp"
Upgrade LibDestDir & "apr\libapr.dsp", LibDestDir & "apr\libapr.vcproj"
End If
WScript.Echo "Download Complete"
Sub RenameFolder(FolderName, NewFolderName)
Set Folder=FSO.GetFolder(FolderName)
Folder.Name = NewFolderName
End Sub
Sub Upgrade(OldFileName, NewFileName)
If WshSysEnv("VS80COMNTOOLS")<> "" Then
Set vcProj = CreateObject("VisualStudio.VCProjectEngine.8.0")
Else If WshSysEnv("VS71COMNTOOLS")<> "" Then
Set vcProj = CreateObject("VisualStudio.VCProjectEngine.7.1")
Else
Wscript.Echo("Did not find any Visual Studio .net 2003 or 2005 on your machine")
WScript.Quit(1)
End If
End If
' WScript.Echo("Converting: "+ OldFileName)
Set vcProject = vcProj.LoadProject(OldFileName)
If Not FSO.FileExists(vcProject.ProjectFile) Then
' // specify name and location of new project file
vcProject.ProjectFile = NewFileName
End If
' // call the project engine to save this off.
' // when no name is shown, it will create one with the .vcproj name
vcProject.Save()
' WScript.Echo("New Project Name: "+vcProject.ProjectFile+"")
End Sub
Sub Unix2dos(FileName)
Const OpenAsASCII = 0 ' Opens the file as ASCII (TristateFalse)
Const OpenAsUnicode = -1 ' Opens the file as Unicode (TristateTrue)
Const OpenAsDefault = -2 ' Opens the file using the system default
Const OverwriteIfExist = -1
Const FailIfNotExist = 0
Const ForReading = 1
Set fOrgFile = FSO.OpenTextFile(FileName, ForReading, FailIfNotExist, OpenAsASCII)
sText = fOrgFile.ReadAll
fOrgFile.Close
sText = Replace(sText, vbLf, vbCrLf)
Set fNewFile = FSO.CreateTextFile(FileName, OverwriteIfExist, OpenAsASCII)
fNewFile.WriteLine sText
fNewFile.Close
End Sub
Sub WgetUnTarGZ(URL, DestFolder)
If Right(DestFolder, 1) <> "\" Then DestFolder = DestFolder & "\" End If
StartPos = InstrRev(URL, "/", -1, 1)
strlength = Len(URL)
filename=Right(URL,strlength-StartPos)
Wget URL, DestFolder
UnTarGZ Destfolder & filename, DestFolder
End Sub
Sub GetTarGZObjects(DestFolder)
Dim oExec
If Right(DestFolder, 1) <> "\" Then DestFolder = DestFolder & "\" End If
If Not FSO.FileExists(DestFolder & "XTar.dll") Then
Wget "http://www.sofaswitch.org/mikej/XTar.dll", DestFolder
End If
If Not FSO.FileExists(DestFolder & "XGzip.dll") Then
Wget "http://www.sofaswitch.org/mikej/XGZip.dll", DestFolder
End If
Set oExec = WshShell.Exec("regsvr32 /s " & DestFolder & "XTar.dll")
Do While oExec.Status = 0
WScript.Sleep 100
Loop
Set oExec = WshShell.Exec("regsvr32 /s " & DestFolder & "XGZip.dll")
Do While oExec.Status = 0
WScript.Sleep 100
Loop
End Sub
Sub UnTarGZ(TGZfile, DestFolder)
Set objTAR = WScript.CreateObject("XStandard.TAR")
Set objGZip = WScript.CreateObject("XStandard.GZip")
' wscript.echo("Extracting: " & TGZfile)
objGZip.Decompress TGZfile, Destfolder
objTAR.UnPack Left(TGZfile, Len(TGZfile)-3), Destfolder
Set objTAR = Nothing
Set objGZip = Nothing
End Sub
Sub Wget(URL, DestFolder)
StartPos = InstrRev(URL, "/", -1, 1)
strlength = Len(URL)
filename=Right(URL,strlength-StartPos)
If Right(DestFolder, 1) <> "\" Then DestFolder = DestFolder & "\" End If
' Wscript.echo("Downloading: " & URL)
xml.Open "GET", URL, False
xml.Send
Const adTypeBinary = 1
Const adSaveCreateOverWrite = 2
Const adSaveCreateNotExist = 1
oStream.type = adTypeBinary
oStream.open
oStream.write xml.responseBody
' Do not overwrite an existing file
'oStream.savetofile DestFolder & filename, adSaveCreateNotExist
' Use this form to overwrite a file if it already exists
oStream.savetofile DestFolder & filename, adSaveCreateOverWrite
oStream.close
End Sub
Function Showpath(folderspec)
Set f = FSO.GetFolder(folderspec)
showpath = f.path
End Function
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论