Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f0d7d8ff authored by Cole Faust's avatar Cole Faust
Browse files

Return product config variables from board_configuration

The board config can actually change a few product config
variables that are not made read-only.

Bug: 201700692
Test: ./build/bazel/ci/rbc_regression_test.sh -b aosp_cf_x86_64_phone
Change-Id: Ib2ac04ac2c5a56d32bca51fc8189e44e180075ee
parent 351cd2e4
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -207,13 +207,21 @@ def _product_configuration(top_pcm_name, top_pcm, version_info):
    return (globals, configs[top_pcm_name][1], globals_base)


def _dictionary_difference(a, b):
    result = {}
    for attr, val in a.items():
        if attr not in b or b[attr] != val:
            result[attr] = val
    return result

def _board_configuration(board_config_init, input_variables_init):
    globals = {}
    h = __h_new()
    input_variables_init(globals, h)
    cfg_base = dict(**h[0])
    globals_base = dict(**globals)
    board_config_init(globals, h)
    return (globals, h[1], globals_base)
    return (globals, _dictionary_difference(h[0], cfg_base), globals_base)


def _substitute_inherited(configs, pcm_name, cfg):