Skip to content

Commit

Permalink
git: Always use OpenSSL on win32
Browse files Browse the repository at this point in the history
By default, libssh2 uses Windows Cryptography Next Generation when targeting
win32. The wincng backend does not support ED25519, which is a widely-used
algorithm among git hosting services, and in some cases may be the only option
on remotes in certain configurations.

This change necessitates Windows users building jj to install openssl via vcpkg
for the target triple x64-windows-static-md when building for MSVC, or otherwise
have OpenSSL available at build time. This should also generally work when
building for MinGW, though I did not try it.

Fixes jj-vcs#3322
  • Loading branch information
HybridEidolon committed Apr 21, 2024
1 parent 77eaf67 commit bf2d8d7
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 0 deletions.
1 change: 1 addition & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ indoc = "2.0.4"
insta = { version = "1.38.0", features = ["filters"] }
itertools = "0.12.1"
libc = { version = "0.2.153" }
libssh2-sys = { version = "0.3.0", features = ["openssl-on-win32"] }
maplit = "1.0.2"
minus = { version = "5.6.1", features = ["dynamic_output", "search"] }
num_cpus = "1.16.0"
Expand Down
1 change: 1 addition & 0 deletions lib/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ hex = { workspace = true }
ignore = { workspace = true }
itertools = { workspace = true }
jj-lib-proc-macros = { workspace = true }
libssh2-sys = { workspace = true }
maplit = { workspace = true }
once_cell = { workspace = true }
pest = { workspace = true }
Expand Down

0 comments on commit bf2d8d7

Please sign in to comment.