mirror of
https://github.com/outbackdingo/UltraGrid.git
synced 2026-03-21 14:40:22 +00:00
Use gcc-5 as a CUDA host compiler in Linux if available. This version is supported up to current CUDA version while being available in U16.04.
130 lines
3.8 KiB
YAML
130 lines
3.8 KiB
YAML
name: C/C++ CI
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- ci
|
|
- master
|
|
- devel
|
|
paths:
|
|
- '.github/scripts/**'
|
|
- '.github/workflows/ccpp.yml'
|
|
- '**.c'
|
|
- '**.cpp'
|
|
- '**.cu'
|
|
- '**.h'
|
|
- '**.hpp'
|
|
- '**.m'
|
|
- '**.mm'
|
|
- 'autogen.sh'
|
|
- 'configure.ac'
|
|
- 'data/scripts/**'
|
|
- 'Makefile.in'
|
|
|
|
jobs:
|
|
Ubuntu:
|
|
if: github.repository == 'CESNET/UltraGrid' || github.repository == 'MartinPulec/UltraGrid'
|
|
name: run Ubuntu
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
sdk_pass: ${{ secrets.sdk_pass }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: true
|
|
- name: bootstrap
|
|
run: .github/scripts/Linux/prepare.sh
|
|
- name: configure
|
|
run: ./autogen.sh --enable-qt --with-cuda-host-compiler=$CUDA_HOST_COMPILER --enable-plugins --with-live555=/usr/local
|
|
- name: make
|
|
run: make -j4
|
|
- name: make check
|
|
run: make check
|
|
- name: make distcheck
|
|
run: make distcheck
|
|
- name: AppImage
|
|
run: APPIMAGE=`data/scripts/Linux-AppImage/create-appimage.sh` && mkdir UltraGrid-CI-Linux && mv $APPIMAGE UltraGrid-CI-Linux
|
|
- name: Upload build
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: UltraGrid CI Linux build
|
|
path: UltraGrid-CI-Linux
|
|
|
|
macOS:
|
|
if: github.repository == 'CESNET/UltraGrid' || github.repository == 'MartinPulec/UltraGrid'
|
|
name: run macOS
|
|
runs-on: macos-latest
|
|
env:
|
|
sdk_pass: ${{ secrets.sdk_pass }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: true
|
|
- name: bootstrap
|
|
run: .github/scripts/macOS/prepare.sh
|
|
- name: configure
|
|
run: ./autogen.sh --enable-qt --with-live555=/usr/local
|
|
- name: make
|
|
run: make -j4 osx-gui-dmg
|
|
- name: make check
|
|
run: make check
|
|
- name: make distcheck
|
|
run: make distcheck
|
|
- name: Upload build
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: UltraGrid CI macOS build
|
|
path: UltraGrid.dmg
|
|
|
|
Windows:
|
|
if: github.repository == 'CESNET/UltraGrid' || github.repository == 'MartinPulec/UltraGrid'
|
|
name: run Windows
|
|
runs-on: windows-latest
|
|
env:
|
|
MSYS2_PATH_TYPE: inherit
|
|
sdk_pass: ${{ secrets.sdk_pass }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
submodules: true
|
|
- name: Find MSVC
|
|
run: .github/scripts/Windows/find_msvc.ps1
|
|
- name: bootsrap
|
|
run: .github/scripts/Windows/prepare.ps1
|
|
- name: Cache MSYS2
|
|
id: cache-msys2
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: C:\msys64
|
|
key: cache-msys2
|
|
- name: bootsrap MSYS2
|
|
if: steps.cache-msys2.outputs.cache-hit != 'true'
|
|
run: |
|
|
choco install --no-progress msys2 --params "/NoUpdate /InstallDir:C:\msys64"
|
|
C:\msys64\usr\bin\bash -lc '$GITHUB_WORKSPACE/.github/scripts/Windows/prepare_msys.sh'
|
|
- name: configure
|
|
run: C:\msys64\usr\bin\bash -lc "./autogen.sh --enable-qt --disable-ndi --with-live555=/usr/local"
|
|
- name: make
|
|
run: C:\msys64\usr\bin\bash -lc "make -j4"
|
|
- name: make check
|
|
run: C:\msys64\usr\bin\bash -lc "make check"
|
|
- name: make dist-check
|
|
run: C:\msys64\usr\bin\bash -lc "make distcheck"
|
|
- name: add DLL depends
|
|
run: |
|
|
C:\msys64\usr\bin\bash -lc 'cp gui/QT/uv-qt.exe bin'
|
|
C:\msys64\usr\bin\bash -lc 'rm bin/run_tests.exe; IFS=\"|\"; for exe in bin/*exe; do for n in `data/scripts/get_dll_depends.sh \"$exe\" | tr \"\n\" \"|\"`; do cp \"$n\" bin; done; done'
|
|
C:\msys64\usr\bin\bash -lc 'windeployqt bin/uv-qt.exe'
|
|
C:\msys64\usr\bin\bash -lc 'cp data/update.ps1 bin'
|
|
C:\msys64\usr\bin\bash -lc 'mv bin UltraGrid-CI-Win'
|
|
- name: Upload build
|
|
uses: actions/upload-artifact@v1
|
|
with:
|
|
name: UltraGrid CI Windows build
|
|
path: UltraGrid-CI-Win
|
|
|
|
# vi: set expandtab sw=2:
|