mirror of
https://github.com/borgbackup/borg.git
synced 2025-02-01 04:02:34 +00:00
OpenBSD only - statically link OpenSSL (#6474)
Avoid conflicting with shared libcrypto from the base OS pulled in via dependencies.
This commit is contained in:
parent
b6469bb7d7
commit
730fca5bcc
1 changed files with 7 additions and 5 deletions
12
setup.py
12
setup.py
|
@ -154,13 +154,15 @@ def lib_ext_kwargs(pc, prefix_env_var, lib_name, lib_pkg_name, pc_version, lib_s
|
|||
f"or ensure {lib_pkg_name}.pc is in PKG_CONFIG_PATH."
|
||||
)
|
||||
|
||||
crypto_ldflags = []
|
||||
crypto_extra_objects = []
|
||||
if is_win32:
|
||||
crypto_ext_lib = lib_ext_kwargs(pc, "BORG_OPENSSL_PREFIX", "libcrypto", "libcrypto", ">=1.1.1", lib_subdir="")
|
||||
elif is_openbsd:
|
||||
# use openssl (not libressl) because we need AES-OCB and CHACHA20-POLY1305 via EVP api
|
||||
crypto_ext_lib = lib_ext_kwargs(pc, "BORG_OPENSSL_PREFIX", "crypto", "libecrypto11", ">=1.1.1")
|
||||
crypto_ldflags += ["-Wl,-rpath=/usr/local/lib/eopenssl11"]
|
||||
# Use openssl (not libressl) because we need AES-OCB via EVP api. Link
|
||||
# it statically to avoid conflicting with shared libcrypto from the base
|
||||
# OS pulled in via dependencies.
|
||||
crypto_ext_lib = {"include_dirs": ["/usr/local/include/eopenssl11"]}
|
||||
crypto_extra_objects += ["/usr/local/lib/eopenssl11/libcrypto.a"]
|
||||
else:
|
||||
crypto_ext_lib = lib_ext_kwargs(pc, "BORG_OPENSSL_PREFIX", "crypto", "libcrypto", ">=1.1.1")
|
||||
|
||||
|
@ -168,7 +170,7 @@ def lib_ext_kwargs(pc, prefix_env_var, lib_name, lib_pkg_name, pc_version, lib_s
|
|||
dict(sources=[crypto_ll_source]),
|
||||
crypto_ext_lib,
|
||||
dict(extra_compile_args=cflags),
|
||||
dict(extra_link_args=crypto_ldflags),
|
||||
dict(extra_objects=crypto_extra_objects),
|
||||
)
|
||||
|
||||
compress_ext_kwargs = members_appended(
|
||||
|
|
Loading…
Reference in a new issue