fix(build): vendor OpenSSL for Windows cross-build #10
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/windows-openssl-vendored-fjmcp-8"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
The
build-binary-windows.ymlworkflow fails on thex86_64-pc-windows-gnucross-build:openssl-syscan't find a cross OpenSSL. Thepkg-configcrate skips system-library probing when the host and target triples differ, so the mingw cross-compile finds noopenssl.pcand aborts. OpenSSL arrives transitively throughfj-client/forgejo-api(native-tls) andgit2(openssl-sys).Fix
Vendor OpenSSL from source for
target_os = "windows"by enabling theopensslvendoredfeature in a Windows-scoped target dependency block, mirroring the existing musl static build. The bundledopenssl-srccompiles against the mingw toolchain already in the builder image. Scoped totarget_os = "windows"so the Linux glibc and musl artifacts link OpenSSL exactly as before. NoCargo.lockchange: the crate, version (0.10.80), and vendored source are already locked by the musl block.Also refreshed the
oci-build/Dockerfile.windowsNOTE to document the applied fix instead of the prior "validate on first CI run" placeholder.Validation
The Windows binary build job validates the cross-compile end-to-end on CI.
#FJMCP-8