windows.yml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. ---
  2. name: Windows GitHub CI for 1.1.1
  3. on: [pull_request, push]
  4. permissions:
  5. contents: read
  6. jobs:
  7. shared:
  8. # Run a job for each of the specified target architectures:
  9. strategy:
  10. matrix:
  11. os:
  12. - windows-2019
  13. - windows-2022
  14. platform:
  15. - arch: win64
  16. config: VC-WIN64A
  17. - arch: win32
  18. config: VC-WIN32 --strict-warnings
  19. runs-on: ${{matrix.os}}
  20. steps:
  21. - uses: actions/checkout@v4
  22. - uses: ilammy/msvc-dev-cmd@v1
  23. with:
  24. arch: ${{ matrix.platform.arch }}
  25. - uses: ilammy/setup-nasm@v1
  26. with:
  27. platform: ${{ matrix.platform.arch }}
  28. - uses: shogo82148/actions-setup-perl@v1
  29. - name: prepare the build directory
  30. run: mkdir _build
  31. - name: config
  32. working-directory: _build
  33. run: |
  34. perl ..\Configure no-makedepend ${{ matrix.platform.config }}
  35. perl configdata.pm --dump
  36. - name: build
  37. working-directory: _build
  38. run: nmake /S
  39. - name: test
  40. working-directory: _build
  41. run: nmake test VERBOSE_FAILURE=yes TESTS=-test_fuzz*
  42. - name: install
  43. # Run on 64 bit only as 32 bit is slow enough already
  44. if: $${{ matrix.platform.arch == 'win64' }}
  45. run: |
  46. mkdir _dest
  47. nmake install DESTDIR=_dest
  48. working-directory: _build
  49. plain:
  50. strategy:
  51. matrix:
  52. os:
  53. - windows-2019
  54. - windows-2022
  55. runs-on: ${{matrix.os}}
  56. steps:
  57. - uses: actions/checkout@v4
  58. - uses: ilammy/msvc-dev-cmd@v1
  59. - uses: shogo82148/actions-setup-perl@v1
  60. - name: prepare the build directory
  61. run: mkdir _build
  62. - name: config
  63. working-directory: _build
  64. run: |
  65. perl ..\Configure no-makedepend no-shared VC-WIN64A-masm
  66. perl configdata.pm --dump
  67. - name: build
  68. working-directory: _build
  69. run: nmake /S
  70. - name: test
  71. working-directory: _build
  72. run: nmake test VERBOSE_FAILURE=yes
  73. minimal:
  74. strategy:
  75. matrix:
  76. os:
  77. - windows-2019
  78. - windows-2022
  79. runs-on: ${{matrix.os}}
  80. steps:
  81. - uses: actions/checkout@v4
  82. - uses: ilammy/msvc-dev-cmd@v1
  83. - uses: shogo82148/actions-setup-perl@v1
  84. - name: prepare the build directory
  85. run: mkdir _build
  86. - name: config
  87. working-directory: _build
  88. run: |
  89. perl ..\Configure no-makedepend no-deprecated no-asm -DOPENSSL_SMALL_FOOTPRINT VC-WIN64A
  90. perl configdata.pm --dump
  91. - name: build
  92. working-directory: _build
  93. run: nmake # verbose, so no /S here
  94. - name: test
  95. working-directory: _build
  96. run: nmake test VERBOSE_FAILURE=yes TESTS=-test_fuzz*