Files
build_soong/cc
Jiyong Park 6a43f04777 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
2017-10-13 14:36:12 +09:00
..
2017-09-21 12:37:19 -07:00
2017-05-09 13:44:49 -07:00
2017-06-30 21:08:36 +00:00
2017-09-18 23:33:25 -07:00
2017-09-01 14:21:44 +08:00
2017-08-31 13:48:52 -07:00
2017-08-31 13:48:52 -07:00
2017-06-30 21:08:36 +00:00
2017-08-31 13:48:52 -07:00
2016-08-01 14:36:22 -07:00
2017-05-10 11:04:16 -07:00
2016-07-29 15:17:58 -07:00
2017-06-30 21:08:36 +00:00