88c8efb18c
Bug: 269577299 Fixes: 283130542 Test: b test --config=android //build/bazel/rules/cc/... Change-Id: I2fc4094167c48b1f3b22bee6b7ada309278f7250 |
||
---|---|---|
.. | ||
Android.bp | ||
README.md | ||
starlark_import.go | ||
starlark_import_test.go | ||
unmarshal.go | ||
unmarshal_test.go |
starlark_import package
This allows soong to read constant information from starlark files. At package initialization
time, soong will read build/bazel/constants_exported_to_soong.bzl
, and then make the
variables from that file available via starlark_import.GetStarlarkValue()
. So to import
a new variable, it must be added to constants_exported_to_soong.bzl
and then it can
be accessed by name.
Only constant information can be read, since this is not a full bazel execution but a
standalone starlark interpreter. This means you can't use bazel contructs like rule
,
provider
, select
, glob
, etc.
All starlark files that were loaded must be added as ninja deps that cause soong to rerun.
The loaded files can be retrieved via starlark_import.GetNinjaDeps()
.