Repository navigation
Expand file tree
/
Copy path.bazelrc
More file actions
122 lines (102 loc) · 6.77 KB
/
Copy path.bazelrc
File metadata and controls
122 lines (102 loc) · 6.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
common --registry=https://raw.githubusercontent.com/eclipse-score/bazel_registry/main/
common --registry=https://bcr.bazel.build
common --credential_helper=*.qnx.com=%workspace%/.github/tools/qnx_credential_helper.py
common --credential_helper_timeout="60s"
# Overcome stability issues when downloading external dependencies on GH Runners
common --experimental_repository_downloader_retries=10
common --experimental_scale_timeouts=2.0
common --http_connector_attempts=10
common --http_connector_retry_max_timeout=30s
common --http_timeout_scaling=4.0
# Clear ANDROID_HOME for repository rules. rules_android (pulled transitively via
# grpc-java -> rules_jvm_external) evaluates android_sdk_repository, which fails
# when ANDROID_HOME points at an incomplete SDK (as on CI runners). None of our
# code uses Android, so forcing it empty makes the rule emit an empty stub repo.
common --repo_env=ANDROID_HOME=
common --extra_toolchains=@score_toolchains_rust//toolchains/ferrocene:ferrocene_x86_64_unknown_linux_gnu
# Java
build --java_language_version=17
build --tool_java_language_version=17
build --java_runtime_version=remotejdk_17
build --tool_java_runtime_version=remotejdk_17
build:_common --@score_baselibs//score/json:base_library=nlohmann
build:_common --@score_communication//score/memory/shared/flags:use_typedshmd=False
build:_common --@score_baselibs//score/log_rust:safety_level=qm
build:_common --@score_config_management//score/config_management/config_daemon/code:score_variant=true
build:_common --@score_baselibs//score/analysis/tracing/generic_trace_library:implementation=@score_baselibs//score/analysis/tracing/generic_trace_library/stub_implementation
build:_common --cxxopt=-Wno-error=mismatched-new-delete
build:_common --host_platform=@score_bazel_platforms//:x86_64-linux-gcc_12.2.0-posix
build:_common --extra_toolchains=@score_gcc_x86_64_toolchain//:x86_64-linux-gcc_12.2.0
build:_common --extra_toolchains=//bazel/toolchains:score_ref_int_libclang_toolchain
# Flags needed by datarouter
build:_common --@score_logging//score/datarouter/build_configuration_flags:enable_nonverbose_dlt=False
build:_common --@score_logging//score/datarouter/build_configuration_flags:enable_dynamic_configuration=False
build:_common --@score_logging//score/datarouter/build_configuration_flags:file_transfer=False
build:_common --@score_logging//score/datarouter/build_configuration_flags:use_local_vlan=True
build:_common --@score_logging//score/datarouter/build_configuration_flags:dlt_output_enable=True
# ─── QNX common flags (shared by all QNX configs) ────────────────────────────
build:_qnx_common --host_platform=@score_bazel_platforms//:x86_64-linux-gcc_12.2.0-posix
build:_qnx_common --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
build:_qnx_common --incompatible_enable_cc_toolchain_resolution
build:qnx-x86_64 --config=_common
build:qnx-x86_64 --noexperimental_merged_skyframe_analysis_execution
build:qnx-x86_64 --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1
build:qnx-x86_64 --incompatible_enable_cc_toolchain_resolution
build:qnx-x86_64 --incompatible_strict_action_env
build:qnx-x86_64 --sandbox_writable_path=/var/tmp
build:qnx-x86_64 --platforms=@score_bazel_platforms//:x86_64-qnx-sdp_8.0.0-posix
build:qnx-x86_64 --extra_toolchains=@score_qcc_x86_64_toolchain//:x86_64-qnx-sdp_8.0.0
build:qnx-x86_64 --extra_toolchains=@score_qnx_x86_64_ifs_toolchain//:ifs-x86_64-qnx-sdp_8.0.0
build:qnx-x86_64 --extra_toolchains=@score_toolchains_rust//toolchains/ferrocene:ferrocene_x86_64_pc_nto_qnx800
# ─── QNX aarch64 cross-compilation config ────────────────────────────────────
# Usage: bazel build --config=qnx-aarch64 //target
build:qnx-aarch64 --config=_common
build:qnx-aarch64 --config=_qnx_common
build:qnx-aarch64 --platforms=@score_bazel_platforms//:aarch64-qnx-sdp_8.0.0-posix
build:qnx-aarch64 --extra_toolchains=@score_qcc_aarch64_toolchain//:aarch64-qnx-sdp_8.0.0
build:qnx-aarch64 --extra_toolchains=@score_toolchains_rust//toolchains/ferrocene:ferrocene_aarch64_unknown_nto_qnx800
build:qnx-aarch64 --extra_toolchains=@score_qnx_aarch64_ifs_toolchain//:ifs-aarch64-qnx-sdp_8.0.0
build:linux-x86_64 --config=_common
build:linux-x86_64 --extra_toolchains=@score_gcc_x86_64_toolchain//:x86_64-linux-gcc_12.2.0
build:linux-x86_64 --platforms=@score_bazel_platforms//:x86_64-linux-gcc_12.2.0-posix
build:eb-aarch64 --config=_common
build:eb-aarch64 --extra_toolchains=@score_ebclfsa_toolchain//:aarch64-linux-sdk_2.0.0-beta2-ebclfsa
build:eb-aarch64 --extra_toolchains=@ferrocene_aarch64_ebclfsa//:rust_ferrocene_toolchain
build:eb-aarch64 --platforms=@score_bazel_platforms//:aarch64-linux-sdk_2.0.0-beta2-ebclfsa
build:autosd-x86_64 --config=_common
build:autosd-x86_64 --force_pic
build:autosd-x86_64 --platforms=@score_bazel_platforms//:x86_64-linux-autosd10
build:autosd-x86_64 --extra_toolchains=@score_autosd10_x86_64_toolchain//:x86_64-linux-autosd10
# Ferrocene Rust coverage config
build:ferrocene-coverage --@rules_rust//rust/settings:extra_rustc_flag=-Cinstrument-coverage
build:ferrocene-coverage --@rules_rust//rust/settings:extra_rustc_flag=-Clink-dead-code
build:ferrocene-coverage --@rules_rust//rust/settings:extra_rustc_flag=-Ccodegen-units=1
build:ferrocene-coverage --@rules_rust//rust/settings:extra_rustc_flag=-Cdebuginfo=2
build:ferrocene-coverage --@rules_rust//rust/settings:extra_exec_rustc_flag=-Cinstrument-coverage
build:ferrocene-coverage --@rules_rust//rust/settings:extra_exec_rustc_flag=-Clink-dead-code
build:ferrocene-coverage --@rules_rust//rust/settings:extra_exec_rustc_flag=-Ccodegen-units=1
build:ferrocene-coverage --@rules_rust//rust/settings:extra_exec_rustc_flag=-Cdebuginfo=2
test:ferrocene-coverage --run_under=@score_tooling//coverage:llvm_profile_wrapper
# Coverage needs to have all intermediate .rlibs to be able to proceed
build:ferrocene-coverage --remote_download_all
# Persistency specific flags
build:ferrocene-coverage-per --config=ferrocene-coverage
build:ferrocene-coverage-per --@score_baselibs//score/log_rust:safety_level=qm
build:ferrocene-coverage-per --@score_baselibs//score/json:base_library=nlohmann
build:ferrocene-coverage-per --@score_logging//score/mw/log/flags:KRemote_Logging=False
# Output only failed test logs
test --test_output=errors
test:itf-qnx-x86_64 --config=qnx-x86_64
test:itf-qnx-x86_64 --run_under=@score_itf//scripts:run_under_qemu
test:unit-tests --config=linux-x86_64
test:unit-tests --build_tests_only
test:unit-tests --test_tag_filters=-manual,-miri
# Coverage configuration for C++
coverage --features=coverage
coverage --combined_report=lcov
# user specific overrides (like proxy settings)
try-import %workspace%/user.bazelrc