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.

161 lines
5.2KB

  1. name: cmake
  2. on:
  3. push:
  4. branches:
  5. - '*'
  6. tags:
  7. - '*'
  8. pull_request:
  9. branches:
  10. - '*'
  11. env:
  12. BUILD_TYPE: Release
  13. jobs:
  14. cmake_linux:
  15. runs-on: ubuntu-18.04
  16. steps:
  17. - uses: actions/checkout@v2
  18. with:
  19. submodules: recursive
  20. - name: Set up dependencies
  21. run: |
  22. sudo apt-get update && \
  23. sudo apt-get install \
  24. cmake \
  25. ninja-build \
  26. libjack-jackd2-dev \
  27. liblo-dev \
  28. libgl-dev \
  29. libcairo2-dev \
  30. libx11-dev
  31. - name: Create Build Environment
  32. shell: bash
  33. working-directory: ${{runner.workspace}}
  34. run: cmake -E make_directory build
  35. - name: Configure CMake
  36. shell: bash
  37. working-directory: ${{runner.workspace}}/build
  38. run: |
  39. cmake "$GITHUB_WORKSPACE" -G Ninja \
  40. -DCMAKE_BUILD_TYPE="$BUILD_TYPE"
  41. - name: Build all
  42. shell: bash
  43. working-directory: ${{runner.workspace}}/build
  44. run: cmake --build . --config "$BUILD_TYPE" -j 2
  45. - name: Display built files
  46. shell: bash
  47. working-directory: ${{runner.workspace}}/build/bin
  48. run: ls -lFR
  49. - uses: actions/upload-artifact@v2
  50. with:
  51. name: Linux artifacts
  52. path: ${{runner.workspace}}/build/bin/
  53. cmake_macos:
  54. runs-on: macos-10.15
  55. steps:
  56. - uses: actions/checkout@v2
  57. with:
  58. submodules: recursive
  59. - name: Create Build Environment
  60. shell: bash
  61. working-directory: ${{runner.workspace}}
  62. run: cmake -E make_directory build
  63. - name: Configure CMake
  64. shell: bash
  65. working-directory: ${{runner.workspace}}/build
  66. run: |
  67. cmake "$GITHUB_WORKSPACE" \
  68. -DCMAKE_BUILD_TYPE="$BUILD_TYPE"
  69. - name: Build all
  70. shell: bash
  71. working-directory: ${{runner.workspace}}/build
  72. run: cmake --build . --config "$BUILD_TYPE" -j 2
  73. - name: Display built files
  74. shell: bash
  75. working-directory: ${{runner.workspace}}/build/bin
  76. run: ls -lFR
  77. - uses: actions/upload-artifact@v2
  78. with:
  79. name: macOS artifacts
  80. path: ${{runner.workspace}}/build/bin/
  81. cmake_win32:
  82. runs-on: windows-2019
  83. steps:
  84. - name: Set environment
  85. run: |
  86. echo "release_arch=Win32" >> "${Env:GITHUB_ENV}"
  87. echo "vcpkg_triplet=x86-windows-static" >> "${Env:GITHUB_ENV}"
  88. echo "vcpkg_git_commit_id=a3db16a4475b963cacf0260068c497fb72c8f3c0" >> "${Env:GITHUB_ENV}"
  89. - name: Restore from cache and install vcpkg
  90. uses: lukka/run-vcpkg@v6
  91. with:
  92. setupOnly: true
  93. vcpkgTriplet: ${{env.vcpkg_triplet}}
  94. vcpkgGitCommitId: ${{env.vcpkg_git_commit_id}}
  95. #- name: Install packages
  96. # run: |
  97. # & "${Env:VCPKG_ROOT}/vcpkg" install "cairo:${Env:vcpkg_triplet}"
  98. - uses: actions/checkout@v2
  99. with:
  100. submodules: recursive
  101. - name: Create Build Environment
  102. working-directory: ${{runner.workspace}}
  103. run: cmake -E make_directory build
  104. - name: Configure CMake
  105. working-directory: ${{runner.workspace}}/build
  106. run: |
  107. cmake "${Env:GITHUB_WORKSPACE}" -G"Visual Studio 16 2019" -A"${Env:release_arch}" -DCMAKE_BUILD_TYPE="${Env:BUILD_TYPE}" -DVCPKG_TARGET_TRIPLET="${Env:vcpkg_triplet}" -DCMAKE_TOOLCHAIN_FILE="${Env:VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake"
  108. - name: Build all
  109. working-directory: ${{runner.workspace}}/build
  110. run: cmake --build . --config "${Env:BUILD_TYPE}" -j 2
  111. - name: Show built files
  112. working-directory: ${{runner.workspace}}/build/bin
  113. run: tree
  114. - uses: actions/upload-artifact@v2
  115. with:
  116. name: Win32 artifacts
  117. path: ${{runner.workspace}}/build/bin/
  118. cmake_win64:
  119. runs-on: windows-2019
  120. steps:
  121. - name: Set environment
  122. run: |
  123. echo "release_arch=x64" >> "${Env:GITHUB_ENV}"
  124. echo "vcpkg_triplet=x64-windows-static" >> "${Env:GITHUB_ENV}"
  125. echo "vcpkg_git_commit_id=a3db16a4475b963cacf0260068c497fb72c8f3c0" >> "${Env:GITHUB_ENV}"
  126. - name: Restore from cache and install vcpkg
  127. uses: lukka/run-vcpkg@v6
  128. with:
  129. setupOnly: true
  130. vcpkgTriplet: ${{env.vcpkg_triplet}}
  131. vcpkgGitCommitId: ${{env.vcpkg_git_commit_id}}
  132. #- name: Install packages
  133. # run: |
  134. # & "${Env:VCPKG_ROOT}/vcpkg" install "cairo:${Env:vcpkg_triplet}"
  135. - uses: actions/checkout@v2
  136. with:
  137. submodules: recursive
  138. - name: Create Build Environment
  139. working-directory: ${{runner.workspace}}
  140. run: cmake -E make_directory build
  141. - name: Configure CMake
  142. working-directory: ${{runner.workspace}}/build
  143. run: |
  144. cmake "${Env:GITHUB_WORKSPACE}" -G"Visual Studio 16 2019" -A"${Env:release_arch}" -DCMAKE_BUILD_TYPE="${Env:BUILD_TYPE}" -DVCPKG_TARGET_TRIPLET="${Env:vcpkg_triplet}" -DCMAKE_TOOLCHAIN_FILE="${Env:VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake"
  145. - name: Build all
  146. working-directory: ${{runner.workspace}}/build
  147. run: cmake --build . --config "${Env:BUILD_TYPE}" -j 2
  148. - name: Show built files
  149. working-directory: ${{runner.workspace}}/build/bin
  150. run: tree
  151. - uses: actions/upload-artifact@v2
  152. with:
  153. name: Win64 artifacts
  154. path: ${{runner.workspace}}/build/bin/