C++: Tests for cc_binary linking shared libraries This is guarded behind the --experimental_cc_shared_library flag PiperOrigin-RevId: 283982821 Change-Id: Ifec330c01d7b480b641f8432ce94175291e79238
diff --git a/examples/test_cc_shared_library/BUILD b/examples/test_cc_shared_library/BUILD index a1c4a5a..137a9ca 100644 --- a/examples/test_cc_shared_library/BUILD +++ b/examples/test_cc_shared_library/BUILD
@@ -1,9 +1,17 @@ -load("//cc:defs.bzl", "cc_library") +load("//cc:defs.bzl", "cc_binary", "cc_library") load("//examples:experimental_cc_shared_library.bzl", "cc_shared_library") +cc_binary( + name = "binary", + srcs = ["main.cc"], + dynamic_deps = ["foo_so"], + deps = ["foo"], +) + cc_shared_library( name = "foo_so", dynamic_deps = ["bar_so"], + preloaded_deps = ["preloaded_dep"], visibility_file = "foo.lds", exports = [ "foo", @@ -26,10 +34,18 @@ ) cc_library( + name = "preloaded_dep", + srcs = ["preloaded_dep.cc"], + hdrs = ["preloaded_dep.h"], +) + +cc_library( name = "foo", srcs = ["foo.cc"], + hdrs = ["foo.h"], linked_statically_by = ["//examples/test_cc_shared_library:foo_so"], deps = [ + "preloaded_dep", "bar", "baz", # Not exported. @@ -40,12 +56,14 @@ cc_library( name = "baz", srcs = ["baz.cc"], + hdrs = ["baz.h"], linked_statically_by = ["//examples/test_cc_shared_library:foo_so"], ) cc_library( name = "qux", srcs = ["qux.cc"], + hdrs = ["qux.h"], linked_statically_by = ["//examples/test_cc_shared_library:foo_so"], ) @@ -70,6 +88,7 @@ cc_library( name = "bar2", srcs = ["bar2.cc"], + hdrs = ["bar2.h"], linked_statically_by = [ "//examples/test_cc_shared_library:bar_so", "//examples/test_cc_shared_library:foo_so", @@ -79,6 +98,7 @@ cc_library( name = "bar3", srcs = ["bar3.cc"], + hdrs = ["bar3.h"], linked_statically_by = [ "//examples/test_cc_shared_library:bar_so", "//examples/test_cc_shared_library:foo_so", @@ -88,6 +108,7 @@ cc_library( name = "bar4", srcs = ["bar4.cc"], + hdrs = ["bar4.h"], linked_statically_by = [ "//examples/test_cc_shared_library:bar_so", "//examples/test_cc_shared_library:foo_so", @@ -99,6 +120,7 @@ srcs = ["cc_shared_library_integration_test.sh"], data = [ ":bar_so", + ":binary", ":foo_so", ], )