appveyor.yml 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. image:
  2. - Visual Studio 2017
  3. platform:
  4. - x64
  5. - x86
  6. environment:
  7. fast_finish: true
  8. matrix:
  9. - VSVER: 15
  10. configuration:
  11. - shared
  12. - plain
  13. - minimal
  14. before_build:
  15. - ps: >-
  16. Install-Module VSSetup -Scope CurrentUser
  17. - ps: >-
  18. Get-VSSetupInstance -All
  19. - ps: >-
  20. gci env:* | sort-object name
  21. - ps: >-
  22. If ($env:Platform -Match "x86") {
  23. $env:VCVARS_PLATFORM="x86"
  24. $env:TARGET="VC-WIN32 no-asm --strict-warnings"
  25. } Else {
  26. $env:VCVARS_PLATFORM="amd64"
  27. $env:TARGET="VC-WIN64A-masm"
  28. }
  29. - ps: >-
  30. If ($env:Configuration -Match "shared") {
  31. $env:SHARED="no-makedepend"
  32. } ElseIf ($env:Configuration -Match "minimal") {
  33. $env:SHARED="no-shared no-dso no-makedepend no-aria no-async no-autoload-config no-blake2 no-bf no-camellia no-cast no-chacha no-cmac no-cms no-comp no-ct no-des no-dgram no-dh no-dsa no-dtls no-ec2m no-engine no-filenames no-gost no-idea no-mdc2 no-md4 no-multiblock no-nextprotoneg no-ocsp no-ocb no-poly1305 no-psk no-rc2 no-rc4 no-rmd160 no-seed no-siphash no-sm2 no-sm3 no-sm4 no-srp no-srtp no-ssl3 no-ssl3-method no-ts no-ui-console no-whirlpool no-asm -DOPENSSL_SMALL_FOOTPRINT"
  34. } Else {
  35. $env:SHARED="no-shared no-makedepend"
  36. }
  37. - call "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" %VCVARS_PLATFORM%
  38. - mkdir _build
  39. - cd _build
  40. - perl ..\Configure %TARGET% %SHARED%
  41. - perl configdata.pm --dump
  42. - cd ..
  43. - ps: >-
  44. if (-not $env:APPVEYOR_PULL_REQUEST_NUMBER`
  45. -or (&git log -1 $env:APPVEYOR_PULL_REQUEST_HEAD_COMMIT |
  46. Select-String "\[extended tests\]") ) {
  47. $env:EXTENDED_TESTS="yes"
  48. }
  49. build_script:
  50. - cd _build
  51. - ps: >-
  52. If ($env:Configuration -Match "shared" -or $env:EXTENDED_TESTS) {
  53. cmd /c "nmake build_all_generated 2>&1"
  54. cmd /c "nmake PERL=no-perl 2>&1"
  55. }
  56. - cd ..
  57. test_script:
  58. - cd _build
  59. - ps: >-
  60. If ($env:Configuration -Match "shared" -or $env:EXTENDED_TESTS) {
  61. if ($env:EXTENDED_TESTS) {
  62. cmd /c "nmake test V=1 2>&1"
  63. } Else {
  64. cmd /c "nmake test V=1 TESTS=-test_fuzz 2>&1"
  65. }
  66. }
  67. - ps: >-
  68. if ($env:EXTENDED_TESTS) {
  69. mkdir ..\_install
  70. cmd /c "nmake install DESTDIR=..\_install 2>&1"
  71. }
  72. - cd ..