build: vendor openssl so musl cross-build can link statically #4

Merged
mik-tf merged 2 commits from development_mik into development 2026-04-28 02:46:58 +00:00
Owner

CI build for x86_64-unknown-linux-musl was failing with Could not find directory of OpenSSL installation. The runner image has libssl-dev for the host (gnu) but not for the musl cross-target, so openssl-syss build script can't locate it.

Fix: add openssl = { version = "0.10", features = ["vendored"] } as a direct workspace dep so the vendored feature propagates to the transitive openssl-sys, telling it to compile OpenSSL from source statically. Standard fix for static musl binaries; no TLS-behaviour change.

Signed-off-by: mik-tf

CI build for `x86_64-unknown-linux-musl` was failing with `Could not find directory of OpenSSL installation`. The runner image has libssl-dev for the host (gnu) but not for the musl cross-target, so openssl-syss build script can't locate it. Fix: add `openssl = { version = "0.10", features = ["vendored"] }` as a direct workspace dep so the `vendored` feature propagates to the transitive openssl-sys, telling it to compile OpenSSL from source statically. Standard fix for static musl binaries; no TLS-behaviour change. Signed-off-by: mik-tf
build: vendor openssl so musl cross-build can link statically
Some checks failed
Build and Test / build-and-test (pull_request) Failing after 0s
c98883aae5
CI build for x86_64-unknown-linux-musl was failing at link time:

  Could not find directory of OpenSSL installation
  $HOST = x86_64-unknown-linux-gnu
  $TARGET = x86_64-unknown-linux-musl
  openssl-sys = 0.9.111

The runner image has libssl-dev for the host gnu target but not for
the musl cross-target, and the openssl-sys build script can't cross-
discover the right paths. Adding `openssl` as a direct workspace dep
with the `vendored` feature makes openssl-sys compile OpenSSL from
source statically — sidesteps the system-library lookup entirely. No
TLS-implementation change vs the existing native-tls path used by
reqwest + async-stripe; the bytes the runtime calls into are
identical, just statically linked.

Standard fix for Rust binaries that ship as static musl artifacts.

Signed-off-by: mik-tf
ci: retrigger after 30-min runner pool recovery wait
All checks were successful
Build and Test / build-and-test (pull_request) Successful in 5m50s
dfe31c5792
Signed-off-by: mik-tf
mik-tf merged commit a80a6eddd0 into development 2026-04-28 02:46:58 +00:00
mik-tf deleted branch development_mik 2026-04-28 02:46:59 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lhumina_code/hero_launcher!4
No description provided.