123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127 |
- name: Build
-
- on: [push, pull_request]
-
- jobs:
- build-linux:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Install dependencies
- run: |
- sudo apt-get update
- sudo apt-get install -y libfltk1.3-dev fluid gettext appstream
- sudo apt-get install -y libgnutls28-dev nettle-dev libgmp-dev
- sudo apt-get install -y libxtst-dev libxdamage-dev libxfixes-dev libxrandr-dev libpam-dev
- sudo apt-get install -y libavcodec-dev libavutil-dev libswscale-dev
- - name: Configure
- run: cmake -DCMAKE_BUILD_TYPE=Debug -S . -B build
- - name: Build
- working-directory: build
- run: make
- - name: Install
- working-directory: build
- run: make tarball
- - uses: actions/upload-artifact@v3
- with:
- name: Linux (Ubuntu)
- path: build/tigervnc-*.tar.gz
-
- build-windows:
- runs-on: windows-latest
- defaults:
- run:
- shell: msys2 {0}
- steps:
- - uses: actions/checkout@v2
- - uses: msys2/setup-msys2@v2
- - name: Install dependencies
- run: |
- pacman --sync --noconfirm --needed \
- make mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake
- pacman --sync --noconfirm --needed \
- mingw-w64-x86_64-fltk mingw-w64-x86_64-libjpeg-turbo \
- mingw-w64-x86_64-gnutls mingw-w64-x86_64-pixman \
- mingw-w64-x86_64-nettle mingw-w64-x86_64-gmp
- - name: Configure
- run: cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Debug -S . -B build
- - name: Build
- working-directory: build
- run: make
- - name: Install
- working-directory: build
- env:
- MSYS2_PATH_TYPE: inherit
- run: make installer winvnc_installer
- - uses: actions/upload-artifact@v3
- with:
- name: Windows
- path: build/release/tigervnc*.exe
-
- build-macos:
- runs-on: macos-latest
- steps:
- - uses: actions/checkout@v2
- - name: Install dependencies
- run: |
- brew install fltk pixman ffmpeg
- brew install gnutls nettle gmp
- - name: Configure
- run: cmake -DCMAKE_BUILD_TYPE=Debug -S . -B build
- - name: Build
- working-directory: build
- run: make
- - name: Install
- working-directory: build
- run: make dmg
- - uses: actions/upload-artifact@v3
- with:
- name: macOS
- path: build/TigerVNC-*.dmg
-
- build-java:
- runs-on: ubuntu-latest
- strategy:
- matrix:
- java: [ '8', '11', '16' ]
- steps:
- - uses: actions/checkout@v2
- - name: Setup java
- uses: actions/setup-java@v2
- with:
- distribution: 'temurin'
- java-version: ${{ matrix.java }}
- - name: Configure
- working-directory: java
- run: cmake -DCMAKE_BUILD_TYPE=Debug -S . -B build
- - name: Build
- working-directory: java/build
- run: make
- - uses: actions/upload-artifact@v3
- with:
- name: Java (${{ matrix.java }})
- path: java/build/VncViewer.jar
-
- build-packages:
- strategy:
- matrix:
- target:
- - centos8
- - centos7
- - bionic
- - focal
- - jammy
- fail-fast: false
- runs-on: ubuntu-latest
- env:
- DOCKER: ${{ matrix.target }}
- steps:
- - uses: actions/checkout@v2
- - name: Build image
- run: docker build -t tigervnc/$DOCKER .github/containers/$DOCKER
- - name: Build packages
- run: .github/containers/$DOCKER/build.sh
- - uses: actions/upload-artifact@v3
- with:
- name: Packages (${{ matrix.target }})
- path: .github/containers/${{ matrix.target }}/result
|