2
0
Fork 0
mirror of https://github.com/bazel-contrib/rules_foreign_cc synced 2024-12-03 02:52:58 +00:00
rules_foreign_cc/examples/third_party/curl/BUILD.curl.bazel

60 lines
1.5 KiB
Plaintext
Raw Normal View History

load("@rules_foreign_cc//foreign_cc:defs.bzl", "cmake")
filegroup(
name = "all_srcs",
srcs = glob(
include = ["**"],
exclude = ["*.bazel"],
),
)
_CACHE_ENTRIES = {
"BUILD_CURL_EXE": "off",
"BUILD_SHARED_LIBS": "off",
"CMAKE_BUILD_TYPE": "RELEASE",
"CMAKE_PREFIX_PATH": "$$EXT_BUILD_DEPS$$/openssl",
"CMAKE_USE_OPENSSL": "on",
# TODO: ldap should likely be enabled
"CURL_DISABLE_LDAP": "on",
"OPENSSL_ROOT_DIR": "$$EXT_BUILD_DEPS$$/openssl",
}
_MACOS_CACHE_ENTRIES = dict(_CACHE_ENTRIES.items() + {
"CMAKE_AR": "",
"CMAKE_C_ARCHIVE_CREATE": "",
}.items())
_LINUX_CACHE_ENTRIES = dict(_CACHE_ENTRIES.items() + {
"CMAKE_C_FLAGS": "-fPIC",
}.items())
cmake(
name = "curl",
cache_entries = select({
"@platforms//os:linux": _LINUX_CACHE_ENTRIES,
"@platforms//os:macos": _MACOS_CACHE_ENTRIES,
"//conditions:default": _CACHE_ENTRIES,
}),
generate_args = select({
"@platforms//os:windows": ["-GNinja"],
"//conditions:default": [],
}),
generate_crosstool_file = False,
lib_source = ":all_srcs",
linkopts = select({
"@platforms//os:linux": [
"-lpthread",
],
"//conditions:default": [],
}),
out_static_libs = select({
"@platforms//os:windows": ["libcurl.lib"],
"//conditions:default": ["libcurl.a"],
}),
visibility = ["//visibility:public"],
deps = [
"@openssl",
"@zlib",
],
)