diff options
Diffstat (limited to '.github/workflows/backend.yml')
-rw-r--r-- | .github/workflows/backend.yml | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/.github/workflows/backend.yml b/.github/workflows/backend.yml new file mode 100644 index 0000000..cfab7bd --- /dev/null +++ b/.github/workflows/backend.yml @@ -0,0 +1,63 @@ +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: + fail-fast: false + 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: + fail-fast: false + matrix: + target: [i686, x86_64, arm, armhf, aarch64, mips, mipsel, mips64, mips64el, s390x, win32] + 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* |