typesense/bazel/openssl3.BUILD
2022-12-15 21:09:06 +05:30

63 lines
1.5 KiB
Plaintext

load("@rules_foreign_cc//foreign_cc:defs.bzl", "configure_make")
filegroup(
name = "all_srcs",
srcs = glob(["**"]),
visibility = ["//visibility:public"],
)
configure_make(
name = "openssl",
configure_command = "config",
configure_in_place = True,
configure_options = [
"enable-rfc3779",
"enable-cms",
"enable-ec_nistp_64_gcc_128",
"--libdir=lib",
"no-shared",
"--with-zlib-include=$$EXT_BUILD_DEPS$$",
"--with-zlib-lib=$$EXT_BUILD_DEPS$$",
# https://stackoverflow.com/questions/36220341/struct-in6-addr-has-no-member-named-s6-addr32-with-ansi
"-D_DEFAULT_SOURCE=1",
"-DPEDANTIC",
],
env = select({
"@platforms//os:macos": {
"AR": "",
"PERL": "$$EXT_BUILD_ROOT$$/$(PERL)",
},
"//conditions:default": {
"PERL": "$$EXT_BUILD_ROOT$$/$(PERL)",
},
}),
lib_name = "openssl",
lib_source = ":all_srcs",
out_lib_dir = "../openssl.build_tmpdir/openssl/lib",
out_static_libs = [
"libssl.a",
"libcrypto.a",
],
targets = [
"build_libs",
"install_dev",
],
toolchains = ["@rules_perl//:current_toolchain"],
visibility = ["//visibility:public"],
deps = [
"@com_github_madler_zlib//:zlib",
],
)
alias(
name = "crypto",
actual = "openssl",
visibility = ["//visibility:public"],
)
alias(
name = "ssl",
actual = "openssl",
visibility = ["//visibility:public"],
)