Home | History | Annotate | Download | only in glslang
      1 # Windows Build Configuration for AppVeyor
      2 # http://www.appveyor.com/docs/appveyor-yml
      3 
      4 # build version format
      5 version: "{build}"
      6 
      7 os: Visual Studio 2013
      8 
      9 platform:
     10   - x64
     11 
     12 configuration:
     13   - Debug
     14   - Release
     15 
     16 branches:
     17   only:
     18     - master
     19 
     20 # Travis advances the master-tot tag to current top of the tree after
     21 # each push into the master branch, because it relies on that tag to
     22 # upload build artifacts to the master-tot release. This will cause
     23 # double testing for each push on Appveyor: one for the push, one for
     24 # the tag advance. Disable testing tags.
     25 skip_tags: true
     26 
     27 clone_depth: 5
     28 
     29 matrix:
     30   fast_finish: true # Show final status immediately if a test fails.
     31 
     32 # scripts that run after cloning repository
     33 install:
     34   - C:/Python27/python.exe update_glslang_sources.py
     35   - git clone https://github.com/google/googletest.git External/googletest
     36   - cd External/googletest
     37   - git checkout 440527a61e1c91188195f7de212c63c77e8f0a45
     38   - cd ../..
     39 
     40 build:
     41   parallel: true  # enable MSBuild parallel builds
     42   verbosity: minimal
     43 
     44 build_script:
     45   - mkdir build && cd build
     46   - cmake -G "Visual Studio 12 2013 Win64" -DCMAKE_INSTALL_PREFIX=install ..
     47   - cmake --build . --config %CONFIGURATION% --target install
     48 
     49 test_script:
     50   - ctest -C %CONFIGURATION% --output-on-failure
     51   - cd ../Test && bash runtests
     52   - cd ../build
     53 
     54 after_test:
     55   # For debug build, the generated dll has a postfix "d" in its name.
     56   - ps: >-
     57       If ($env:configuration -Match "Debug") {
     58         $env:SUFFIX="d"
     59       } Else {
     60         $env:SUFFIX=""
     61       }
     62   - cd install
     63   # Zip all glslang artifacts for uploading and deploying
     64   - 7z a glslang-master-windows-"%PLATFORM%"-"%CONFIGURATION%".zip
     65     bin\glslangValidator.exe
     66     bin\spirv-remap.exe
     67     include\glslang\*
     68     include\SPIRV\*
     69     lib\glslang%SUFFIX%.lib
     70     lib\HLSL%SUFFIX%.lib
     71     lib\OGLCompiler%SUFFIX%.lib
     72     lib\OSDependent%SUFFIX%.lib
     73     lib\SPIRV%SUFFIX%.lib
     74     lib\SPVRemapper%SUFFIX%.lib
     75     lib\SPIRV-Tools%SUFFIX%.lib
     76     lib\SPIRV-Tools-opt%SUFFIX%.lib
     77 
     78 artifacts:
     79   - path: build\install\*.zip
     80     name: artifacts-zip
     81 
     82 deploy:
     83   - provider: GitHub
     84     auth_token:
     85       secure: YglcSYdl0TylEa59H4K6lylBEDr586NAt2EMgZquSo+iuPrwgZQuJLPCoihSm9y6
     86     release: master-tot
     87     description: "Continuous build of the latest master branch by Appveyor and Travis CI"
     88     artifact: artifacts-zip
     89     draft: false
     90     prerelease: false
     91     force_update: true
     92     on:
     93       branch: master
     94       APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013
     95