Merge pull request #3016 from ichordev/patch-1
[platform/upstream/glslang.git] / .appveyor.yml
index d5c7225..b08c47b 100644 (file)
@@ -4,10 +4,10 @@
 # build version format
 version: "{build}"
 
-os: Visual Studio 2013
+os: Visual Studio 2015
 
 platform:
-  - Any CPU
+  - x64
 
 configuration:
   - Debug
@@ -17,6 +17,27 @@ branches:
   only:
     - master
 
+# changes to these files don't need to trigger testing
+skip_commits:
+  files:
+    - README.md
+    - README-spirv-remap.txt
+    - LICENSE.txt
+    - CODE_OF_CONDUCT.md
+    - BUILD.*
+    - WORKSPACE
+    - kokoro/*
+    - make-revision
+    - Android.mk
+    - _config.yml
+
+# Travis advances the master-tot tag to current top of the tree after
+# each push into the master branch, because it relies on that tag to
+# upload build artifacts to the master-tot release. This will cause
+# double testing for each push on Appveyor: one for the push, one for
+# the tag advance. Disable testing tags.
+skip_tags: true
+
 clone_depth: 5
 
 matrix:
@@ -24,8 +45,9 @@ matrix:
 
 # scripts that run after cloning repository
 install:
-  - git clone https://github.com/google/googletest.git External/googletest
   - C:/Python27/python.exe update_glslang_sources.py
+  - set PATH=C:\ninja;C:\Python36;%PATH%
+  - git clone https://github.com/google/googletest.git External/googletest
 
 build:
   parallel: true  # enable MSBuild parallel builds
@@ -33,9 +55,54 @@ build:
 
 build_script:
   - mkdir build && cd build
-  - cmake .. -DCMAKE_INSTALL_PREFIX=install
+  - cmake -G "Visual Studio 14 2015 Win64" -DCMAKE_INSTALL_PREFIX=install ..
   - cmake --build . --config %CONFIGURATION% --target install
 
 test_script:
   - ctest -C %CONFIGURATION% --output-on-failure
   - cd ../Test && bash runtests
+  - cd ../build
+
+after_test:
+  # For debug build, the generated dll has a postfix "d" in its name.
+  - ps: >-
+      If ($env:configuration -Match "Debug") {
+        $env:SUFFIX="d"
+      } Else {
+        $env:SUFFIX=""
+      }
+  - cd install
+  # Zip all glslang artifacts for uploading and deploying
+  - 7z a glslang-master-windows-"%PLATFORM%"-"%CONFIGURATION%".zip
+    bin\glslangValidator.exe
+    bin\spirv-remap.exe
+    include\glslang\*
+    lib\GenericCodeGen%SUFFIX%.lib
+    lib\glslang%SUFFIX%.lib
+    lib\glslang-default-resource-limits%SUFFIX%.lib
+    lib\HLSL%SUFFIX%.lib
+    lib\MachineIndependent%SUFFIX%.lib
+    lib\OGLCompiler%SUFFIX%.lib
+    lib\OSDependent%SUFFIX%.lib
+    lib\SPIRV%SUFFIX%.lib
+    lib\SPVRemapper%SUFFIX%.lib
+    lib\SPIRV-Tools%SUFFIX%.lib
+    lib\SPIRV-Tools-opt%SUFFIX%.lib
+
+artifacts:
+  - path: build\install\*.zip
+    name: artifacts-zip
+
+deploy:
+  - provider: GitHub
+    auth_token:
+      secure: YglcSYdl0TylEa59H4K6lylBEDr586NAt2EMgZquSo+iuPrwgZQuJLPCoihSm9y6
+    release: master-tot
+    description: "Continuous build of the latest master branch by Appveyor and Github"
+    artifact: artifacts-zip
+    draft: false
+    prerelease: false
+    force_update: true
+    on:
+      branch: master
+      APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015