Open polarathene opened 1 week ago
I don't know if this is the right fix, but this fixed it locally for me.
diff --git a/libssh2-sys/build.rs b/libssh2-sys/build.rs
index 5c9944d..2d37e4b 100644
--- a/libssh2-sys/build.rs
+++ b/libssh2-sys/build.rs
@@ -143,6 +143,8 @@ fn main() {
cfg.define("LIBSSH2_HAVE_ZLIB", None);
+ cfg.define("OPENSSL_NO_ENGINE", None);
+
if profile.contains("debug") {
cfg.define("LIBSSH2DEBUG", None);
}
Fedora 41 fails to build
libssh
asopenssl/engine.h
is no longer included with theopenssl-devel
package. For the time being compatibility is offered via a separateopenssl-devel-engine
package.Broader failures will occur once a future OpenSSL 4.0 release arrives. For context the engine API has been deprecated for a while AFAIK and will be dropped in the next major OpenSSL release.
Build error output
``` cargo:warning=In file included from libssh2/src/agent.c:40: cargo:warning=In file included from libssh2/src/libssh2_priv.h:57: cargo:warning=In file included from /usr/include/stdio.h:28: cargo:warning=In file included from /usr/include/bits/libc-header-start.h:33: cargo:warning=/usr/include/features.h:503:9: warning: '__GLIBC_MINOR__' macro redefined [-Wmacro-redefined] cargo:warning= 503 | #define __GLIBC_MINOR__ 40 cargo:warning= | ^ cargo:warning=Most of that can be ignored, I just wanted to draw attention to the failure cause:
So that line is upstream at: https://github.com/libssh2/libssh2/blob/libssh2-1.11.0/src/openssl.h#L84
I'm not sure if an issue needs to be raised there as they seem to have support for no engine, thus perhaps it's something required to be detected / handled here instead?