Do not install required modules from order-only deps
When a vintf_fragments or init_rc file is shared by two modules, unintended modules are installed due to the shared file. This was caused by add-all-target-to-target-required-modules-deps. With the following definitions: cc_binary { name: "foo", vintf_fragments: ["shared.xml"], required: ["foo-req"], } cc_binary { name: "bar", vintf_fragments: ["shared.xml"], } When installing "bar", surprisingly, "foo-req" is installed due to the link between "shared.xml" and "foo-req" added by add-all-target-to-target-required-modules-deps. To fix that, in this change, vintf_fragments and init_rc files are marked as "order-only" deps. In add-all-target-to-target-required-modules-deps, order-only deps are not used to add links to "required" modules. Now, with the same definitions, installing "bar" won't installs "foo-req". Bug: 198818343 Test: (see above) Change-Id: I16be0dcb84564c559cb2f4223e2812321ee14729
Loading
Please register or sign in to comment