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.

66 lines
2.1KB

  1. name: build
  2. on: [push, pull_request]
  3. env:
  4. CACHE_VERSION: 6
  5. DEBIAN_FRONTEND: noninteractive
  6. HOMEBREW_NO_AUTO_UPDATE: 1
  7. PAWPAW_SKIP_LTO: 1
  8. WITH_LTO: false
  9. jobs:
  10. windows:
  11. strategy:
  12. matrix:
  13. target: [win32, win64]
  14. runs-on: ubuntu-22.04
  15. steps:
  16. - uses: actions/checkout@v3
  17. with:
  18. submodules: recursive
  19. - name: Set up cache
  20. uses: actions/cache@v3
  21. with:
  22. path: |
  23. ~/PawPawBuilds
  24. key: ${{ matrix.target }}-v${{ env.CACHE_VERSION }}
  25. - name: Fix GitHub's mess
  26. run: |
  27. sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
  28. sudo dpkg --add-architecture i386
  29. sudo apt-get update -qq
  30. sudo apt-get install libc6:i386 libgcc-s1:i386 libstdc++6:i386 --allow-downgrades
  31. - name: Set up dependencies (win32)
  32. if: ${{ matrix.target == 'win32' }}
  33. run: |
  34. sudo dpkg --add-architecture i386
  35. sudo apt-get update -qq
  36. sudo apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686 gperf mingw-w64 wine-stable
  37. - name: Set up dependencies (win64)
  38. if: ${{ matrix.target == 'win64' }}
  39. run: |
  40. sudo dpkg --add-architecture i386
  41. sudo apt-get update -qq
  42. sudo apt-get install -yqq binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 gperf mingw-w64 wine-stable
  43. - name: Build extra dependencies
  44. run: |
  45. git clone --depth=1 https://github.com/DISTRHO/PawPaw.git
  46. ./PawPaw/bootstrap-cardinal.sh ${{ matrix.target }}
  47. - name: Build cross-compiled
  48. run: |
  49. source PawPaw/local.env ${{ matrix.target }}
  50. make features
  51. make CARLA_EXTRA_TARGETS=true NOOPT=true -j $(nproc)
  52. - name: Set sha8
  53. id: slug
  54. run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
  55. - uses: actions/upload-artifact@v3
  56. with:
  57. name: ${{ github.event.repository.name }}-${{ matrix.target }}-${{ github.event.pull_request.number || steps.slug.outputs.sha8 }}
  58. path: |
  59. bin/*
  60. !bin/*-ladspa.dll
  61. !bin/*-dssi.dll