Update Appveyor Script to use QtWebEngine
[quassel.git] / appveyor.yml
index cd35363..7ad3629 100644 (file)
@@ -1,26 +1,42 @@
 version: '{build}'
 build_script:
 - ps: |
-    if ( !(Test-Path "$env:APPVEYOR_BUILD_FOLDER\work\appveyorHelp.psm1"))
-    {
-        mkdir $env:APPVEYOR_BUILD_FOLDER\work\
-        Start-FileDownload https://raw.githubusercontent.com/TheOneRing/appVeyorHelp/master/appveyorHelp.psm1 -FileName $env:APPVEYOR_BUILD_FOLDER\work\appveyorHelp.psm1
-    }
     $ErrorActionPreference="Stop"
 
-    Import-Module $env:APPVEYOR_BUILD_FOLDER\work\appveyorHelp.psm1
+    Import-Module $env:APPVEYOR_BUILD_FOLDER\scripts\build\appveyorHelp.psm1
 
-    Init @("ninja", "png2ico", "nsis") ([ordered]@{"git://anongit.kde.org/extra-cmake-modules.git" = @{"branch" = "master"};
+    Init @("ninja", "png2ico", "nsis", "7zip.commandline") ([ordered]@{"git://anongit.kde.org/extra-cmake-modules.git" = @{"branch" = "master"};
                                  "https://github.com/Snorenotify/SnoreGrowl.git" = @{"branch" = "v0.4.0"; "buildType" = "Release"};
                                  "git://anongit.kde.org/snorenotify.git" = @{"branch" = "v0.7.0"; "buildType" = "Release"}})
 
 
     mkdir -Force $env:APPVEYOR_BUILD_FOLDER\work\build\$env:APPVEYOR_PROJECT_NAME
     cd $env:APPVEYOR_BUILD_FOLDER\work\build\$env:APPVEYOR_PROJECT_NAME
-    LogExec cmake -G"Ninja" $env:APPVEYOR_BUILD_FOLDER -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_ROOT" -DUSE_QT5=ON -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DBus=ON -DWITH_WEBKIT=OFF
+
+    $webPrevOption = "-DWITH_WEBKIT=OFF -DWITH_WEBENGINE=ON"
+    $webPrevFiles = @(
+                      "bin\\Qt5Positioning\.dll",
+                      "bin\\Qt5PrintSupport\.dll",
+                      "bin\\Qt5Sensors\.dll",
+                      "bin\\Qt5WebChannel\.dll",
+                      "bin\\QtWebEngineProcess\.exe",
+                      "bin\\Qt5WebEngine\.dll",
+                      "bin\\Qt5WebEngineCore\.dll",
+                      "bin\\Qt5WebEngineWidgets\.dll",
+                      "resources\\icudtl\.dat",
+                      "resources\\qtwebengine_resources.pak",
+                      "resources\\qtwebengine_resources_100p.pak",
+                      "resources\\qtwebengine_resources_200p.pak")
+
+    if($env:COMPILER -eq "mingw49_32") {
+        $webPrevOption = "-DWITH_WEBKIT=OFF -DWITH_WEBENGINE=OFF"
+        $webPrevFiles = @()
+    }
+    
+    LogExec cmake -G"Ninja" $env:APPVEYOR_BUILD_FOLDER -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX="$CMAKE_INSTALL_ROOT" -DUSE_QT5=ON -DCMAKE_DISABLE_FIND_PACKAGE_Qt5DBus=ON $webPrevOption
     CmakeImageInstall
 
-    $imageDir = CreateDeployImage @(
+    $whitelist = @(
                             # whitelist
                             #quassel
                             "quassel.*",
@@ -41,8 +57,8 @@ build_script:
                             "bin\\.*snoregrowl.*\.dll",
                             #
                             #ssl
-                            "bin\\libeay32\.dll",
-                            "bin\\ssleay32\.dll",
+                            ".*\\libeay32\.dll",
+                            ".*\\ssleay32\.dll",
                             #
                             #icu
                             "bin\\icuin\d+\.dll",
@@ -61,6 +77,7 @@ build_script:
                             "bin\\Qt5Quick\.dll",
                             "bin\\Qt5Script\.dll",
                             "bin\\Qt5Sql\.dll",
+                            "bin\\Qt5WebChannel\.dll",
                             "bin\\Qt5Widgets\.dll",
                             "bin\\Qt5XmlPatterns\.dll",
                             "bin\\.*libglesv2\.dll",
@@ -88,39 +105,45 @@ build_script:
                             "bin\\libphononexperimental.*\.dll",
                             "bin\\phonon_backend\\.*",
                             "plugins\\phonon_backend\\.*",
-                            "plugins\\phonon4qt5_backend\\.*") @(
+                            "plugins\\phonon4qt5_backend\\.*")
+
+    $whitelist += $webPrevFiles
+
+    $imageDir = CreateDeployImage $whitelist @(
                             #blacklist
+                            "include",
                             ".*\.h",
-                            "lib\\plugins\\libsnore.*\\libsnore_backend_freedesktop\.dll"
+                            "lib\\plugins\\libsnore.*\\libsnore_backend_freedesktop\.dll",
+                            ".*\.pdb",
+                            ".*plugind\.dll"
                             )
 
     mv "$imageDir\bin\*" "$imageDir\"
     #mv "$imageDir\lib\qca-qt5\crypto" "$imageDir\crypto"
+    mv "$imageDir\qml\*" "$imageDir"
     mv "$imageDir\plugins\*" "$imageDir"
     if(Test-Path "$imageDir\lib\plugins")
     {
         mv "$imageDir\lib\plugins\*" "$imageDir"
     }
-    #snorenotify 0.5 plugins
-    if(Test-Path "$imageDir\lib\libsnore-qt5")
+    if(Test-Path "$imageDir\resources")
     {
-        mv "$imageDir\lib\libsnore-qt5\*" "$imageDir"
+        mv "$imageDir\resources\*" "$imageDir"
     }
-    rm -Recurse "$imageDir\plugins\*"
-    rm -Recurse "$imageDir\lib"
-    rm -Recurse "$imageDir\bin"
+    DeleteEmptyFodlers $imageDir
     7ZipDeployImage
     NsisDeployImage $env:APPVEYOR_BUILD_FOLDER\scripts\build\NullsoftInstaller.nsi
 
 environment:
-    QT_VER: 5.5
+    QT_VER: 5.6
 
     matrix:
-    #mingw
-    - COMPILER: mingw492_32
     #msvc
-    - COMPILER: msvc2013
-    - COMPILER: msvc2013_64
+    - COMPILER: msvc2015_64
+    - COMPILER: msvc2015
+
+    #mingw
+    - COMPILER: mingw49_32
 
 test: off
 
@@ -128,4 +151,3 @@ cache:
     - work\install -> appveyor.yml
     - C:\ProgramData\chocolatey\bin -> appveyor.yml
     - C:\ProgramData\chocolatey\lib -> appveyor.yml
-    - work\appveyorHelp.psm1 -> appveyor.yml