main.yml 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. name: Build
  2. on: [push, pull_request]
  3. jobs:
  4. Build:
  5. name: ${{ matrix.platform.name }}
  6. runs-on: ${{ matrix.platform.os }}
  7. strategy:
  8. matrix:
  9. platform:
  10. - { name: Windows (x64), os: windows-latest }
  11. - { name: Windows (x86), os: windows-latest, flags: -A Win32 }
  12. - { name: Linux, os: ubuntu-20.04, flags: -GNinja }
  13. - { name: MacOS, os: macos-latest }
  14. steps:
  15. - name: Setup Linux dependencies
  16. if: runner.os == 'Linux'
  17. run: |
  18. sudo apt-get update
  19. sudo apt-get install wayland-protocols \
  20. pkg-config \
  21. ninja-build \
  22. libasound2-dev \
  23. libdbus-1-dev \
  24. libegl1-mesa-dev \
  25. libgl1-mesa-dev \
  26. libgles2-mesa-dev \
  27. libglu1-mesa-dev \
  28. libibus-1.0-dev \
  29. libpulse-dev \
  30. libsdl2-2.0-0 \
  31. libsndio-dev \
  32. libudev-dev \
  33. libwayland-dev \
  34. libwayland-client++0 \
  35. wayland-scanner++ \
  36. libwayland-cursor++0 \
  37. libx11-dev \
  38. libxcursor-dev \
  39. libxext-dev \
  40. libxi-dev \
  41. libxinerama-dev \
  42. libxkbcommon-dev \
  43. libxrandr-dev \
  44. libxss-dev \
  45. libxt-dev \
  46. libxv-dev \
  47. libxxf86vm-dev \
  48. libdrm-dev \
  49. libgbm-dev\
  50. libpulse-dev
  51. - uses: actions/checkout@v2
  52. - name: Configure CMake
  53. run: cmake -B build ${{ matrix.platform.flags }}
  54. - name: Build
  55. run: cmake --build build/