Repository navigation
Commit c1b4b3e
committed
curl's two cells have one cause, and it is not curl
Both targets fail because this graph supplies no TLS provider, and the member's
own test refuses a curl without one — transfer.cpp:45 fails when
CURL_VERSION_SSL is clear, on the stated reasoning that "a curl built with no
SSL still links and still runs, it just silently cannot do https". Configuring
the member without TLS would turn both cells green and measure a different
library.
On linux the provider is compat.openssl, which is built by an install() hook
through OpenSSL's own Configure and is therefore a glibc artefact; it now
declares `provides = ["platform-sdk"]` and fails this link at `setcontext` and
`__isoc23_strtol`.
On windows the provider is Schannel, selected together with the checked-in
lib/config-win32.h by `_WIN32` — the macro a C library presenting POSIX on
Windows does not define. With neither HAVE_CONFIG_H nor _WIN32 curl reads no
configuration at all and stops at `curl_setup.h:591: "too small curl_off_t"`,
which names a consequence 591 lines away from its cause. compat.openssl has no
Windows build, so there is no second provider to fall back to.
Declared rather than left unexplained, and the declaration is falsifiable:
`compat.py check` fails if a declared cell builds, so an in-graph OpenSSL would
force these lines to be removed rather than quietly keeping a stale excuse.1 parent a11fd34 commit c1b4b3e
1 file changed
Lines changed: 8 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
53 | 61 | | |
54 | 62 | | |
55 | 63 | | |
| |||
0 commit comments