ci.yml 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233
  1. name: CI
  2. on:
  3. push:
  4. paths-ignore:
  5. - 'docs/**'
  6. - 'LICENSE'
  7. - 'read.me'
  8. - 'README.md'
  9. pull_request:
  10. paths-ignore:
  11. - 'docs/**'
  12. - 'LICENSE'
  13. - 'read.me'
  14. - 'README.md'
  15. env:
  16. TEST_REF_FORBID_GEN_REFS: true
  17. jobs:
  18. tests-ubuntu1804-gpp:
  19. if: false # Disabled job
  20. strategy:
  21. matrix:
  22. os: [ubuntu-18.04]
  23. compiler: [g++]
  24. version: [7, 9, 10]
  25. name: Use ${{ matrix.compiler }}-${{ matrix.version }} on ${{ matrix.os }}
  26. runs-on: ${{ matrix.os }}
  27. steps:
  28. - uses: actions/checkout@v3
  29. - name: Run tests
  30. run: |
  31. cd tests
  32. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }}
  33. tests-ubuntu1804-clang:
  34. if: false # Disabled job
  35. strategy:
  36. matrix:
  37. os: [ubuntu-18.04]
  38. compiler: [clang++]
  39. version: [9]
  40. name: Use ${{ matrix.compiler }}-${{ matrix.version }} on ${{ matrix.os }}
  41. runs-on: ${{ matrix.os }}
  42. steps:
  43. - uses: actions/checkout@v3
  44. - name: Run tests
  45. run: |
  46. cd tests
  47. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }}
  48. tests-ubuntu2204-gpp:
  49. strategy:
  50. matrix:
  51. os: [ubuntu-22.04]
  52. compiler: [g++]
  53. version: [9, 10, 11]
  54. name: Use ${{ matrix.compiler }}-${{ matrix.version }} on ${{ matrix.os }}
  55. runs-on: ${{ matrix.os }}
  56. steps:
  57. - uses: actions/checkout@v3
  58. - name: Run tests
  59. run: |
  60. cd tests
  61. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }}
  62. tests-ubuntu2204-clang:
  63. strategy:
  64. matrix:
  65. os: [ubuntu-22.04]
  66. compiler: [clang++]
  67. version: [12, 13, 14]
  68. name: Use ${{ matrix.compiler }}-${{ matrix.version }} on ${{ matrix.os }}
  69. runs-on: ${{ matrix.os }}
  70. steps:
  71. - uses: actions/checkout@v3
  72. - name: Run tests
  73. run: |
  74. cd tests
  75. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }}
  76. tests-ubuntu1804-gpp-32:
  77. if: false # Disabled job
  78. strategy:
  79. matrix:
  80. os: [ubuntu-18.04]
  81. compiler: [g++]
  82. version: [7, 9, 10]
  83. name: Use ${{ matrix.compiler }}-${{ matrix.version }} -m32 on ${{ matrix.os }}
  84. runs-on: ${{ matrix.os }}
  85. steps:
  86. - uses: actions/checkout@v3
  87. - name: Run tests
  88. run: |
  89. sudo apt-get install gcc-${{ matrix.version }}-multilib g++-${{ matrix.version }}-multilib
  90. cd tests
  91. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }} 32
  92. tests-ubuntu1804-clang-32:
  93. if: false # Disabled job
  94. strategy:
  95. matrix:
  96. os: [ubuntu-18.04]
  97. compiler: [clang++]
  98. version: [9]
  99. name: Use ${{ matrix.compiler }}-${{ matrix.version }} -m32 on ${{ matrix.os }}
  100. runs-on: ${{ matrix.os }}
  101. steps:
  102. - uses: actions/checkout@v3
  103. - name: Run tests
  104. run: |
  105. sudo apt-get install gcc-multilib g++-multilib
  106. cd tests
  107. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }} 32
  108. tests-ubuntu2204-gpp-32:
  109. strategy:
  110. matrix:
  111. os: [ubuntu-22.04]
  112. compiler: [g++]
  113. version: [9, 10, 11]
  114. name: Use ${{ matrix.compiler }}-${{ matrix.version }} -m32 on ${{ matrix.os }}
  115. runs-on: ${{ matrix.os }}
  116. steps:
  117. - uses: actions/checkout@v3
  118. - name: Run tests
  119. run: |
  120. sudo apt-get install gcc-${{ matrix.version }}-multilib g++-${{ matrix.version }}-multilib
  121. cd tests
  122. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }} 32
  123. tests-ubuntu2204-clang-32:
  124. strategy:
  125. matrix:
  126. os: [ubuntu-22.04]
  127. compiler: [clang++]
  128. version: [12, 13, 14]
  129. name: Use ${{ matrix.compiler }}-${{ matrix.version }} -m32 on ${{ matrix.os }}
  130. runs-on: ${{ matrix.os }}
  131. steps:
  132. - uses: actions/checkout@v3
  133. - name: Run tests
  134. run: |
  135. sudo apt-get install gcc-multilib g++-multilib
  136. cd tests
  137. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }} 32
  138. tests-macos11-gpp:
  139. strategy:
  140. matrix:
  141. os: [macos-11]
  142. compiler: [g++]
  143. version: [10, 11, 12]
  144. name: Use ${{ matrix.compiler }}-${{ matrix.version }} on ${{ matrix.os }}
  145. runs-on: ${{ matrix.os }}
  146. steps:
  147. - uses: actions/checkout@v3
  148. - name: Run tests
  149. run: |
  150. cd tests
  151. bash ./run.sh ${{ matrix.compiler }} v${{ matrix.version }}
  152. tests-macos11-clang:
  153. strategy:
  154. matrix:
  155. os: [macos-11]
  156. compiler: [clang++]
  157. name: Use ${{ matrix.compiler }} on ${{ matrix.os }}
  158. runs-on: ${{ matrix.os }}
  159. steps:
  160. - uses: actions/checkout@v3
  161. - name: Run tests
  162. run: |
  163. cd tests
  164. bash ./run.sh ${{ matrix.compiler }}
  165. tests-macos12-gpp:
  166. strategy:
  167. matrix:
  168. os: [macos-12]
  169. compiler: [g++]
  170. name: Use ${{ matrix.compiler }} on ${{ matrix.os }}
  171. runs-on: ${{ matrix.os }}
  172. steps:
  173. - uses: actions/checkout@v3
  174. - name: Run tests
  175. run: |
  176. cd tests
  177. bash ./run.sh ${{ matrix.compiler }}
  178. tests-macos12-clang:
  179. strategy:
  180. matrix:
  181. os: [macos-12]
  182. compiler: [clang++]
  183. version: [12, 13, 14]
  184. name: Use ${{ matrix.compiler }} on ${{ matrix.os }}
  185. runs-on: ${{ matrix.os }}
  186. steps:
  187. - uses: actions/checkout@v3
  188. - name: Run tests
  189. run: |
  190. cd tests
  191. bash ./run.sh ${{ matrix.compiler }}
  192. tests-windows-2019:
  193. strategy:
  194. matrix:
  195. os: [windows-2019]
  196. compiler: [msvc, g++, clang++]
  197. name: Use ${{ matrix.compiler }} on ${{ matrix.os }}
  198. runs-on: ${{ matrix.os }}
  199. steps:
  200. - uses: actions/checkout@v3
  201. - name: Run tests
  202. run: |
  203. cd tests
  204. bash ./run.sh ${{ matrix.compiler }}
  205. tests-windows-2022:
  206. strategy:
  207. matrix:
  208. os: [windows-2022]
  209. compiler: [msvc, g++]
  210. name: Use ${{ matrix.compiler }} on ${{ matrix.os }}
  211. runs-on: ${{ matrix.os }}
  212. steps:
  213. - uses: actions/checkout@v3
  214. - name: Run tests
  215. run: |
  216. cd tests
  217. bash ./run.sh ${{ matrix.compiler }}