Merge upstream updates from Jef Driesen: - Deepblu Cosmiq+ support has been merged upstream - Oceans S1 support has been merged upstream - Various new models supported: Cressi Donatello, Scubapro G2 TEK, new Excursion v6+ firmware. - misc core changes, most notably supporting a new annoying specialized binary format for "decomode", because Jef still can't deal with strings. - lots of small details * https://github.com/libdivecomputer/libdivecomputer: (58 commits) Keep open-circuit and diluent gas mixes separately Parse some extra gas mix information Limit the index to the fixed gas mixes Handle dives without a valid gas mix more explicit Ignore all gas mixes for freedives Always include all gas mixes defined in the header Add support for the new Excursion v6+ firmware Add support for the HP CCR tank pressure Use the correct field for the setpoint sample Add support for the Oceans S1 Add support for the Deepblu Cosmiq+ Add missing functions for accessing big/little endian values Move the snprintf functions to the platform module Repeat the handshake every few packets Enable big page support Remove the model number from the vtpro struct Add the model number to the version table Move all model numbers to the common header Remove a duplicated include statement Add support for the 300bar pressure sensor ...
125 lines
3.6 KiB
YAML
125 lines
3.6 KiB
YAML
name: Build
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
|
|
linux:
|
|
|
|
name: Linux
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
compiler: [gcc, clang]
|
|
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Install dependencies
|
|
run: sudo apt-get install libbluetooth-dev libusb-1.0-0-dev
|
|
- run: autoreconf --install --force
|
|
- run: ./configure --prefix=/usr
|
|
- run: make
|
|
- run: make distcheck
|
|
- name: Package artifacts
|
|
run: |
|
|
make install DESTDIR=$PWD/artifacts
|
|
tar -czf ${{ github.job }}-${{ matrix.compiler }}.tar.gz -C artifacts usr
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ${{ github.job }}-${{ matrix.compiler }}
|
|
path: ${{ github.job }}-${{ matrix.compiler }}.tar.gz
|
|
|
|
mac:
|
|
|
|
name: Mac
|
|
|
|
runs-on: macos-latest
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
compiler: [gcc, clang]
|
|
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Install dependencies
|
|
run: brew install autoconf automake libtool hidapi libusb
|
|
- run: autoreconf --install --force
|
|
- run: ./configure --prefix=/usr
|
|
- run: make
|
|
- run: make distcheck
|
|
- name: Package artifacts
|
|
run: |
|
|
make install DESTDIR=$PWD/artifacts
|
|
tar -czf ${{ github.job }}-${{ matrix.compiler }}.tar.gz -C artifacts usr
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ${{ github.job }}-${{ matrix.compiler }}
|
|
path: ${{ github.job }}-${{ matrix.compiler }}.tar.gz
|
|
|
|
windows:
|
|
|
|
name: Windows
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
arch: [i686, x86_64]
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Install dependencies
|
|
run: sudo apt-get install gcc-mingw-w64 binutils-mingw-w64 mingw-w64-tools
|
|
- name: Install libusb
|
|
env:
|
|
LIBUSB_VERSION: 1.0.26
|
|
run: |
|
|
wget -c https://github.com/libusb/libusb/archive/refs/tags/v${LIBUSB_VERSION}.tar.gz
|
|
tar xzf v${LIBUSB_VERSION}.tar.gz
|
|
pushd libusb-${LIBUSB_VERSION}
|
|
autoreconf --install --force
|
|
./configure --host=${{ matrix.arch }}-w64-mingw32 --prefix=/usr
|
|
make
|
|
make install DESTDIR=$PWD/../artifacts
|
|
popd
|
|
- name: Install hidapi
|
|
env:
|
|
HIDAPI_VERSION: 0.12.0
|
|
run: |
|
|
wget -c https://github.com/libusb/hidapi/archive/refs/tags/hidapi-${HIDAPI_VERSION}.tar.gz
|
|
tar xzf hidapi-${HIDAPI_VERSION}.tar.gz
|
|
pushd hidapi-hidapi-${HIDAPI_VERSION}
|
|
autoreconf --install --force
|
|
./configure --host=${{ matrix.arch }}-w64-mingw32 --prefix=/usr LDFLAGS='-static-libgcc'
|
|
make
|
|
make install DESTDIR=$PWD/../artifacts
|
|
popd
|
|
- run: autoreconf --install --force
|
|
- run: ./configure --host=${{ matrix.arch }}-w64-mingw32 --prefix=/usr
|
|
env:
|
|
PKG_CONFIG_LIBDIR: ${{ github.workspace }}/artifacts/usr/lib/pkgconfig
|
|
PKG_CONFIG_SYSROOT_DIR: ${{ github.workspace }}/artifacts
|
|
PKG_CONFIG_ALLOW_SYSTEM_CFLAGS: 1
|
|
PKG_CONFIG_ALLOW_SYSTEM_LIBS: 1
|
|
- run: make
|
|
- run: make distcheck
|
|
- name: Package artifacts
|
|
run: |
|
|
make install DESTDIR=$PWD/artifacts
|
|
tar -czf ${{ github.job }}-${{ matrix.arch }}.tar.gz -C artifacts usr
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ${{ github.job }}-${{ matrix.arch }}
|
|
path: ${{ github.job }}-${{ matrix.arch }}.tar.gz
|