platform_build_soong/sdk
Paul Duffin 44885e29d6 Simplify visibility rules that include //visibility:public
While it is invalid to mix //visibility:public with other rules in the
visibility property in a .bp file tt was possible, by overriding
defaults, to have //visibility:public mixed in with other rules in the
effective visibility rules. That caused problems when those effective
rules were used in an sdk snapshot.

This change replaces any set of rules that include //visibility:public
with just the //visibility:public rule. That simplifies those rules,
making them cheaper to process and ensures that the effective rules are
valid in the visibility property.

Adding test support required some refactoring of the
effectiveVisibilityRules(BaseModuleContext, ...) and underlying methods
to take a Config instead of BaseModuleContext as the tests do not have
access to BaseModuleContext.

Bug: 142935992
Test: m nothing - new tests failed without change, work with it
      Add dex2oat to art-module-host-exports, build it and check the
      generated Android.bp file in the snapshot to ensure the
	  visibility property for the dex2oat prebuilt does not mix
	  //visibility:public with other rules.
Change-Id: I08e7f0dcb40838d426fe88fedf69eae27b77473c
2020-02-20 11:41:17 +00:00
..
bp.go Allow an arbitrary tag to be associated with a bp property 2020-01-30 11:45:47 +00:00
cc_sdk_test.go Add support for cc_binary in module_exports 2020-02-18 16:17:35 +00:00
exports.go Restrict SdkMemberTypes that can be used with sdk/sdk_snapshot 2019-12-31 15:08:59 +00:00
exports_test.go Added module_exports/_snapshot as alias for sdk/_snapshot 2019-12-30 18:03:30 +00:00
java_sdk_test.go Differentiate between exported and internal sdk members 2020-02-07 14:03:03 +00:00
sdk.go Differentiate between exported and internal sdk members 2020-02-07 14:03:03 +00:00
sdk_test.go Simplify visibility rules that include //visibility:public 2020-02-20 11:41:17 +00:00
testing.go Add java_system_modules to sdk/module_exports 2020-02-07 14:03:03 +00:00
update.go Differentiate between exported and internal sdk members 2020-02-07 14:03:03 +00:00