summaryrefslogtreecommitdiff
path: root/.appveyor.yml
blob: e5af6c98138d0e9c780b56d3a77b9bc94c636f4d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
environment:
  AV_PROJECTS: 'c:\projects'
  AV_TIFF_DOWNLOAD: 'c:\projects\download'
  AV_TIFF_SOURCE: 'c:\projects\libtiff'
  AV_TIFF_BUILD: 'c:\projects\build'
  AV_TIFF_INSTALL: 'c:\projects\install'

  matrix:
    - compiler: cygwin-cmake
      configuration: Release
      generator: Unix Makefiles
      shared: ON
    - compiler: cygwin-cmake
      configuration: Debug
      generator: Unix Makefiles
      shared: OFF
    - compiler: mingw64-cmake
      configuration: Release
      generator: Unix Makefiles
      shared: ON
    - compiler: mingw64-cmake
      configuration: Debug
      generator: Unix Makefiles
      shared: OFF
    - compiler: vc14-cmake
      configuration: Release
      generator: Visual Studio 14 2015 Win64
      shared: ON
    - compiler: vc14-cmake
      configuration: Debug
      generator: Visual Studio 14 2015 Win64
      shared: OFF
    - compiler: vc14-nmake
      configuration: Release

cache:
  - 'c:\projects\download -> appveyor.yml'

# Operating system (build VM template)
os: 'Visual Studio 2015'

# clone directory
clone_folder: 'c:\projects\libtiff'
clone_depth: 5

platform: x64

init:
  - git config --global core.autocrlf input
  - 'FOR /F "tokens=* USEBACKQ" %%F IN (`C:\cygwin64\bin\cygpath -u %AV_TIFF_SOURCE%`) DO SET AV_TIFF_CYG_SOURCE=%%F'
  - 'FOR /F "tokens=* USEBACKQ" %%F IN (`C:\cygwin64\bin\cygpath -u %AV_TIFF_INSTALL%`) DO SET AV_TIFF_CYG_INSTALL=%%F'
  - 'if %compiler%==cygwin-cmake C:\Cygwin64\setup-x86_64 -q -R C:\Cygwin64 -s http://cygwin.mirror.constant.com -l %AV_TIFF_DOWNLOAD%\cygwin -P cmake,libjpeg-devel,zlib-devel'
  - 'if %compiler%==cygwin-cmake set "PATH=C:\Cygwin64\bin;%PATH%"'
  - 'if %compiler%==mingw64-cmake set "PATH=C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH%"'
  - set "AV_CMAKE_ARGS=-DBUILD_SHARED_LIBS:BOOL=%shared%"
  - 'if %compiler%==mingw64-cmake set "PATH=C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin;%PATH%"'
  - 'if %compiler%==mingw64-cmake set "AV_CMAKE_ARGS=%AV_CMAKE_ARGS% -DCMAKE_MAKE_PROGRAM=C:\mingw-w64\x86_64-6.3.0-posix-seh-rt_v5-rev1\mingw64\bin\mingw32-make"'
  - set "AV_TIFF_CMAKE_SOURCE=%AV_TIFF_SOURCE%"
  - set "AV_TIFF_CMAKE_INSTALL=%AV_TIFF_INSTALL%"
  - 'if %compiler%==cygwin-cmake set "AV_TIFF_CMAKE_SOURCE=%AV_TIFF_CYG_SOURCE%'
  - 'if %compiler%==cygwin-cmake set "AV_TIFF_CMAKE_INSTALL=%AV_TIFF_CYG_INSTALL%'
  - 'if %compiler%==vc14-nmake call "%VS140COMNTOOLS%..\..\VC\vcvarsall.bat" %platform%'

before_build:
  - mkdir %AV_TIFF_BUILD%
  - cd %AV_TIFF_BUILD%
  - if NOT %compiler%==vc14-nmake echo Running cmake -G "%generator%" -DCMAKE_INSTALL_PREFIX=%AV_TIFF_CMAKE_INSTALL% -DCMAKE_BUILD_TYPE=%configuration% %AV_TIFF_CMAKE_SOURCE%
  - 'if %compiler%==cygwin-cmake bash -c "cmake -G \"%generator%\" -DCMAKE_INSTALL_PREFIX:PATH=%AV_TIFF_CMAKE_INSTALL% -DCMAKE_BUILD_TYPE=%configuration% %AV_CMAKE_ARGS% %AV_TIFF_CMAKE_SOURCE%"'
  - 'if %compiler%==mingw64-cmake cmake -G "%generator%" -DCMAKE_INSTALL_PREFIX:PATH=%AV_TIFF_CMAKE_INSTALL% -DCMAKE_BUILD_TYPE=%configuration% %AV_CMAKE_ARGS% %AV_TIFF_CMAKE_SOURCE%'
  - 'if %compiler%==vc14-cmake cmake -G "%generator%" -DCMAKE_INSTALL_PREFIX:PATH=%AV_TIFF_CMAKE_INSTALL% -DCMAKE_BUILD_TYPE=%configuration% %AV_CMAKE_ARGS% %AV_TIFF_CMAKE_SOURCE%'

build_script:
  - if NOT %compiler%==vc14-nmake cd %AV_TIFF_BUILD%
  - if %compiler%==vc14-nmake cd %AV_TIFF_SOURCE%
  - 'if %compiler%==cygwin-cmake bash -c "cmake --build . --config %configuration% --target install"'
  - 'if %compiler%==mingw64-cmake cmake --build . --config %configuration% --target install'
  - 'if %compiler%==vc14-cmake cmake --build . --config %configuration% --target install'
  - 'if %compiler%==vc14-nmake nmake /f Makefile.vc EXTRAFLAGS=/DHAVE_SNPRINTF=1'
  - 'if %compiler%==vc14-nmake mkdir %AV_TIFF_INSTALL%'
  - 'if %compiler%==vc14-nmake mkdir %AV_TIFF_INSTALL%\bin'
  - 'if %compiler%==vc14-nmake mkdir %AV_TIFF_INSTALL%\lib'
  - 'if %compiler%==vc14-nmake mkdir %AV_TIFF_INSTALL%\include'
  - 'if %compiler%==vc14-nmake copy tools\*.exe %AV_TIFF_INSTALL%\bin'
  - 'if %compiler%==vc14-nmake copy port\*.lib %AV_TIFF_INSTALL%\lib'
  - 'if %compiler%==vc14-nmake copy libtiff\tiff.h %AV_TIFF_INSTALL%\include'
  - 'if %compiler%==vc14-nmake copy libtiff\tiffio.h %AV_TIFF_INSTALL%\include'
  - 'if %compiler%==vc14-nmake copy libtiff\tiffvers.h %AV_TIFF_INSTALL%\include'
  - 'if %compiler%==vc14-nmake copy libtiff\tiffconf.h %AV_TIFF_INSTALL%\include'
  - 'if %compiler%==vc14-nmake copy libtiff\tiffio.hxx %AV_TIFF_INSTALL%\include'

# scripts to run after build
after_build:
  - cd %AV_TIFF_BUILD%
  - '7z a %AV_TIFF_SOURCE%\libtiff-build.zip * -tzip'
  - cd %AV_TIFF_INSTALL%
  - '7z a %AV_TIFF_SOURCE%\libtiff.zip * -tzip'

before_test:
  - cd %AV_TIFF_BUILD%
  - 'if %compiler%==cygwin-cmake bash -c "ctest -V -C %configuration%"'
  - 'if %compiler%==mingw64-cmake ctest -V -C %configuration%'
  - 'if %compiler%==vc14-cmake ctest -V -C %configuration%'
# vc14-nmake does not support unit tests

artifacts:
  - path: libtiff.zip
    name: libtiff.zip
  - path: libtiff-build.zip
    name: libtiff-build.zip