mirror of
https://github.com/tsl0922/ttyd.git
synced 2025-12-24 20:54:21 +01:00
86 lines
2.5 KiB
YAML
86 lines
2.5 KiB
YAML
name: backend
|
|
|
|
on:
|
|
push:
|
|
paths:
|
|
- ".github/workflows/backend.yml"
|
|
- "CMakeLists.txt"
|
|
- "src/*"
|
|
- "scripts/*"
|
|
pull_request:
|
|
paths:
|
|
- ".github/workflows/backend.yml"
|
|
- "CMakeLists.txt"
|
|
- "src/*"
|
|
- "scripts/*"
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
lws-version: [4.3.2, 3.2.3]
|
|
steps:
|
|
- name: Install packages
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install build-essential cmake libjson-c-dev zlib1g-dev libssl-dev libuv1-dev
|
|
- name: Install libwebsockets-${{ matrix.lws-version }}
|
|
env:
|
|
LWS_VERSION: ${{ matrix.lws-version }}
|
|
run: |
|
|
cd $(mktemp -d)
|
|
curl -sLo- https://github.com/warmcat/libwebsockets/archive/v${LWS_VERSION}.tar.gz | tar xz
|
|
cd libwebsockets-${LWS_VERSION}
|
|
cmake -DLWS_WITH_LIBUV=ON -DLWS_UNIX_SOCK=ON -DLWS_IPV6=ON -DLWS_WITHOUT_TESTAPPS=ON -DCMAKE_BUILD_TYPE=RELEASE .
|
|
make && sudo make install && sudo ldconfig
|
|
- uses: actions/checkout@v3
|
|
- name: Build ttyd
|
|
run: |
|
|
cmake -DCMAKE_BUILD_TYPE=RELEASE .
|
|
make && sudo make install
|
|
ttyd -v
|
|
cross:
|
|
runs-on: ubuntu-20.04
|
|
strategy:
|
|
matrix:
|
|
target: [i686, x86_64, arm, armhf, aarch64, mips, mipsel, mips64, mips64el, s390x]
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Install packages
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install -y autoconf automake build-essential cmake curl file libtool
|
|
- name: Cross build (${{ matrix.target }})
|
|
env:
|
|
BUILD_TARGET: ${{ matrix.target }}
|
|
run: ./scripts/cross-build.sh
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ttyd.${{ matrix.target }}
|
|
path: build/ttyd
|
|
win10:
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: msys2/setup-msys2@v2
|
|
with:
|
|
msystem: MINGW64
|
|
install: >-
|
|
base-devel
|
|
subversion
|
|
mingw64/mingw-w64-x86_64-gcc
|
|
mingw64/mingw-w64-x86_64-cmake
|
|
mingw64/mingw-w64-x86_64-zlib
|
|
mingw64/mingw-w64-x86_64-libuv
|
|
mingw64/mingw-w64-x86_64-mbedtls
|
|
mingw64/mingw-w64-x86_64-json-c
|
|
update: true
|
|
- name: Build ttyd
|
|
shell: msys2 {0}
|
|
run: ./scripts/mingw-build.sh
|
|
- uses: actions/upload-artifact@v3
|
|
with:
|
|
name: ttyd.win10
|
|
path: build/ttyd.exe
|