summaryrefslogtreecommitdiff
path: root/CC/foreign/cmake
diff options
context:
space:
mode:
authorKlaus Aehlig <klaus.aehlig@huawei.com>2025-02-13 10:53:51 +0100
committerKlaus Aehlig <klaus.aehlig@huawei.com>2025-02-13 11:09:04 +0100
commitdd143d2ccf1d60ab4b2c077827db800269049393 (patch)
treedde8eca28a5ba93371485f3b4d253a1e85363c6c /CC/foreign/cmake
parentad329060e2ed31391284b303e4f25eb1e3679126 (diff)
downloadrules-cc-dd143d2ccf1d60ab4b2c077827db800269049393.tar.gz
foreign rules: support extra remote-execution properties
Those rules call a foreign build system in a single action. Obviously, those actions are quite different compared to normal build actions; at the very least, they require more time and resources and generally also spawn more than a single process. We already support scaling up the action time out. Now support also adding additional execution properties, so that they can be schedulded to dedicated workers or endpoints.
Diffstat (limited to 'CC/foreign/cmake')
-rw-r--r--CC/foreign/cmake/EXPRESSIONS3
-rw-r--r--CC/foreign/cmake/RULES8
2 files changed, 11 insertions, 0 deletions
diff --git a/CC/foreign/cmake/EXPRESSIONS b/CC/foreign/cmake/EXPRESSIONS
index 807c88b..e0ceab2 100644
--- a/CC/foreign/cmake/EXPRESSIONS
+++ b/CC/foreign/cmake/EXPRESSIONS
@@ -25,6 +25,7 @@
, "defaults-transition"
, "expand_exec"
, "TIMEOUT_SCALE"
+ , "FOREIGN_EXECUTION_PROPERTIES"
, "resolve_symlinks"
]
, "imports":
@@ -475,6 +476,8 @@
, "env": {"type": "var", "name": "ENV"}
, "timeout scaling":
{"type": "var", "name": "TIMEOUT_SCALE", "default": 10.0}
+ , "execution properties":
+ {"type": "var", "name": "FOREIGN_EXECUTION_PROPERTIES"}
}
}
}
diff --git a/CC/foreign/cmake/RULES b/CC/foreign/cmake/RULES
index b7fd406..917b4af 100644
--- a/CC/foreign/cmake/RULES
+++ b/CC/foreign/cmake/RULES
@@ -35,6 +35,7 @@
, "AR"
, "BUILD_POSITION_INDEPENDENT"
, "TIMEOUT_SCALE"
+ , "FOREIGN_EXECUTION_PROPERTIES"
]
, "implicit":
{ "defaults": [["CC", "defaults"]]
@@ -153,6 +154,9 @@
[ "The scaling of the timeout for the invocation of the foreign build."
, "Defaults to 10."
]
+ , "FOREIGN_EXECUTION_PROPERTIES":
+ [ "A map with extra remote-execution properties to be added to the foreign build action."
+ ]
}
, "imports":
{ "stage_field": ["", "stage_singleton_field"]
@@ -340,6 +344,7 @@
, "AR"
, "BUILD_POSITION_INDEPENDENT"
, "TIMEOUT_SCALE"
+ , "FOREIGN_EXECUTION_PROPERTIES"
]
, "implicit":
{ "defaults": [["CC", "defaults"]]
@@ -498,6 +503,9 @@
[ "The scaling of the timeout for the invocation of the foreign build."
, "Defaults to 10."
]
+ , "FOREIGN_EXECUTION_PROPERTIES":
+ [ "A map with extra remote-execution properties to be added to the foreign build action."
+ ]
}
, "imports":
{ "stage_field": ["", "stage_singleton_field"]