diff options
| author | Ulf Magnusson <ulfalizer@gmail.com> | 2018-05-14 18:00:40 +0200 |
|---|---|---|
| committer | Ulf Magnusson <ulfalizer@gmail.com> | 2018-05-16 19:42:56 +0200 |
| commit | cbf32e29a130d22bc734b7778e6304ac9df2a3e8 (patch) | |
| tree | 458699338def9b21680ac958889f51403652362c /tests/Kdefconfig_existent | |
| parent | 0bc5961d8e9f49629e33a7193dc921b064ba1587 (diff) | |
Expand environment variables in strings directly
Make "$FOO" directly reference the environment variable $FOO in e.g.
'source' statements, instead of the symbol FOO. Use os.path.expandvars()
to expand strings (which preserves "$FOO" as-is if no environment
variable FOO exists).
This gets rid of the 'option env' "bounce" symbols, which are mostly
just spam and are buggy in the C tools (dependencies aren't always
respected, due to parsing and evaluation getting mixed up). The same
change will probably appear soon in the C tools as well.
Keep accepting 'option env' to preserve some backwards compatibility,
but ignore it when expanding strings. For compatibility with the C
tools, bounce symbols will need to be named the same as the environment
variables they reference (which is the case for the Linux kernel).
This is a compatibility break, so the major version will be bumped to 6
at the next release.
The main motivation for adding this now is to allow recording properties
on each MenuNode in a clean way. 'option env' symbols interact badly
with delayed dependency propagation.
Side note: I have a feeling that recording environment variable values
might be redundant to trigger rebuilds if sync_deps() is run at each
compile. It should detect all changes to symbol values due to
environment variables changing value.
Diffstat (limited to 'tests/Kdefconfig_existent')
| -rw-r--r-- | tests/Kdefconfig_existent | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/tests/Kdefconfig_existent b/tests/Kdefconfig_existent index 8dde443..304cae6 100644 --- a/tests/Kdefconfig_existent +++ b/tests/Kdefconfig_existent @@ -1,9 +1,4 @@ # $FOO is "defconfig_2" -# Should produce "Kconfiglib/tests/defconfig_2" - -config FOO - string - option env="BAR" config A string |
