Skip to content

Commit 013fd46

Browse files
committed
chore: windows
1 parent d1e5b99 commit 013fd46

File tree

3 files changed

+33
-2
lines changed

3 files changed

+33
-2
lines changed

.github/workflows/_config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ jobs:
6161
# Operating Systems to test
6262
# Comment out any OS you want to skip during development
6363
OS_MATRIX='[
64-
"macos-latest", "ubuntu-latest"
64+
"windows-latest"
6565
]'
6666
# To add more OS: "macos-latest", "windows-latest"
6767

.github/workflows/_test.yml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,12 +49,26 @@ jobs:
4949

5050
- name: Install system dependencies (Windows)
5151
if: runner.os == 'Windows'
52-
run: choco install cmake -y
52+
run: |
53+
choco install cmake -y
54+
choco install openssl -y
5355
5456
- name: Setup MSVC (Windows)
5557
if: runner.os == 'Windows'
5658
uses: microsoft/setup-msbuild@v2
5759

60+
- name: Setup vcpkg (Windows)
61+
if: runner.os == 'Windows'
62+
uses: lukka/run-vcpkg@v11
63+
with:
64+
vcpkgGitCommitId: 'c8696863d371ab7f46e213d8f5ca923c4aef2a00'
65+
66+
- name: Install nghttp2 via vcpkg (Windows)
67+
if: runner.os == 'Windows'
68+
run: |
69+
vcpkg install nghttp2:x64-windows
70+
shell: bash
71+
5872
- name: Cache vendor dependencies
5973
id: cache-vendor
6074
uses: actions/cache@v4

scripts/setup_vendors.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,17 @@ cd "$VENDOR_DIR"
2525

2626
# Detect OS
2727
OS="$(uname -s)"
28+
case "$OS" in
29+
MINGW*|MSYS*|CYGWIN*)
30+
OS="Windows"
31+
;;
32+
Darwin)
33+
OS="Darwin"
34+
;;
35+
Linux)
36+
OS="Linux"
37+
;;
38+
esac
2839
echo "Detected OS: $OS"
2940
echo ""
3041

@@ -126,6 +137,10 @@ echo "==> Setting up nghttp2..."
126137
if [ "$OS" = "Darwin" ] && command -v brew &> /dev/null && brew list libnghttp2 &> /dev/null; then
127138
echo "✓ Using Homebrew's libnghttp2"
128139
echo " Location: $(brew --prefix libnghttp2)"
140+
# On Windows, use vcpkg or skip (to be implemented)
141+
elif [ "$OS" = "Windows" ]; then
142+
echo "⊘ nghttp2 on Windows requires manual setup via vcpkg"
143+
echo " Run: vcpkg install nghttp2:x64-windows"
129144
else
130145
# Build from source on Linux or if Homebrew version not available
131146
if [ ! -d "nghttp2" ]; then
@@ -179,6 +194,8 @@ if [ "$OS" = "Linux" ]; then
179194
fi
180195
if [ "$OS" = "Darwin" ] && command -v brew &> /dev/null && brew list libnghttp2 &> /dev/null; then
181196
echo " ✓ nghttp2: $(brew --prefix libnghttp2) (Homebrew)"
197+
elif [ "$OS" = "Windows" ]; then
198+
echo " ⊘ nghttp2: Install via vcpkg (nghttp2:x64-windows)"
182199
else
183200
echo " ✓ nghttp2: $VENDOR_DIR/nghttp2/install"
184201
fi

0 commit comments

Comments
 (0)