commit d57fda7307a0eb2e9240542d94dbac3e1233f940
| author | 斟酌 鵬兄 <tgckpg@gmail.com> |
| date | 2026-05-26T11:18:35Z |
| subject | Create cmake-multi-platform.yml |
commit d57fda7307a0eb2e9240542d94dbac3e1233f940
Author: 斟酌 鵬兄 <tgckpg@gmail.com>
Date: 2026-05-26T11:18:35Z
Create cmake-multi-platform.yml
---
.github/workflows/cmake-multi-platform.yml | 109 +++++++++++++++++++++++++++++
1 file changed, 109 insertions(+)
diff --git a/.github/workflows/cmake-multi-platform.yml b/.github/workflows/cmake-multi-platform.yml
new file mode 100644
index 0000000..963f0ec
--- /dev/null
+++ b/.github/workflows/cmake-multi-platform.yml
@@ -0,0 +1,109 @@
+name: tinyproxy CI
+
+on:
+ push:
+ branches: ["main"]
+ pull_request:
+ branches: ["main"]
+
+jobs:
+ linux-musl-x86_64:
+ name: Linux musl x86_64 static
+ runs-on: ubuntu-latest
+ container:
+ image: alpine:3.23
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Install deps
+ run: |
+ apk add --no-cache \
+ build-base \
+ libevent-dev \
+ python3
+
+ - name: Build
+ run: make clean all
+
+ - name: Verify static binary
+ run: |
+ file bin/tinyproxy
+ ldd bin/tinyproxy && exit 1 || true
+
+ - name: Test
+ run: make test
+
+ linux-musl-arm64:
+ name: Linux musl arm64 static
+ runs-on: ubuntu-24.04-arm
+ container:
+ image: alpine:3.23
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Install deps
+ run: |
+ apk add --no-cache \
+ build-base \
+ libevent-dev \
+ python3
+
+ - name: Build
+ run: make clean all
+
+ - name: Verify static binary
+ run: |
+ file bin/tinyproxy
+ ldd bin/tinyproxy && exit 1 || true
+
+ - name: Test
+ run: make test
+
+ macos:
+ name: macOS build
+ runs-on: macos-15
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Install deps
+ run: |
+ brew update
+ brew install libevent
+
+ - name: Build
+ run: make clean all STATIC=0
+
+ - name: Test
+ run: make test
+
+ windows:
+ name: Windows build
+ runs-on: windows-2022
+ continue-on-error: true
+
+ defaults:
+ run:
+ shell: msys2 {0}
+
+ steps:
+ - uses: actions/checkout@v4
+
+ - name: Set up MSYS2
+ uses: msys2/setup-msys2@v2
+ with:
+ msystem: UCRT64
+ update: true
+ install: >-
+ base-devel
+ mingw-w64-ucrt-x86_64-gcc
+ mingw-w64-ucrt-x86_64-libevent
+ mingw-w64-ucrt-x86_64-python
+
+ - name: Build
+ run: make clean all STATIC=0
+
+ - name: Test
+ run: make test