Skip to content

Commit 1c3c71c

Browse files
runonthespotclaude
andcommitted
fix: combine working solutions from PR #32 and PR #52
- Use PR #32's working Windows approach: explicit OPENSSL_DIR + Strawberry Perl - Use PR #52's working Linux/macOS approach: vendored-openssl feature - Apply vendored-openssl feature to all platforms for consistency - Remove vcpkg approach that was causing Windows failures 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 23fc9d5 commit 1c3c71c

1 file changed

Lines changed: 6 additions & 15 deletions

File tree

.github/workflows/release.yml

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -98,16 +98,7 @@ jobs:
9898
- name: Install build dependencies (Windows)
9999
if: matrix.os == 'windows-latest'
100100
run: |
101-
# Install vcpkg and OpenSSL instead of building from source
102-
git clone https://github.com/Microsoft/vcpkg.git C:\vcpkg
103-
cd C:\vcpkg
104-
.\bootstrap-vcpkg.bat
105-
if [ "${{ matrix.target }}" = "aarch64-pc-windows-msvc" ]; then
106-
.\vcpkg install openssl:arm64-windows-static
107-
else
108-
.\vcpkg install openssl:x64-windows-static
109-
fi
110-
echo "VCPKG_ROOT=C:\vcpkg" >> $GITHUB_ENV
101+
choco install strawberryperl -y
111102
shell: bash
112103

113104
- name: Install cross
@@ -126,15 +117,15 @@ jobs:
126117

127118
- name: Build release binary
128119
env:
129-
# Use vcpkg OpenSSL on Windows instead of vendored
130-
OPENSSL_DIR: ${{ matrix.os == 'windows-latest' && env.VCPKG_ROOT && format('{0}/installed/{1}', env.VCPKG_ROOT, matrix.target == 'aarch64-pc-windows-msvc' && 'arm64-windows-static' || 'x64-windows-static') || '' }}
120+
# Explicit OPENSSL_DIR paths for ARM cross-compilation (from PR #32)
121+
OPENSSL_DIR: ${{ matrix.target == 'aarch64-pc-windows-msvc' && 'C:/Program Files/OpenSSL-Win64' || '' }}
131122
run: |
132123
# Use different OpenSSL strategies per platform
133124
if [ "${{ matrix.os }}" = "windows-latest" ]; then
134-
# Use vcpkg OpenSSL on Windows (no vendored feature needed)
135-
${{ env.CARGO_CMD }} build --locked --release --target ${{ matrix.target }} --package ck-search
125+
# Use vendored OpenSSL on Windows with explicit paths for ARM (PR #32 approach)
126+
${{ env.CARGO_CMD }} build --locked --release --target ${{ matrix.target }} --package ck-search --features=vendored-openssl
136127
else
137-
# Use vendored OpenSSL on Unix platforms
128+
# Use vendored OpenSSL on Unix platforms (PR #52 approach)
138129
${{ env.CARGO_CMD }} build --locked --release --target ${{ matrix.target }} --package ck-search --features=vendored-openssl
139130
fi
140131
shell: bash

0 commit comments

Comments
 (0)