# bazel-1.0.0.bazelrc # for now: filter out annoying TASTY warnings common --ui_event_filters=-INFO # Don't use toolchains_llvm for the swift app build common:mactools --ignore_dev_dependency common --enable_platform_specific_config common --strategy=Scalac=worker common --worker_sandboxing common --local_test_jobs=64 common --jobs=64 # Rebuild remote-only intermediate inputs if the remote cache loses them. common --rewind_lost_inputs # Keep these C++ standard flags in sync with tools/copts.bzl and scripts/shardok_cpp_config.sh. common --cxxopt="--std=c++23" common --cxxopt="-Wno-deprecated-non-prototype" common --per_file_copt=src/test/cpp/.*@-Wno-character-conversion common --per_file_copt=src/test/cpp/.*@-Wno-deprecated-enum-compare common --per_file_copt=src/test/cpp/.*@-Wno-sign-compare common --per_file_copt=src/test/cpp/.*@-Wno-unknown-warning-option common --host_cxxopt="--std=c++23" # C++ sanitizer configs for targeted Shardok safety checks. # Example: bazel test --config=asan //src/test/cpp/net/eagle0/shardok/library/... build:asan --compilation_mode=dbg build:asan --strip=never build:asan --copt=-fno-omit-frame-pointer build:asan --copt=-Wno-macro-redefined build:asan --copt=-fsanitize=address build:asan --linkopt=-fsanitize=address test:asan --test_env=ASAN_OPTIONS=detect_leaks=0:strict_init_order=1 build:ubsan --compilation_mode=dbg build:ubsan --strip=never build:ubsan --copt=-fno-omit-frame-pointer build:ubsan --copt=-Wno-macro-redefined build:ubsan --copt=-fsanitize=undefined # Protobuf's arena implementation trips UBSan alignment checks in external code on macOS. build:ubsan --copt=-fno-sanitize=alignment build:ubsan --linkopt=-fsanitize=undefined test:ubsan --test_env=UBSAN_OPTIONS=print_stacktrace=1:halt_on_error=1 build:tsan --compilation_mode=dbg build:tsan --strip=never build:tsan --copt=-fno-omit-frame-pointer build:tsan --copt=-Wno-macro-redefined build:tsan --copt=-fsanitize=thread build:tsan --linkopt=-fsanitize=thread test:tsan --test_env=TSAN_OPTIONS=halt_on_error=1 common --javacopt="-Xlint:-options" # Prefer protobuf's prebuilt protoc toolchain instead of building protoc from # source when compatible binaries are available. common --@com_google_protobuf//bazel/toolchains:prefer_prebuilt_protoc # std::filesystem and other modern C++ deps require macOS 10.15+. common:macos --macos_minimum_os=10.15 common:macos --host_macos_minimum_os=10.15 # suppress warnings due to https://developer.apple.com/forums/thread/733317 # Use host_linkopt for macOS-specific flags to avoid passing them to Linux cross-compilation common:macos --host_linkopt=-Wl,-no_warn_duplicate_libraries # Pin default DEVELOPER_DIR so Apple repo rules use full Xcode instead of # Command Line Tools when they are needed. common:macos --repo_env=DEVELOPER_DIR=/Applications/Xcode.app/Contents/Developer # Local machine or CI overrides. This lets Bazel-only runners use Command Line # Tools without installing full Xcode. This must stay before .bazelrc.xcode so # generated Xcode settings win when both files exist. try-import %workspace%/.bazelrc.local # Xcode config for Apple tool builds. Generated by scripts/sync_bazel_xcode.sh. # Bakes the Xcode build version into mactools action cache keys without making # ordinary macOS Bazel builds depend on the installed Xcode build number. try-import %workspace%/.bazelrc.xcode common --java_language_version=25 common --java_runtime_version=remotejdk_25 common --tool_java_language_version=25 common --tool_java_runtime_version=remotejdk_25 # Workspace status for build stamping (git commit, timestamp) # Only targets with stamp=1 will use these values; we intentionally # do NOT set "common --stamp" so non-stamped targets can share the # remote cache across CI workflows. common --workspace_status_command=tools/workspace_status.sh