Project 'savoirfairelinux/ring-daemon' was moved to 'savoirfairelinux/jami-daemon'. Please update any links and bookmarks that may still have the old path.
Select Git revision
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
copy-runtime-files.ps1 5.03 KiB
[cmdletbinding()]
param (
[string]$daemonDir,
[string]$lrcDir
);
write-host "copying runtime files..."
$QtDir = "C:\Qt\5.9.4\msvc2017_64"
$ClientDir = split-path -parent $MyInvocation.MyCommand.Definition
$OutDir = $ClientDir + "\x64\Release"
New-Item -ItemType directory -Path $OutDir -Force
if (-not ($daemonDir)) {
$daemonDir = $ClientDir + '\..\daemon'
}
if (-not ($lrcDir)) {
$lrcDir = $ClientDir + '\..\lrc'
}
# dependency bin files
$FilesToCopy = @(
"$daemonDir\contrib\build\ffmpeg\Build\win32\x64\bin\avcodec-58.dll",
"$daemonDir\contrib\build\ffmpeg\Build\win32\x64\bin\avutil-56.dll",
"$daemonDir\contrib\build\ffmpeg\Build\win32\x64\bin\avformat-58.dll",
"$daemonDir\contrib\build\ffmpeg\Build\win32\x64\bin\avdevice-58.dll",
"$daemonDir\contrib\build\ffmpeg\Build\win32\x64\bin\swresample-3.dll",
"$daemonDir\contrib\build\ffmpeg\Build\win32\x64\bin\swscale-5.dll",
"$daemonDir\contrib\build\ffmpeg\Build\win32\x64\bin\avfilter-7.dll",
"$daemonDir\contrib\build\restbed\dependency\openssl\out32dll\libeay32.dll",
"$daemonDir\contrib\build\restbed\dependency\openssl\out32dll\ssleay32.dll",
"$ClientDir\winsparkle\x64\Release\WinSparkle.dll",
"$ClientDir\ring.nsi",
"$ClientDir\images\jami.ico"
"$ClientDir\License.rtf"
)
foreach ($i in $FilesToCopy) {
write-host "copying: " $i " => " $OutDir
Copy-Item -Path $i -Destination $OutDir -Force
}
############
# qt
############
# qt bin files
$FilesToCopy = @(
"$QtDir\bin\Qt5Core.dll",
"$QtDir\bin\Qt5Gui.dll",
"$QtDir\bin\Qt5Network.dll",
"$QtDir\bin\Qt5Positioning.dll",
"$QtDir\bin\Qt5PrintSupport.dll",
"$QtDir\bin\Qt5Qml.dll",
"$QtDir\bin\Qt5Quick.dll",
"$QtDir\bin\Qt5QuickWidgets.dll",
"$QtDir\bin\Qt5Sql.dll",
"$QtDir\bin\Qt5Svg.dll",
"$QtDir\bin\Qt5WebChannel.dll",
"$QtDir\bin\Qt5WebEngine.dll",
"$QtDir\bin\Qt5WebEngineCore.dll",
"$QtDir\bin\Qt5WebEngineWidgets.dll",
"$QtDir\bin\Qt5Widgets.dll",
"$QtDir\bin\Qt5WinExtras.dll",
"$QtDir\bin\Qt5Xml.dll",
"$QtDir\bin\Qt5Multimedia.dll",
"$QtDir\bin\Qt5MultimediaWidgets.dll",
"$QtDir\bin\Qt5OpenGL.dll",
"$QtDir\bin\libEGL.dll",
"$QtDir\bin\libGLESv2.dll",
"$QtDir\bin\QtWebEngineProcess.exe",
"$QtDir\resources\qtwebengine_resources.pak",
"$QtDir\resources\icudtl.dat"
)
foreach ($i in $FilesToCopy) {
write-host "copying: " $i " => " $OutDir
Copy-Item -Path $i -Destination $OutDir -Force
}
# qt imageformats
$FilesToCopy = @(
"$QtDir\plugins\imageformats\qgif.dll",
"$QtDir\plugins\imageformats\qico.dll",
"$QtDir\plugins\imageformats\qjpeg.dll",
"$QtDir\plugins\imageformats\qsvg.dll"
)
$CopyDir = $OutDir + "\imageformats"
New-Item -ItemType directory -Path $CopyDir -Force
foreach ($i in $FilesToCopy) {
write-host "copying: " $i " => " $CopyDir
Copy-Item -Path $i -Destination $CopyDir -Force
}
# qt platform dll for windows
$CopyDir = $OutDir + "\platforms"
New-Item -ItemType directory -Path $CopyDir -Force
$file = "$QtDir\plugins\platforms\qwindows.dll"
write-host "copying: " $file " => " $CopyDir
Copy-Item -Path $file -Destination $CopyDir -Force
# qt sql driver
$CopyDir = $OutDir + "\sqldrivers"
New-Item -ItemType directory -Path $CopyDir -Force
$file = "$QtDir\plugins\sqldrivers\qsqlite.dll"
write-host "copying: " $file " => " $CopyDir
Copy-Item -Path $file -Destination $CopyDir -Force
# ringtones
$CopyDir = $OutDir + "\ringtones"
New-Item -ItemType directory -Path $CopyDir -Force
$RingtonePath = "$ClientDir\..\daemon\ringtones"
write-host "copying ringtones..."
Get-ChildItem -Path $RingtonePath -Include *.ul, *.wav, *.ogg -Recurse | ForEach-Object {
write-host "copying ringtone: " $_.FullName " => " $CopyDir
Copy-Item -Path $_.FullName -Destination $CopyDir -Force –Recurse
}
# qt translations
$lrelease = "$QtDir\bin\lrelease.exe"
# lrc translations
$lrcTSPath = "$lrcDir\translations"
Get-ChildItem -Path $lrcTSPath -Include *.ts -Recurse | ForEach-Object {
& $lrelease $_.FullName
}
$CopyDir = $OutDir + "\share\libringclient\translations"
New-Item -ItemType directory -Path $CopyDir -Force
write-host "copying ringtones..."
Get-ChildItem -Path $lrcTSPath -Include *.qm -Recurse | ForEach-Object {
write-host "copying translation file: " $_.FullName " => " $CopyDir
Copy-Item -Path $_.FullName -Destination $CopyDir -Force –Recurse
}
# client translations
$clientTSPath = "$ClientDir\translations"
Get-ChildItem -Path $clientTSPath -Include *.ts -Recurse | ForEach-Object {
& $lrelease $_.FullName
}
$CopyDir = $OutDir + "\share\ring\translations"
New-Item -ItemType directory -Path $CopyDir -Force
write-host "copying ringtones..."
Get-ChildItem -Path $lrcTSPath -Include *.qm -Recurse | ForEach-Object {
write-host "copying translation file: " $_.FullName " => " $CopyDir
Copy-Item -Path $_.FullName -Destination $CopyDir -Force –Recurse
}
write-host "copy completed" -NoNewline