DISTRHO Plugin Framework
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

145 lines
3.4KB

  1. name: cmake
  2. on:
  3. push:
  4. branches:
  5. - '*'
  6. pull_request:
  7. branches:
  8. - '*'
  9. jobs:
  10. ubuntu-22-04:
  11. strategy:
  12. matrix:
  13. target: [linux-arm64, linux-armhf, linux-i686, linux-x86_64, win32, win64, pluginval]
  14. runs-on: ubuntu-22.04
  15. steps:
  16. - uses: actions/checkout@v4
  17. with:
  18. submodules: recursive
  19. - uses: distrho/dpf-cmake-action@v1
  20. with:
  21. dpf_path: .
  22. suffix: _22_04
  23. target: ${{ matrix.target }}
  24. ubuntu-24-04:
  25. strategy:
  26. matrix:
  27. target: [linux-arm64, linux-armhf, linux-x86_64, pluginval]
  28. runs-on: ubuntu-24.04
  29. steps:
  30. - uses: actions/checkout@v4
  31. with:
  32. submodules: recursive
  33. - uses: distrho/dpf-cmake-action@v1
  34. with:
  35. dpf_path: .
  36. suffix: _24_04
  37. target: ${{ matrix.target }}
  38. macos-13:
  39. strategy:
  40. matrix:
  41. target: [macos-intel, macos-universal, macos-10.15]
  42. runs-on: macos-13
  43. steps:
  44. - uses: actions/checkout@v4
  45. with:
  46. submodules: recursive
  47. - uses: distrho/dpf-cmake-action@v1
  48. with:
  49. dpf_path: .
  50. suffix: _13
  51. target: ${{ matrix.target }}
  52. macos-14:
  53. strategy:
  54. matrix:
  55. target: [macos-intel, macos-universal, macos-10.15]
  56. runs-on: macos-14
  57. steps:
  58. - uses: actions/checkout@v4
  59. with:
  60. submodules: recursive
  61. - uses: distrho/dpf-cmake-action@v1
  62. with:
  63. dpf_path: .
  64. suffix: _14
  65. target: ${{ matrix.target }}
  66. macos-15:
  67. strategy:
  68. matrix:
  69. target: [macos-intel, macos-universal, macos-10.15]
  70. runs-on: macos-15
  71. steps:
  72. - uses: actions/checkout@v4
  73. with:
  74. submodules: recursive
  75. - uses: distrho/dpf-cmake-action@v1
  76. with:
  77. dpf_path: .
  78. suffix: _15
  79. target: ${{ matrix.target }}
  80. msvc-win32:
  81. runs-on: windows-2022
  82. steps:
  83. - uses: actions/checkout@v4
  84. with:
  85. submodules: recursive
  86. - name: Configure
  87. run: |
  88. cmake -S . -B build -G"Visual Studio 17 2022" -A"Win32" -DCMAKE_BUILD_TYPE="Release"
  89. - name: Build
  90. run: cmake --build build --config "Release" -j 2
  91. - name: Show built files
  92. working-directory: build/bin
  93. run: tree
  94. - uses: actions/upload-artifact@v4
  95. with:
  96. name: msvc-win32
  97. path: build/bin/
  98. msvc-win64:
  99. runs-on: windows-2022
  100. steps:
  101. - uses: actions/checkout@v4
  102. with:
  103. submodules: recursive
  104. - name: Configure CMake
  105. run: |
  106. cmake -S . -B build -G"Visual Studio 17 2022" -A"x64" -DCMAKE_BUILD_TYPE="Release"
  107. - name: Build all
  108. working-directory: build
  109. run: cmake --build . --config "Release" -j 2
  110. - name: Show built files
  111. working-directory: build/bin
  112. run: tree
  113. - uses: actions/upload-artifact@v4
  114. with:
  115. name: msvc-win64
  116. path: build/bin/
  117. msvc-arm64:
  118. runs-on: windows-11-arm
  119. steps:
  120. - uses: actions/checkout@v4
  121. with:
  122. submodules: recursive
  123. - name: Configure CMake
  124. run: |
  125. cmake -S . -B build -G"Visual Studio 17 2022" -A"ARM64" -DCMAKE_BUILD_TYPE="Release"
  126. - name: Build all
  127. working-directory: build
  128. run: cmake --build . --config "Release" -j 2
  129. - name: Show built files
  130. working-directory: build/bin
  131. run: tree
  132. - uses: actions/upload-artifact@v4
  133. with:
  134. name: msvc-arm64
  135. path: build/bin/