DescriptionRefactor build target for sync
Refactors the sync build target definition to fit the more common
pattern. The old target was defined differently in component and
non-component mode. This is brittle compared to the more standard
pattern of setting the target type to '<(component)'.
Introduces a shim target with type 'none'. Any target that depends on
this shim will link inherit its dependency on the two sync libraries.
A note on the history of this, for those who are interested:
This pattern was recommended during the original componentization of
sync almost two years ago. The pattern was, and still is, used by
content.gyp to ensure that dependency restrictions are being respected.
The difference with sync is that it doesn't actually make use of
fine-grained dependencies. It's not unusual to see a target depend on
conent_renderer, content_browser, or some other static library
sub-component of content. With sync, on the other hand, we have the
rule that other targets may depend only on the top level sync target.
Since no one aside from sync depends on sync_internal_api, sync_core, or
sync_api static library targets, and we have no intention of exposing
these sub-components outside of sync, there's no point in maintaining
them as separate targets.
BUG=397574
Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=287119
Patch Set 1 #Patch Set 2 : Add libprotobuf dependency #Patch Set 3 : Update export macros for sync_proto component #Patch Set 4 : Some fixes #
Messages
Total messages: 8 (0 generated)
|