mirror of https://github.com/mongodb/mongo
Co-authored-by: auto-revert-processor <devprod-si-team@mongodb.com> GitOrigin-RevId: e61dab88af82497fdc63a143fe683331e4917ea1
This commit is contained in:
parent
5a0e3c73c2
commit
7fb9f45346
|
|
@ -59,7 +59,7 @@
|
|||
"moduleExtensions": {
|
||||
"//bazel:bzlmod.bzl%setup_mongo_python_toolchains": {
|
||||
"general": {
|
||||
"bzlTransitiveDigest": "kr6GfZjuyqFMqBYRqon5+HkVFTVoKzl1xtdeQj+jlEk=",
|
||||
"bzlTransitiveDigest": "hJjUHd8gYJ+UhUuc0EhGnjmPEIJWFeFqwY2XLEMFLG4=",
|
||||
"usagesDigest": "bUxjq9n+hj2YwYT/lcSP4lHyQ2GVy5JpFgSmddUqUZg=",
|
||||
"recordedFileInputs": {},
|
||||
"recordedDirentsInputs": {},
|
||||
|
|
|
|||
|
|
@ -26,17 +26,17 @@ compiler_type = rule(
|
|||
# mongo_toolchain_version
|
||||
# =========
|
||||
|
||||
mongo_toolchain_version_values = ["v5"]
|
||||
mongo_toolchain_version_values = ["v4", "v5"]
|
||||
|
||||
mongo_toolchain_version_provider = provider(
|
||||
doc = "Select the mongo toolchain version (e.g.: v5)",
|
||||
fields = {"mongo_toolchain_version": "Choose one of " + ".".join(mongo_toolchain_version_values)},
|
||||
doc = "Select the mongo toolchain version (e.g.: v4)",
|
||||
fields = {"mongo_toolchain_version": "Choose one of [v4, v5]"},
|
||||
)
|
||||
|
||||
def mongo_toolchain_version_impl(ctx):
|
||||
mongo_toolchain_version_value = ctx.build_setting_value
|
||||
if mongo_toolchain_version_value not in mongo_toolchain_version_values:
|
||||
fail(str(ctx.label) + " mongo_toolchain_version allowed to take values {" + ", ".join(mongo_toolchain_version_values) + "} but was set to unallowed value " + mongo_toolchain_version_value)
|
||||
fail(str(ctx.label) + " mongo_toolchain_version allowed to take values {" + ", ".join(mongo_toolchain_version_value) + "} but was set to unallowed value " + mongo_toolchain_version_value)
|
||||
return mongo_toolchain_version_provider(mongo_toolchain_version = mongo_toolchain_version_value)
|
||||
|
||||
mongo_toolchain_version = rule(
|
||||
|
|
|
|||
|
|
@ -119,7 +119,7 @@ toolchain_download = repository_rule(
|
|||
doc = "Host architecture.",
|
||||
),
|
||||
"version": attr.string(
|
||||
values = ["v5"],
|
||||
values = ["v4", "v5"],
|
||||
doc = "Mongodbtoolchain version.",
|
||||
mandatory = True,
|
||||
),
|
||||
|
|
@ -135,6 +135,12 @@ toolchain_download = repository_rule(
|
|||
)
|
||||
|
||||
def setup_mongo_toolchains():
|
||||
toolchain_download(
|
||||
name = "mongo_toolchain_v4",
|
||||
version = "v4",
|
||||
flags_tpl = "//bazel/toolchains/cc:mongo_toolchain_flags_v4.bzl",
|
||||
)
|
||||
|
||||
toolchain_download(
|
||||
name = "mongo_toolchain_v5",
|
||||
version = "v5",
|
||||
|
|
@ -142,6 +148,7 @@ def setup_mongo_toolchains():
|
|||
)
|
||||
|
||||
native.register_toolchains(
|
||||
"@mongo_toolchain_v4//:all",
|
||||
"@mongo_toolchain_v5//:all",
|
||||
)
|
||||
|
||||
|
|
|
|||
|
|
@ -0,0 +1,33 @@
|
|||
COMMON_LINK_FLAGS = [
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/lib/gcc/{arch}-mongodb-linux/11.3.0",
|
||||
"external/mongo_toolchain_v4/v4/lib",
|
||||
"external/mongo_toolchain_v4/v4/lib64",
|
||||
]
|
||||
|
||||
COMMON_BUILTIN_INCLUDE_DIRECTORIES = [
|
||||
"/usr/include/openssl",
|
||||
"/usr/include/{arch}-mongodb-linux",
|
||||
"/usr/include",
|
||||
]
|
||||
|
||||
COMMON_INCLUDE_DIRECTORIES = [
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/include/c++/11.3.0",
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/include/c++/11.3.0/{arch}-mongodb-linux",
|
||||
]
|
||||
|
||||
COMMON_BINDIRS = [
|
||||
"external/mongo_toolchain_v4/v4/bin",
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/libexec/gcc/{arch}-mongodb-linux/11.3.0",
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/lib/gcc/{arch}-mongodb-linux/11.3.0",
|
||||
"external/mongo_toolchain_v4/stow/llvm-v4/bin",
|
||||
]
|
||||
|
||||
GCC_INCLUDE_DIRS = [
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/lib/gcc/{arch}-mongodb-linux/11.3.0/include",
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/lib/gcc/{arch}-mongodb-linux/11.3.0/include-fixed",
|
||||
]
|
||||
|
||||
CLANG_INCLUDE_DIRS = [
|
||||
"external/mongo_toolchain_v4/stow/gcc-v4/include/c++/11.3.0/backward",
|
||||
"external/mongo_toolchain_v4/stow/llvm-v4/lib/clang/12.0.1/include",
|
||||
]
|
||||
|
|
@ -1,5 +1,7 @@
|
|||
load("//bazel/toolchains/cc:mongo_toolchain_version_v4.bzl", "TOOLCHAIN_MAP_V4")
|
||||
load("//bazel/toolchains/cc:mongo_toolchain_version_v5.bzl", "TOOLCHAIN_MAP_V5")
|
||||
|
||||
TOOLCHAIN_MAP = {
|
||||
"v4": TOOLCHAIN_MAP_V4,
|
||||
"v5": TOOLCHAIN_MAP_V5,
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,116 @@
|
|||
# Use mongo/bazel/toolchains/mongo_toolchain_version_generator.py to generate this mapping for a given patch build.
|
||||
|
||||
TOOLCHAIN_PATCH_BUILD_ID = "acdc1709a01126c67dbd4f0f37491e171f64ec29"
|
||||
TOOLCHAIN_PATCH_BUILD_DATE = "24_10_11_23_01_02"
|
||||
TOOLCHAIN_MAP_V4 = {
|
||||
"amazon_linux_2023_aarch64": {
|
||||
"platform_name": "amazon2023-arm64",
|
||||
"sha": "405b63f369fdcc9767314a9ae9d488a4f8ad1eaecd181f5f95fc090d6b218614",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_amazon2023_arm64_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"amazon_linux_2023_x86_64": {
|
||||
"platform_name": "amazon2023",
|
||||
"sha": "48f35037f7e9f49c3c9885ea57d9cc59f27550a6e0dfb226e8f2396373b1657b",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_amazon2023_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"amazon_linux_2_aarch64": {
|
||||
"platform_name": "amazon2-arm64",
|
||||
"sha": "1db4c8ef6b30b3a72f2c929247dcffed3a99356099b84c16b8b20efdf99e00d6",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_amazon2_arm64_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"amazon_linux_2_x86_64": {
|
||||
"platform_name": "amazon2",
|
||||
"sha": "e2bf59dacb789bd3ed708bafb7bf4e432f611f19d6b888340e3b73eee6949b31",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_amazon2_11bae3c145a48dd7be9ee8aa44e5591783f787aa_24_01_09_16_10_07.tar.gz",
|
||||
},
|
||||
"debian10_x86_64": {
|
||||
"platform_name": "debian10",
|
||||
"sha": "9fd2e74e160699de706aac08bd94aefa7539e835693773c56ff6019847df7cd7",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_debian10_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"debian12_x86_64": {
|
||||
"platform_name": "debian12",
|
||||
"sha": "d34bba732f9a4846d6eb27bb1c2f00586fb341a249a12fbb0216268b3b2e69ab",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_debian12_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"rhel8_aarch64": {
|
||||
"platform_name": "rhel82-arm64",
|
||||
"sha": "5b56277cc3a9820fe09774d6a2a6c861b306d7cd8a7bca55848193e249909033",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_rhel82_arm64_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"rhel8_ppc64le": {
|
||||
"platform_name": "rhel81-ppc64le",
|
||||
"sha": "b62574a447e0e5120475c7ef0ec0e821548a32a103999ed350b05adcc9073b55",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_rhel81_ppc64le_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"rhel9_ppc64le": {
|
||||
"platform_name": "rhel9-ppc64le",
|
||||
"sha": "d7dd11ebe71918399543860a268c951ea22818bfb4f2c9b8b3a5e6d039bc6b67",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_rhel90_ppc64le_53ac9105dff523c4dec626034a4702548aabfdc9_25_02_20_04_39_07.tar.gz",
|
||||
},
|
||||
"rhel8_s390x": {
|
||||
"platform_name": "rhel80-zseries",
|
||||
"sha": "5d4f93968672f324e532b62eb9345351b407a866650d824eee79d295d6613606",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_rhel80_zseries_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"rhel8_x86_64": {
|
||||
"platform_name": "rhel80",
|
||||
"sha": "4b3406838c9adbb47d308ba4028ca88948f9bab336eef591f7b8395781ab5cd5",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_rhel80_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"rhel9_aarch64": {
|
||||
"platform_name": "rhel90-arm64",
|
||||
"sha": "7c6ce149660197f4b63c50404e0c8604285299f6fcf67c1f9bae1de0bad606e1",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_rhel90_arm64_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"rhel9_x86_64": {
|
||||
"platform_name": "rhel90",
|
||||
"sha": "ba2cf2efd68805eec11580e0276f2f4bde6a94735b0375cae901bcb7099daebe",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_rhel90_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"rhel9_s390x": {
|
||||
"platform_name": "rhel9-s390x",
|
||||
"sha": "f5f49dac1a3b06ac6b642192be69f522baa9b52eb647ac9db0534cfe9e5c140d",
|
||||
"url": "https://mciuploads.s3.amazonaws.com/toolchain-builder/rhel90-zseries/a4fa792a94d75177fd3f00eb3ab7516e5de15485/bazel_v4_toolchain_builder_rhel90_zseries_patch_a4fa792a94d75177fd3f00eb3ab7516e5de15485_67a632fc8e45320007f86f84_25_02_07_16_21_19.tar.gz",
|
||||
},
|
||||
"suse15_x86_64": {
|
||||
"platform_name": "suse15",
|
||||
"sha": "f7ac487d2ace8d4b8793de712f9e7d7cf3bec35bd82da39b30f42db76f59b919",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_suse15_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"ubuntu18_x86_64": {
|
||||
"platform_name": "ubuntu1804",
|
||||
"sha": "526b64a04731275ae52b9d8b062efa20c3db183091cdbffd023d86e27c93b490",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_ubuntu1804_11bae3c145a48dd7be9ee8aa44e5591783f787aa_24_01_09_16_10_07.tar.gz",
|
||||
},
|
||||
"ubuntu20_aarch64": {
|
||||
"platform_name": "ubuntu2004-arm64",
|
||||
"sha": "1f0bee3bde3611d1f2a5f10ea521f333f508d0f3fbd3f4675c77bf0aed1037ec",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_ubuntu2004_arm64_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"ubuntu20_x86_64": {
|
||||
"platform_name": "ubuntu2004",
|
||||
"sha": "1dc69e016569ddefa925ee09961e0e466ed80985b767e0f634c0c80286573952",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_ubuntu2004_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"ubuntu22_aarch64": {
|
||||
"platform_name": "ubuntu2204-arm64",
|
||||
"sha": "536829b77db6b40fc4b29f848e0b31715e61fe7bfeca0a58575e52bdf4ec0b2b",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_ubuntu2204_arm64_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"ubuntu22_x86_64": {
|
||||
"platform_name": "ubuntu2204",
|
||||
"sha": "e7b305c973b69268983431e1b11ddf1f2fbf38715ede2c415b0cf9a4fcdc0615",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_ubuntu2204_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"ubuntu24_aarch64": {
|
||||
"platform_name": "ubuntu2404-arm64",
|
||||
"sha": "72e8188295d3296e0361534762e1f4226242b1c65001628cff1f9aac60d94a94",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_ubuntu2404_arm64_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
"ubuntu24_x86_64": {
|
||||
"platform_name": "ubuntu2404",
|
||||
"sha": "d08520df222f81253eb9b9802fd8c7acd02dd0d60f08776b45ea47401754f947",
|
||||
"url": "https://mdb-build-public.s3.us-east-1.amazonaws.com/toolchains/bazel_v4_toolchain_builder_ubuntu2404_acdc1709a01126c67dbd4f0f37491e171f64ec29_24_10_11_23_01_02.tar.gz",
|
||||
},
|
||||
}
|
||||
|
|
@ -13,7 +13,7 @@ if __name__ == "__main__" and __package__ is None:
|
|||
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(os.path.realpath(__file__)))))
|
||||
|
||||
|
||||
SUPPORTED_VERSIONS = "v5"
|
||||
SUPPORTED_VERSIONS = ("v4", "v5")
|
||||
|
||||
|
||||
class MongoToolchainError(RuntimeError):
|
||||
|
|
@ -141,7 +141,7 @@ def get_mongo_toolchain(
|
|||
|
||||
# If no version given, look in the environment or default to v4.
|
||||
if version is None:
|
||||
version = os.environ.get("MONGO_TOOLCHAIN_VERSION", "v5")
|
||||
version = os.environ.get("MONGO_TOOLCHAIN_VERSION", "v4")
|
||||
assert version is not None
|
||||
if version not in SUPPORTED_VERSIONS:
|
||||
raise MongoToolchainNotFoundError(f"Unknown toolchain version {version}")
|
||||
|
|
|
|||
Loading…
Reference in New Issue