summaryrefslogtreecommitdiff
path: root/java/java.go
diff options
context:
space:
mode:
author Jiyong Park <jiyong@google.com> 2017-10-12 23:05:00 +0900
committer Jiyong Park <jiyong@google.com> 2017-10-13 14:36:12 +0900
commit6a43f047772ab30e89eb7cb5346a08db889a2e7b (patch)
tree1907830ef7c5b3a45c78ae39047564b49ba93395 /java/java.go
parent432a2d4033cd3e78dc4f1b63295e281bbb4f89b4 (diff)
Squash vendor sources before linkageMutator runs
linkageMutator removes srcs property of the shared variant of a lib in order to reuse *.o files compiled for the static variant also to the shared variant. However, this causes problem when vendor-specific srcs are specified in target: {vendor: {srcs: ["..."]}}. For example, let's assume cc_library { name: "libfoo", srcs: ["foo.c"], target: { vendor: { srcs: ["bar.c"], }, }, } Then, static_vendor: inputs = foo.o, bar.o shared_vendor: inputs = foo.o (from static_vendor), bar.o (from static_vendor), bar.o So, bar.o is included twice and this causes multiple symbol definition error. In order to handle the problem, vendor mutator is applied before the linkage mutator and the vendor-specific srcs are squashed in the vendor mutator. Bug: 67731122 Test: build Test: cc_test.go Change-Id: I2a5390295dddfc41260e9b6f02746908cdf47228
Diffstat (limited to 'java/java.go')
0 files changed, 0 insertions, 0 deletions