Audio and MIDI file render through Carla
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.

130 lines
3.9KB

  1. name: build
  2. on: [push, pull_request]
  3. env:
  4. CACHE_VERSION: 1
  5. DEBIAN_FRONTEND: noninteractive
  6. PAWPAW_SKIP_LTO: 1
  7. PAWPAW_SKIP_SAMPLERATE: 1
  8. PAWPAW_SKIP_TESTS: 1
  9. PAWPAW_VERSION: 90236be774b3d2d615f489815b7cafbe576feaf6
  10. jobs:
  11. linux:
  12. strategy:
  13. matrix:
  14. target: [linux-x86_64]
  15. runs-on: ubuntu-latest
  16. container:
  17. image: ubuntu:20.04
  18. steps:
  19. - uses: actions/cache@v3
  20. with:
  21. path: |
  22. ~/PawPawBuilds
  23. key: ${{ matrix.target }}-v${{ env.CACHE_VERSION }}
  24. - name: install dependencies
  25. shell: bash
  26. run: |
  27. apt-get update -qq
  28. apt-get install -yqq autoconf automake build-essential curl cmake git libasound2-dev libdbus-1-dev libgl1-mesa-dev libglib2.0-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev xz-utils
  29. - uses: actions/checkout@v3
  30. with:
  31. submodules: recursive
  32. - name: bootstrap
  33. shell: bash
  34. run: |
  35. git clone https://github.com/DISTRHO/PawPaw.git
  36. git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
  37. ./PawPaw/bootstrap-common.sh ${{ matrix.target }} && ./PawPaw/.cleanup.sh ${{ matrix.target }}
  38. - name: build
  39. shell: bash
  40. run: |
  41. source PawPaw/local.env ${{ matrix.target }}
  42. ${CMAKE} -S . -B build -DCARLA_BUILD_STATIC:BOOL=TRUE
  43. cmake --build build -j
  44. - uses: actions/upload-artifact@v3
  45. with:
  46. name: ${{ matrix.target }}
  47. path: build/bin
  48. macos:
  49. strategy:
  50. matrix:
  51. target: [macos-universal]
  52. runs-on: macos-11
  53. steps:
  54. - uses: actions/cache@v3
  55. with:
  56. path: |
  57. ~/PawPawBuilds
  58. key: ${{ matrix.target }}-v${{ env.CACHE_VERSION }}
  59. - name: install dependencies
  60. shell: bash
  61. run: |
  62. brew install cmake git jq meson
  63. - uses: actions/checkout@v3
  64. with:
  65. submodules: recursive
  66. - name: bootstrap
  67. shell: bash
  68. run: |
  69. git clone https://github.com/DISTRHO/PawPaw.git
  70. git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
  71. ./PawPaw/bootstrap-common.sh ${{ matrix.target }} && ./PawPaw/.cleanup.sh ${{ matrix.target }}
  72. - name: build
  73. shell: bash
  74. run: |
  75. source PawPaw/local.env ${{ matrix.target }}
  76. ${CMAKE} -S . -B build -DCARLA_BUILD_STATIC:BOOL=TRUE
  77. cmake --build build -j
  78. - uses: actions/upload-artifact@v3
  79. with:
  80. name: ${{ matrix.target }}
  81. path: build/bin
  82. windows:
  83. strategy:
  84. matrix:
  85. target: [win32, win64]
  86. runs-on: ubuntu-latest
  87. container:
  88. image: ubuntu:22.04
  89. steps:
  90. - uses: actions/cache@v3
  91. with:
  92. path: |
  93. ~/PawPawBuilds
  94. key: ${{ matrix.target }}-v${{ env.CACHE_VERSION }}
  95. - name: install dependencies
  96. shell: bash
  97. run: |
  98. dpkg --add-architecture i386
  99. apt-get update -qq
  100. if [ '${{ matrix.target }}' == 'win32' ]; then
  101. apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686
  102. else
  103. apt-get install -yqq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64
  104. fi
  105. apt-get install -yqq autoconf automake curl cmake git mingw-w64 wine wine32 xz-utils
  106. - uses: actions/checkout@v3
  107. with:
  108. submodules: recursive
  109. - name: bootstrap
  110. shell: bash
  111. run: |
  112. git clone https://github.com/DISTRHO/PawPaw.git
  113. git -C PawPaw checkout ${{ env.PAWPAW_VERSION }}
  114. ./PawPaw/bootstrap-common.sh ${{ matrix.target }} && ./PawPaw/.cleanup.sh ${{ matrix.target }}
  115. - name: build
  116. shell: bash
  117. run: |
  118. source PawPaw/local.env ${{ matrix.target }}
  119. ${CMAKE} -S . -B build -DCARLA_BUILD_STATIC:BOOL=TRUE
  120. cmake --build build -j
  121. - uses: actions/upload-artifact@v3
  122. with:
  123. name: ${{ matrix.target }}
  124. path: build/bin