Handle cc_library shared/static only properties
Also handle whole_static_libs via a different attribute (whole_archive_deps), separating these dependencies from regular static deps. Test: Build //bionic/libdl with bazel in conjunction with bzl changes Change-Id: I45019b6127a0d2731592ec35537ca15e77001cc2
This commit is contained in:
@@ -189,8 +189,6 @@ cc_library_static {
|
||||
":header_lib_2",
|
||||
":static_lib_1",
|
||||
":static_lib_2",
|
||||
":whole_static_lib_1",
|
||||
":whole_static_lib_2",
|
||||
],
|
||||
includes = [
|
||||
"export_include_dir_1",
|
||||
@@ -201,6 +199,10 @@ cc_library_static {
|
||||
"foo_static1.cc",
|
||||
"foo_static2.cc",
|
||||
],
|
||||
whole_archive_deps = [
|
||||
":whole_static_lib_1",
|
||||
":whole_static_lib_2",
|
||||
],
|
||||
)`, `cc_library_static(
|
||||
name = "static_lib_1",
|
||||
copts = ["-I."],
|
||||
@@ -423,13 +425,14 @@ cc_library_static {
|
||||
name = "foo_static",
|
||||
copts = ["-I."],
|
||||
deps = select({
|
||||
"//build/bazel/platforms/arch:arm64": [
|
||||
":static_dep",
|
||||
":static_dep2",
|
||||
],
|
||||
"//build/bazel/platforms/arch:arm64": [":static_dep"],
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
linkstatic = True,
|
||||
whole_archive_deps = select({
|
||||
"//build/bazel/platforms/arch:arm64": [":static_dep2"],
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
)`, `cc_library_static(
|
||||
name = "static_dep",
|
||||
copts = ["-I."],
|
||||
@@ -458,13 +461,14 @@ cc_library_static {
|
||||
name = "foo_static",
|
||||
copts = ["-I."],
|
||||
deps = select({
|
||||
"//build/bazel/platforms/os:android": [
|
||||
":static_dep",
|
||||
":static_dep2",
|
||||
],
|
||||
"//build/bazel/platforms/os:android": [":static_dep"],
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
linkstatic = True,
|
||||
whole_archive_deps = select({
|
||||
"//build/bazel/platforms/os:android": [":static_dep2"],
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
)`, `cc_library_static(
|
||||
name = "static_dep",
|
||||
copts = ["-I."],
|
||||
@@ -497,10 +501,7 @@ cc_library_static {
|
||||
expectedBazelTargets: []string{`cc_library_static(
|
||||
name = "foo_static",
|
||||
copts = ["-I."],
|
||||
deps = [
|
||||
":static_dep",
|
||||
":static_dep2",
|
||||
] + select({
|
||||
deps = [":static_dep"] + select({
|
||||
"//build/bazel/platforms/arch:arm64": [":static_dep4"],
|
||||
"//conditions:default": [],
|
||||
}) + select({
|
||||
@@ -508,6 +509,7 @@ cc_library_static {
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
linkstatic = True,
|
||||
whole_archive_deps = [":static_dep2"],
|
||||
)`, `cc_library_static(
|
||||
name = "static_dep",
|
||||
copts = ["-I."],
|
||||
@@ -732,8 +734,7 @@ cc_library_static {
|
||||
cc_library_static { name: "static_dep" }
|
||||
cc_library_static {
|
||||
name: "foo_static",
|
||||
static_libs: ["static_dep"],
|
||||
whole_static_libs: ["static_dep"],
|
||||
static_libs: ["static_dep", "static_dep"],
|
||||
}`,
|
||||
expectedBazelTargets: []string{`cc_library_static(
|
||||
name = "foo_static",
|
||||
|
Reference in New Issue
Block a user