environment: matrix: - TARGET: vs2008 BUILD_ENVIRONMENT: msbuild APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013 VisualStudioVersion: 9.0 platform: Win32 configuration: Release - TARGET: vs2010 BUILD_ENVIRONMENT: msbuild APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013 VisualStudioVersion: 10.0 platform: Win32 configuration: VSDebug - TARGET: vs2012 BUILD_ENVIRONMENT: msbuild APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013 VisualStudioVersion: 11.0 platform: x64 configuration: Release - TARGET: vs2013 BUILD_ENVIRONMENT: msbuild APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2013 VisualStudioVersion: 12.0 platform: Win32 configuration: Release - TARGET: vs2015 BUILD_ENVIRONMENT: msbuild APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2015 VisualStudioVersion: 14.0 platform: Win32 configuration: Release - TARGET: vs2017 BUILD_ENVIRONMENT: msbuild APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017 VisualStudioVersion: 15.0 configuration: Release - TARGET: python27 BUILD_ENVIRONMENT: python PYTHON: "C:\\Python27" - TARGET: python27-x64 BUILD_ENVIRONMENT: python PYTHON: "C:\\Python27-x64" - TARGET: python36 BUILD_ENVIRONMENT: python PYTHON: "C:\\Python36" - TARGET: python36-x64 BUILD_ENVIRONMENT: python PYTHON: "C:\\Python36-x64" - TARGET: cygwin-gcc BUILD_ENVIRONMENT: cygwin CONFIGURE_OPTIONS: "" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: cygwin-gcc-no-optimization BUILD_ENVIRONMENT: cygwin CONFIGURE_OPTIONS: "--enable-shared=no" CFLAGS: "--coverage -O0" CPPFLAGS: "-DOPTIMIZATION_DISABLED" LDFLAGS: "--coverage" - TARGET: cygwin-gcc-python BUILD_ENVIRONMENT: cygwin CONFIGURE_OPTIONS: "--enable-python" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: cygwin-gcc-python2 BUILD_ENVIRONMENT: cygwin CONFIGURE_OPTIONS: "--enable-python2" CFLAGS: "--coverage" LDFLAGS: "--coverage" PYTHON_VERSION: 2 - TARGET: cygwin-gcc-python3 BUILD_ENVIRONMENT: cygwin CONFIGURE_OPTIONS: "--enable-python3" CFLAGS: "--coverage" LDFLAGS: "--coverage" PYTHON_VERSION: 3 - TARGET: cygwin-gcc-static-executables BUILD_ENVIRONMENT: cygwin CONFIGURE_OPTIONS: "--enable-static-executables" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: cygwin64-gcc BUILD_ENVIRONMENT: cygwin64 CONFIGURE_OPTIONS: "" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: cygwin64-gcc-no-optimization BUILD_ENVIRONMENT: cygwin64 CONFIGURE_OPTIONS: "--enable-shared=no" CFLAGS: "--coverage -O0" CPPFLAGS: "-DOPTIMIZATION_DISABLED" LDFLAGS: "--coverage" - TARGET: cygwin64-gcc-python BUILD_ENVIRONMENT: cygwin64 CONFIGURE_OPTIONS: "--enable-python" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: cygwin64-gcc-python2 BUILD_ENVIRONMENT: cygwin64 CONFIGURE_OPTIONS: "--enable-python2" CFLAGS: "--coverage" LDFLAGS: "--coverage" PYTHON_VERSION: 2 - TARGET: cygwin64-gcc-python3 BUILD_ENVIRONMENT: cygwin64 CONFIGURE_OPTIONS: "--enable-python3" CFLAGS: "--coverage" LDFLAGS: "--coverage" PYTHON_VERSION: 3 - TARGET: cygwin64-gcc-static-executables BUILD_ENVIRONMENT: cygwin64 CONFIGURE_OPTIONS: "--enable-static-executables" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: mingw-gcc BUILD_ENVIRONMENT: mingw CONFIGURE_OPTIONS: "" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: mingw-gcc-no-optimization BUILD_ENVIRONMENT: mingw CONFIGURE_OPTIONS: "--enable-shared=no" CFLAGS: "--coverage -O0" CPPFLAGS: "-DOPTIMIZATION_DISABLED" LDFLAGS: "--coverage" - TARGET: mingw-gcc-static-executables BUILD_ENVIRONMENT: mingw CONFIGURE_OPTIONS: "--enable-static-executables" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: mingw-w64-gcc BUILD_ENVIRONMENT: mingw-w64 CONFIGURE_OPTIONS: "" CFLAGS: "--coverage" LDFLAGS: "--coverage" - TARGET: mingw-w64-gcc-no-optimization BUILD_ENVIRONMENT: mingw-w64 CONFIGURE_OPTIONS: "--enable-shared=no" CFLAGS: "--coverage -O0" CPPFLAGS: "-DOPTIMIZATION_DISABLED" LDFLAGS: "--coverage" - TARGET: mingw-w64-gcc-static-executables BUILD_ENVIRONMENT: mingw-w64 CONFIGURE_OPTIONS: "--enable-static-executables" CFLAGS: "--coverage" LDFLAGS: "--coverage" matrix: allow_failures: - TARGET: python27-x64 install: - cmd: git clone https://github.com/codecov/codecov-bash.git ..\codecov-bash - cmd: if [%BUILD_ENVIRONMENT%]==[msbuild] ( git clone https://github.com/libyal/vstools.git ..\vstools ) - cmd: if [%BUILD_ENVIRONMENT%]==[cygwin] ( C:\cygwin\setup-x86.exe -qgnNdO -l C:\cygwin\var\cache\setup -R c:\cygwin -s http://cygwin.mirror.constant.com -P python2-devel -P python3-devel ) - cmd: if [%BUILD_ENVIRONMENT%]==[cygwin64] ( C:\cygwin64\setup-x86_64.exe -qgnNdO -l C:\cygwin64\var\cache\setup -R c:\cygwin64 -s http://cygwin.mirror.constant.com -P python2-devel -P python3-devel ) build_script: - ps: If ($env:BUILD_ENVIRONMENT -eq "msbuild" -or $env:BUILD_ENVIRONMENT -eq "python") { .\synclibs.ps1; .\autogen.ps1 } - cmd: if [%TARGET%]==[vs2008] ( msbuild /verbosity:quiet msvscpp\libfsntfs.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" ) - cmd: if [%TARGET%]==[vs2010] ( set PYTHONPATH=..\vstools && C:\Python27\python.exe ..\vstools\scripts\msvscpp-convert.py --no-python-dll --output-format 2010 msvscpp\libfsntfs.sln && msbuild /verbosity:quiet vs2010\libfsntfs.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" ) - cmd: if [%TARGET%]==[vs2012] ( set PYTHONPATH=..\vstools && C:\Python27\python.exe ..\vstools\scripts\msvscpp-convert.py --extend-with-x64 --output-format 2012 --python-path "C:\\Python27-x64" msvscpp\libfsntfs.sln && msbuild /verbosity:quiet vs2012\libfsntfs.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" ) - cmd: if [%TARGET%]==[vs2013] ( set PYTHONPATH=..\vstools && C:\Python27\python.exe ..\vstools\scripts\msvscpp-convert.py --output-format 2013 msvscpp\libfsntfs.sln && msbuild /verbosity:quiet vs2013\libfsntfs.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" ) - cmd: if [%TARGET%]==[vs2015] ( set PYTHONPATH=..\vstools && C:\Python27\python.exe ..\vstools\scripts\msvscpp-convert.py --output-format 2015 msvscpp\libfsntfs.sln && msbuild /verbosity:quiet vs2015\libfsntfs.sln /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" ) - cmd: if [%TARGET%]==[vs2017] ( set PYTHONPATH=..\vstools && C:\Python27\python.exe ..\vstools\scripts\msvscpp-convert.py --extend-with-x64 --no-python-dll --output-format 2017 --with-dokany msvscpp\libfsntfs.sln && msbuild /verbosity:quiet vs2017\libfsntfs.sln /property:Platform=Win32 /property:PlatformToolset=v141 /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" && msbuild /verbosity:quiet vs2017\libfsntfs.sln /property:Platform=x64 /property:PlatformToolset=v141 /logger:"C:\Program Files\AppVeyor\BuildAgent\Appveyor.MSBuildLogger.dll" ) - cmd: if [%BUILD_ENVIRONMENT%]==[python] ( "%PYTHON%\\python.exe" setup.py bdist_msi ) - cmd: if [%BUILD_ENVIRONMENT%]==[cygwin] ( xcopy /i /q /s C:\projects\libfsntfs C:\cygwin\home\appveyor\libfsntfs && C:\cygwin\bin\bash -e -l -c "cd libfsntfs && ./synclibs.sh --use-head && ./autogen.sh" ) - cmd: if [%BUILD_ENVIRONMENT%]==[cygwin64] ( xcopy /i /q /s C:\projects\libfsntfs C:\cygwin64\home\appveyor\libfsntfs && C:\cygwin64\bin\bash -e -l -c "cd libfsntfs && ./synclibs.sh --use-head && ./autogen.sh" ) - cmd: if [%BUILD_ENVIRONMENT%]==[mingw] ( xcopy /i /q /s C:\projects\libfsntfs C:\MinGW\msys\1.0\home\appveyor\libfsntfs && C:\MinGW\msys\1.0\bin\bash -e -l -c "cd libfsntfs && sed 's/@VERSION@/0.29/g' m4/pkg.m4.in > m4/pkg.m4 && ./synclibs.sh --use-head && ./autogen.sh" ) - cmd: if [%BUILD_ENVIRONMENT%]==[mingw-w64] ( xcopy /i /q /s C:\projects\libfsntfs C:\msys64\home\appveyor\libfsntfs && C:\msys64\usr\bin\bash -e -l -c "cd libfsntfs && ./synclibs.sh --use-head && ./autogen.sh" ) test_script: - cmd: rem Run tests - ps: If ($env:BUILD_ENVIRONMENT -eq "msbuild") { .\runtests.ps1 } - cmd: if [%BUILD_ENVIRONMENT%]==[cygwin] ( C:\cygwin\bin\bash -l -c "cd libfsntfs && ./configure ${CONFIGURE_OPTIONS} && make > /dev/null && make check CHECK_WITH_STDERR=1; RESULT=$?; if test ${RESULT} -ne 0 && test -f tests/test-suite.log; then cat tests/test-suite.log; fi; exit ${RESULT};" ) - cmd: if [%BUILD_ENVIRONMENT%]==[cygwin64] ( C:\cygwin64\bin\bash -l -c "cd libfsntfs && ./configure ${CONFIGURE_OPTIONS} && make > /dev/null && make check CHECK_WITH_STDERR=1; RESULT=$?; if test ${RESULT} -ne 0 && test -f tests/test-suite.log; then cat tests/test-suite.log; fi; exit ${RESULT};" ) - cmd: if [%BUILD_ENVIRONMENT%]==[mingw] ( C:\MinGW\msys\1.0\bin\bash -l -c "cd libfsntfs && ./configure ${CONFIGURE_OPTIONS} && make > /dev/null && make check CHECK_WITH_STDERR=1; RESULT=$?; if test ${RESULT} -ne 0 && test -f tests/test-suite.log; then cat tests/test-suite.log; fi; exit ${RESULT};" ) - cmd: if [%BUILD_ENVIRONMENT%]==[mingw-w64] ( C:\msys64\usr\bin\bash -l -c "cd libfsntfs && ./configure ${CONFIGURE_OPTIONS} && make > /dev/null && make check CHECK_WITH_STDERR=1; RESULT=$?; if test ${RESULT} -ne 0 && test -f tests/test-suite.log; then cat tests/test-suite.log; fi; exit ${RESULT};" ) after_test: - cmd: if [%TARGET%]==[mingw-gcc-no-optimization] ( copy C:\projects\codecov-bash\codecov C:\MinGW\msys\1.0\home\appveyor\libfsntfs\codecov.sh && C:\MinGW\msys\1.0\bin\bash -e -l -c "cd libfsntfs && chmod a+x ./codecov.sh && sed -i 's/-execdir /-exec /' ./codecov.sh && ./codecov.sh -n ${TARGET} -y .codecov.yml" )