|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- name: build
-
- on:
- push:
- branches:
- - '*'
- pull_request:
- branches:
- - '*'
- env:
- DEBIAN_FRONTEND: noninteractive
- HOMEBREW_NO_AUTO_UPDATE: 1
- WITH_LTO: false
-
- jobs:
- macos-11:
- runs-on: macos-11
- steps:
- - uses: actions/checkout@v3
- - name: Set up dependencies
- run: |
- brew install fluid-synth liblo libmagic libsndfile pkg-config pyqt@5 qt@5 sdl2
- - name: make features
- run: make features
- - name: make
- run: make -j $(sysctl -n hw.logicalcpu)
-
- ubuntu-20_04:
- runs-on: ubuntu-20.04
- steps:
- - uses: actions/checkout@v3
- - name: Fix GitHub's mess
- run: |
- sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
- sudo dpkg --add-architecture i386
- sudo apt-get update -qq
- sudo apt-get install -yqq --allow-downgrades libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
- - name: Set up dependencies
- run: |
- sudo apt-get install -yqq libasound2-dev libfluidsynth-dev libgl1-mesa-dev liblo-dev libmagic-dev libpulse-dev libsdl2-dev libsndfile1-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev pkg-config pyqt5-dev-tools qtbase5-dev
- sudo apt-get install -yqq g++-multilib libx11-6:i386 libxext6:i386
- # Fix 32bit bridge build
- sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
- sudo ln -s /usr/lib/i386-linux-gnu/libXext.so.6 /usr/lib/i386-linux-gnu/libXext.so
- - name: make features
- run: make features
- - name: make
- run: make -j $(nproc)
- - name: make posix32
- run: make posix32 -j $(nproc)
-
- ubuntu-22_04:
- runs-on: ubuntu-22.04
- steps:
- - uses: actions/checkout@v3
- - name: Fix GitHub's mess
- run: |
- sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
- sudo dpkg --add-architecture i386
- sudo apt-get update -qq
- sudo apt-get install -yqq --allow-downgrades libc6:i386 libgcc-s1:i386 libstdc++6:i386
- - name: Set up dependencies
- run: |
- sudo apt-get install -yqq libasound2-dev libfluidsynth-dev libgl1-mesa-dev liblo-dev libmagic-dev libpulse-dev libsdl2-dev libsndfile1-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev pkg-config pyqt5-dev-tools qtbase5-dev
- sudo apt-get install -yqq g++-multilib libx11-6:i386 libxext6:i386
- # Fix 32bit bridge build
- sudo ln -s /usr/lib/i386-linux-gnu/libX11.so.6 /usr/lib/i386-linux-gnu/libX11.so
- sudo ln -s /usr/lib/i386-linux-gnu/libXext.so.6 /usr/lib/i386-linux-gnu/libXext.so
- - name: make features
- run: make features
- - name: make
- run: make -j $(nproc)
- - name: make posix32
- run: make posix32 -j $(nproc)
-
- wasm:
- runs-on: ubuntu-22.04
- env:
- EMSCRIPTEN_VERSION: 3.1.27
- steps:
- - uses: actions/checkout@v3
- with:
- submodules: recursive
- - name: Set up cache
- id: cache
- uses: actions/cache@v3
- with:
- path: |
- ~/emsdk
- key: emsdk-v1
- - name: Set up dependencies
- run: |
- [ -d ~/emsdk ] || git clone https://github.com/emscripten-core/emsdk.git ~/emsdk
- cd ~/emsdk && ./emsdk install ${{ env.EMSCRIPTEN_VERSION }} && ./emsdk activate ${{ env.EMSCRIPTEN_VERSION }}
- - name: make
- env:
- AR: emar
- CC: emcc
- CXX: em++
- NM: emnm
- RANLIB: emranlib
- STRIP: emstrip
- PKG_CONFIG: false
- run: |
- source ~/emsdk/emsdk_env.sh
- make features
- make -j $(nproc)
|