DISTRHO Nekobi
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.

97 lines
2.8KB

  1. name: build
  2. on:
  3. push:
  4. branches:
  5. - '*'
  6. pull_request:
  7. branches:
  8. - '*'
  9. env:
  10. DEBIAN_FRONTEND: noninteractive
  11. BASE_FLAGS: -mtune=generic -msse -msse2
  12. jobs:
  13. # linux x64
  14. 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 install -yq libasound2-dev libpulse-dev liblo-dev libgl1-mesa-dev
  23. - name: Build Linux native
  24. env:
  25. CFLAGS: ${BASE_FLAGS} -mfpmath=sse
  26. CXXFLAGS: ${BASE_FLAGS} -mfpmath=sse
  27. run: |
  28. make NOOPT=true
  29. - uses: actions/upload-artifact@v2
  30. with:
  31. name: linux x64 binaries
  32. path: bin/*
  33. # macOS universal
  34. macos:
  35. runs-on: macos-10.15
  36. steps:
  37. - uses: actions/checkout@v2
  38. with:
  39. submodules: recursive
  40. - name: Fix up Xcode
  41. run: |
  42. sudo rm -Rf /Library/Developer/CommandLineTools/SDKs/*
  43. sudo xcode-select -s "/Applications/Xcode_12.3.app"
  44. - name: Build macOS
  45. env:
  46. CFLAGS: ${BASE_FLAGS} -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_12 -mmacosx-version-min=10.12 -arch x86_64 -arch arm64
  47. CXXFLAGS: ${BASE_FLAGS} -DMAC_OS_X_VERSION_MAX_ALLOWED=MAC_OS_X_VERSION_10_12 -mmacosx-version-min=10.12 -arch x86_64 -arch arm64
  48. LDFLAGS: -mmacosx-version-min=10.12 -arch x86_64 -arch arm64
  49. run: |
  50. make NOOPT=true
  51. - uses: actions/upload-artifact@v2
  52. with:
  53. name: macOS universal binaries
  54. path: |
  55. bin/*
  56. !bin/*-dssi.dylib
  57. # linux with win64 cross-compilation
  58. #win64:
  59. #runs-on: ubuntu-20.04
  60. #steps:
  61. #- uses: actions/checkout@v2
  62. #with:
  63. #submodules: recursive
  64. #- name: Set up cache
  65. #uses: actions/cache@v2
  66. #with:
  67. #path: ~/apt-archives
  68. #key: cache-win64
  69. #- name: Restore debian packages cache
  70. #run: |
  71. #if [ -d ~/apt-archives ] && [ "$(ls ~/apt-archives | wc -l)" -ne 0 ]; then \
  72. #sudo cp ~/apt-archives/*.deb /var/cache/apt/archives/; \
  73. #fi
  74. #- name: Set up dependencies
  75. #run: |
  76. #wget -qO- https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add - && \
  77. #sudo dpkg --add-architecture i386 && \
  78. #sudo apt-add-repository -y 'deb https://dl.winehq.org/wine-builds/ubuntu/ focal main' && \
  79. #sudo apt-get update -qq && \
  80. #sudo apt-get install -yq mingw-w64 binfmt-support binutils-mingw-w64-x86-64 g++-mingw-w64-x86-64 winehq-stable
  81. #- name: Cache debian packages
  82. #run: |
  83. #mkdir -p ~/apt-archives && \
  84. #sudo mv /var/cache/apt/archives/*.deb ~/apt-archives/
  85. #- name: Build win64 cross-compiled
  86. #shell: bash
  87. #run: |
  88. #make
  89. #- uses: actions/upload-artifact@v2
  90. #with:
  91. #name: win64 installer
  92. #path: setup/inno/PawPaw-*.exe