Revert "SERVER-103205: Remove Linux v4 cc mongo toolchain files. (#34454)" (#34580)

Co-authored-by: auto-revert-processor <devprod-si-team@mongodb.com>
GitOrigin-RevId: e61dab88af82497fdc63a143fe683331e4917ea1
This commit is contained in:
auto-revert-app[bot] 2025-04-04 05:17:06 +00:00 committed by MongoDB Bot
parent 5a0e3c73c2
commit 7fb9f45346
7 changed files with 166 additions and 8 deletions

2
MODULE.bazel.lock generated
View File

@ -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": {},

View File

@ -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(

View File

@ -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",
)

View File

@ -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",
]

View File

@ -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,
}

View File

@ -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",
},
}

View File

@ -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}")