Add random_seed feature args and feature
Copybara Import from https://github.com/bazelbuild/rules_cc/pull/340
BEGIN_PUBLIC
Add random_seed feature args and feature (#340)
Closes #340
END_PUBLIC
COPYBARA_INTEGRATE_REVIEW=https://github.com/bazelbuild/rules_cc/pull/340 from keith:ks/add-random_seed-feature-args-and-feature 3374cb498e983ae36ce64b50dc43acf986814bc0
PiperOrigin-RevId: 726098531
Change-Id: I5851bd89b7ce8df1d3a21f64f0e6960320145b02
diff --git a/cc/toolchains/args/BUILD b/cc/toolchains/args/BUILD
index 0884ba8..e51d12f 100644
--- a/cc/toolchains/args/BUILD
+++ b/cc/toolchains/args/BUILD
@@ -21,6 +21,7 @@
"//cc/toolchains/args/libraries_to_link:feature",
"//cc/toolchains/args/linker_param_file:feature",
"//cc/toolchains/args/preprocessor_defines:feature",
+ "//cc/toolchains/args/random_seed:feature",
"//cc/toolchains/args/runtime_library_search_directories:feature",
"//cc/toolchains/args/shared_flag:feature",
"//cc/toolchains/args/strip_debug_symbols:feature",
diff --git a/cc/toolchains/args/random_seed/BUILD b/cc/toolchains/args/random_seed/BUILD
new file mode 100644
index 0000000..97f56a3
--- /dev/null
+++ b/cc/toolchains/args/random_seed/BUILD
@@ -0,0 +1,18 @@
+load("//cc/toolchains:args.bzl", "cc_args")
+load("//cc/toolchains:feature.bzl", "cc_feature")
+
+package(default_visibility = ["//visibility:public"])
+
+cc_feature(
+ name = "feature",
+ args = [":random_seed"],
+ overrides = "//cc/toolchains/features/legacy:random_seed",
+)
+
+cc_args(
+ name = "random_seed",
+ actions = ["//cc/toolchains/actions:compile_actions"],
+ args = ["-frandom-seed={output_file}"],
+ format = {"output_file": "//cc/toolchains/variables:output_file"},
+ requires_not_none = "//cc/toolchains/variables:output_file",
+)
diff --git a/cc/toolchains/features/legacy/BUILD b/cc/toolchains/features/legacy/BUILD
index af68df4..7ad511f 100644
--- a/cc/toolchains/features/legacy/BUILD
+++ b/cc/toolchains/features/legacy/BUILD
@@ -236,6 +236,12 @@
overridable = True,
)
+cc_external_feature(
+ name = "random_seed",
+ feature_name = "random_seed",
+ overridable = True,
+)
+
cc_feature_set(
name = "all_legacy_builtin_features",
all_of = [
@@ -263,6 +269,7 @@
":libraries_to_link",
":force_pic_flags",
":user_link_flags",
+ ":random_seed",
":legacy_link_flags",
":static_libgcc",
":fission_support",