diff options
-rw-r--r-- | rules/CC/RULES | 21 | ||||
-rw-r--r-- | rules/CC/test/RULES | 13 | ||||
-rw-r--r-- | rules/data/RULES | 5 | ||||
-rw-r--r-- | rules/patch/RULES | 3 | ||||
-rw-r--r-- | rules/proto/RULES | 30 | ||||
-rw-r--r-- | rules/shell/test/RULES | 14 |
6 files changed, 85 insertions, 1 deletions
diff --git a/rules/CC/RULES b/rules/CC/RULES index 01aa6347..cfe1ae3e 100644 --- a/rules/CC/RULES +++ b/rules/CC/RULES @@ -115,6 +115,8 @@ , "Path segments are joined with \"/\"." ] } + , "artifacts_doc": ["The single tree artifact staged to the given location"] + , "runfiles_doc": ["Same as artifacts"] , "expression": { "type": "let*" , "bindings": @@ -227,6 +229,23 @@ , "choice" ] } + , "artifacts_doc": + ["The actual library (libname.a) staged in the specified directory"] + , "runfiles_doc": ["The public headers of this library"] + , "provides_doc": + { "compile-deps": + [ "Map of artifacts specifying any additional files that, besides the runfiles," + , "have to be present in compile actions of targets depending on this library" + ] + , "link-deps": + [ "Map of artifacts specifying any additional files that, besides the artifacts," + , "have to be present in a link actions of targets depending on this library" + ] + , "link-args": + [ "List of strings that have to be added to the command line for linking actions" + , "in targets depending on on this library" + ] + } , "anonymous": { "proto-deps": { "target": "proto" @@ -372,6 +391,8 @@ , "taken from the [\"CC\", \"defaults\"] target" ] } + , "artifacts_doc": ["The final binary, staged to the given directory"] + , "runfiles_doc": ["None"] , "anonymous": { "proto-deps": { "target": "proto" diff --git a/rules/CC/test/RULES b/rules/CC/test/RULES index fc3ab972..50d0dce1 100644 --- a/rules/CC/test/RULES +++ b/rules/CC/test/RULES @@ -43,6 +43,19 @@ , "command line for running the test binary." ] } + , "artifacts_doc": + [ "result: the result of this test (\"PASS\" or \"FAIL\"); useful for" + , " generating test reports." + , "stdout/stderr: Any output the invocation of the test binary produced on" + , " the respective file descriptor" + , "time-start/time-stop: The time (decimally coded) in seconds since the" + , " epoch when the test invocation started and ended." + ] + , "runfiles_doc": + [ "A tree consisting of the artifacts staged at the name of the test." + , "As the built-in \"install\" rule only takes the runfiles of its \"deps\"" + , "argument, this gives an easy way of defining test suites." + ] , "imports": { "artifacts": ["./", "../..", "field_artifacts"] , "compile-deps": ["./", "..", "compile-deps"] diff --git a/rules/data/RULES b/rules/data/RULES index 17ac2d92..172fc2fe 100644 --- a/rules/data/RULES +++ b/rules/data/RULES @@ -9,6 +9,11 @@ , "Individual directory components are joined with \"/\"." ] } + , "artifacts_doc": + [ "The runfiles of the \"srcs\" targets staged to the directory" + , "specified in \"stage\"." + ] + , "runfiles_doc": ["Same as artifacts"] , "expression": { "type": "let*" , "bindings": diff --git a/rules/patch/RULES b/rules/patch/RULES index 87bf5750..15bc818f 100644 --- a/rules/patch/RULES +++ b/rules/patch/RULES @@ -7,6 +7,9 @@ ["The single source file to patch, typically an explict file reference."] , "patch": ["The patch to apply."] } + , "artifacts_doc": + ["The patched file, staged to the position the of the original file"] + , "runfiles_doc": ["Same as artifacts"] , "imports": { "stage_field": ["./", "..", "stage_singleton_field"] , "stage_artifact": ["./", "..", "stage_artifact_to_singleton_field"] diff --git a/rules/proto/RULES b/rules/proto/RULES index b6ce000d..74182a9f 100644 --- a/rules/proto/RULES +++ b/rules/proto/RULES @@ -1,6 +1,34 @@ { "library": - { "target_fields": ["srcs", "deps"] + { "doc": + [ "A proto library as abtract data structure." + , "" + , "Such a libray does not produce any artifacts itself, but it can be" + , "used as a dependency for various language-specific rules." + ] + , "target_fields": ["srcs", "deps"] , "string_fields": ["stage", "name", "service"] + , "field_doc": + { "srcs": ["The proto files for this library"] + , "deps": ["Any other proto library this library depends on"] + , "stage": + [ "The directory to stage the source files to." + , "Directory components are joined by \"/\"." + ] + , "name": ["The name of the (abstract) library."] + , "service": + [ "If non empty, generate a service library (with acces sto \"rpc\"" + , "definitions) instead of a regular one." + ] + } + , "artifacts_doc": ["None"] + , "runfiles_doc": ["None"] + , "provides_doc": + { "proto": + [ "A list containing a single target-graph node with the defintion of" + , "this proto library. The node types generated are \"library\" and" + , "\"service library\"." + ] + } , "expression": { "type": "let*" , "bindings": diff --git a/rules/shell/test/RULES b/rules/shell/test/RULES index d61f21fc..74a0b781 100644 --- a/rules/shell/test/RULES +++ b/rules/shell/test/RULES @@ -26,6 +26,20 @@ ] } , "tainted": ["test"] + , "artifacts_doc": + [ "result: the result of this test (\"PASS\" or \"FAIL\"); useful for" + , " generating test reports." + , "stdout/stderr: Any output the invocation of the test binary produced on" + , " the respective file descriptor" + , "work: In this directory, all the files specified to \"keep\" are staged" + , "time-start/time-stop: The time (decimally coded) in seconds since the" + , " epoch when the test invocation started and ended." + ] + , "runfiles_doc": + [ "A tree consisting of the artifacts staged at the name of the test." + , "As the built-in \"install\" rule only takes the runfiles of its \"deps\"" + , "argument, this gives an easy way of defining test suites." + ] , "implicit": {"runner": ["test_runner.sh"], "summarizer": ["test_summary.py"]} , "imports": |