I don't really know what I'm doing. This workflow build stuff seems m… #2996
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | ||
| on: [push, pull_request, workflow_dispatch] | ||
| jobs: | ||
| ubuntu-build: | ||
| name: Ubuntu CI | ||
| strategy: | ||
| matrix: | ||
| makefile: [Makefile] | ||
| runs-on: ubuntu-latest | ||
| steps: | ||
| - name: Add ka9q apt repository | ||
| run: | | ||
| curl -fsSL http://homer.ka9q.net/ka9q-archive-keyring.asc | \ | ||
| sudo tee /usr/share/keyrings/ka9q-archive-keyring.asc >/dev/null | ||
| echo "deb [signed-by=/usr/share/keyrings/ka9q-archive-keyring.asc arch=amd64] http://homer.ka9q.net ka9q main" | \ | ||
| sudo tee /etc/apt/sources.list.d/ka9q.list >/dev/null | ||
| sudo apt-get update | ||
| - name: Install dependencies | ||
| run: | | ||
| sudo apt-get update -qq | ||
| sudo apt-get install -y \ | ||
| libfobos-dev \ | ||
| libhydrasdr-dev \ | ||
| libusb-dev \ | ||
| libusb-1.0-0-dev \ | ||
| libncurses5-dev \ | ||
| libfftw3-dev \ | ||
| libbsd-dev \ | ||
| libhackrf-dev \ | ||
| libogg-dev \ | ||
| libopus-dev \ | ||
| libairspy-dev \ | ||
| libairspyhf-dev \ | ||
| librtlsdr-dev \ | ||
| libbladerf-dev \ | ||
| libiniparser-dev \ | ||
| libavahi-client-dev \ | ||
| portaudio19-dev \ | ||
| uuid-dev \ | ||
| libsamplerate-dev \ | ||
| libliquid-dev \ | ||
| avahi-daemon \ | ||
| libgnutls28-dev libgcrypt20-dev | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
| - name: Compile | ||
| run: make | ||
| - name: Install | ||
| run: sudo make install | ||
| - name: Build and test web | ||
| run: | | ||
| git clone https://github.com/davidmoreno/onion | ||
| cd onion | ||
| mkdir build | ||
| cd build | ||
| cmake -DCMAKE_POLICY_VERSION_MINIMUM=3.5 \ | ||
| -DONION_USE_PAM=false -DONION_USE_PNG=false \ | ||
| -DONION_USE_JPEG=false -DONION_USE_XML2=false \ | ||
| -DONION_USE_SYSTEMD=false -DONION_USE_SQLITE3=false \ | ||
| -DONION_USE_REDIS=false -DONION_USE_GC=false \ | ||
| -DONION_USE_TESTS=false \ | ||
| -DONION_EXAMPLES=false -DONION_USE_BINDINGS_CPP=false .. | ||
| make | ||
| sudo make install | ||
| sudo ldconfig | ||
| cd ../../ | ||
| git clone https://github.com/wa2n-code/ka9q-web | ||
| cd ka9q-web | ||
| sed -i 's|KA9Q_RADIO_DIR=../ka9q-radio|KA9Q_RADIO_DIR=../|' Makefile | ||
| sudo make install | ||
| cd .. | ||
| macos-build: | ||
| name: MacOS CI | ||
| runs-on: macos-latest | ||
| steps: | ||
| - name: Checkout code | ||
| uses: actions/checkout@v4 | ||
| - name: Install dependencies | ||
| run: | | ||
| brew update | ||
| brew bundle install --file src/Brewfile | ||
| - name: Install Avahi | ||
| run: | | ||
| cd /tmp | ||
| curl https://avahi.org/download/avahi-0.8.tar.gz > avahi-0.8.tar.gz | ||
| tar xvpf avahi-0.8.tar.gz | ||
| cd avahi-0.8 | ||
| sed -i '' 's/"\/run"/"\/var\/run"/' configure | ||
| CFLAGS="-D__APPLE_USE_RFC_2292 -I$(brew --prefix)/include" LDFLAGS="-L$(brew --prefix)/lib" ./configure \ | ||
| --with-distro=darwin \ | ||
| --disable-autoipd \ | ||
| --disable-gtk3 \ | ||
| --disable-libdaemon \ | ||
| --disable-mono \ | ||
| --disable-python \ | ||
| --disable-qt5 \ | ||
| --disable-silent-rules \ | ||
| --disable-tests | ||
| make -j4 | ||
| sudo make install | ||
| - name: Compile | ||
| run: C_INCLUDE_PATH="$(brew --prefix)/include:$(brew --prefix)/opt/ncurses/include" LIBRARY_PATH="$(brew --prefix)/lib:$(brew --prefix)/opt/ncurses/lib" make | ||
| - name: Install | ||
| run: sudo make install | ||