Loading bp2build/cc_binary_conversion_test.go +74 −0 Original line number Diff line number Diff line Loading @@ -676,3 +676,77 @@ func TestCcArchVariantBinarySuffix(t *testing.T) { }, }) } func TestCcBinaryWithSyspropSrcs(t *testing.T) { runCcBinaryTestCase(t, ccBinaryBp2buildTestCase{ description: "cc_binary with sysprop sources", blueprint: ` {rule_name} { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, targets: []testBazelTarget{ {"sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }}, {"cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }}, {"cc_binary", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }}, }, }) } func TestCcBinaryWithSyspropSrcsSomeConfigs(t *testing.T) { runCcBinaryTestCase(t, ccBinaryBp2buildTestCase{ description: "cc_binary with sysprop sources in some configs but not others", blueprint: ` {rule_name} { name: "foo", srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, targets: []testBazelTarget{ {"sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }}, {"cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }}, {"cc_binary", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }}, }, }) } bp2build/cc_library_conversion_test.go +94 −0 Original line number Diff line number Diff line Loading @@ -3132,3 +3132,97 @@ cc_library_static { }, }) } func TestCcLibraryWithSyspropSrcs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library with sysprop sources", ModuleTypeUnderTest: "cc_library", ModuleTypeUnderTestFactory: cc.LibraryFactory, Blueprint: ` cc_library { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_static", "foo_bp2build_cc_library_static", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), }, }) } func TestCcLibraryWithSyspropSrcsSomeConfigs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library with sysprop sources in some configs but not others", ModuleTypeUnderTest: "cc_library", ModuleTypeUnderTestFactory: cc.LibraryFactory, Blueprint: ` cc_library { name: "foo", host_supported: true, srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTargetNoRestrictions("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }), MakeBazelTargetNoRestrictions("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTargetNoRestrictions("cc_library_static", "foo_bp2build_cc_library_static", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), MakeBazelTargetNoRestrictions("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), }, }) } bp2build/cc_library_shared_conversion_test.go +74 −0 Original line number Diff line number Diff line Loading @@ -718,3 +718,77 @@ cc_library_shared { }, }) } func TestCcLibrarySharedWithSyspropSrcs(t *testing.T) { runCcLibrarySharedTestCase(t, Bp2buildTestCase{ Description: "cc_library_shared with sysprop sources", Blueprint: ` cc_library_shared { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), }, }) } func TestCcLibrarySharedWithSyspropSrcsSomeConfigs(t *testing.T) { runCcLibrarySharedTestCase(t, Bp2buildTestCase{ Description: "cc_library_shared with sysprop sources in some configs but not others", Blueprint: ` cc_library_shared { name: "foo", srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), }, }) } bp2build/cc_library_static_conversion_test.go +74 −0 Original line number Diff line number Diff line Loading @@ -1629,3 +1629,77 @@ cc_library_static { }, }) } func TestCcLibraryStaticWithSyspropSrcs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library_static with sysprop sources", Blueprint: ` cc_library_static { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_static", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), }, }) } func TestCcLibraryStaticWithSyspropSrcsSomeConfigs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library_static with sysprop sources in some configs but not others", Blueprint: ` cc_library_static { name: "foo", srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_static", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), }, }) } cc/Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ bootstrap_go_package { "snapshot_utils.go", "stl.go", "strip.go", "sysprop.go", "tidy.go", "util.go", "vendor_snapshot.go", Loading Loading
bp2build/cc_binary_conversion_test.go +74 −0 Original line number Diff line number Diff line Loading @@ -676,3 +676,77 @@ func TestCcArchVariantBinarySuffix(t *testing.T) { }, }) } func TestCcBinaryWithSyspropSrcs(t *testing.T) { runCcBinaryTestCase(t, ccBinaryBp2buildTestCase{ description: "cc_binary with sysprop sources", blueprint: ` {rule_name} { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, targets: []testBazelTarget{ {"sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }}, {"cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }}, {"cc_binary", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }}, }, }) } func TestCcBinaryWithSyspropSrcsSomeConfigs(t *testing.T) { runCcBinaryTestCase(t, ccBinaryBp2buildTestCase{ description: "cc_binary with sysprop sources in some configs but not others", blueprint: ` {rule_name} { name: "foo", srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, targets: []testBazelTarget{ {"sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }}, {"cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }}, {"cc_binary", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }}, }, }) }
bp2build/cc_library_conversion_test.go +94 −0 Original line number Diff line number Diff line Loading @@ -3132,3 +3132,97 @@ cc_library_static { }, }) } func TestCcLibraryWithSyspropSrcs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library with sysprop sources", ModuleTypeUnderTest: "cc_library", ModuleTypeUnderTestFactory: cc.LibraryFactory, Blueprint: ` cc_library { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_static", "foo_bp2build_cc_library_static", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), }, }) } func TestCcLibraryWithSyspropSrcsSomeConfigs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library with sysprop sources in some configs but not others", ModuleTypeUnderTest: "cc_library", ModuleTypeUnderTestFactory: cc.LibraryFactory, Blueprint: ` cc_library { name: "foo", host_supported: true, srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTargetNoRestrictions("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }), MakeBazelTargetNoRestrictions("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTargetNoRestrictions("cc_library_static", "foo_bp2build_cc_library_static", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), MakeBazelTargetNoRestrictions("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), }, }) }
bp2build/cc_library_shared_conversion_test.go +74 −0 Original line number Diff line number Diff line Loading @@ -718,3 +718,77 @@ cc_library_shared { }, }) } func TestCcLibrarySharedWithSyspropSrcs(t *testing.T) { runCcLibrarySharedTestCase(t, Bp2buildTestCase{ Description: "cc_library_shared with sysprop sources", Blueprint: ` cc_library_shared { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), }, }) } func TestCcLibrarySharedWithSyspropSrcsSomeConfigs(t *testing.T) { runCcLibrarySharedTestCase(t, Bp2buildTestCase{ Description: "cc_library_shared with sysprop sources in some configs but not others", Blueprint: ` cc_library_shared { name: "foo", srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_shared", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), }, }) }
bp2build/cc_library_static_conversion_test.go +74 −0 Original line number Diff line number Diff line Loading @@ -1629,3 +1629,77 @@ cc_library_static { }, }) } func TestCcLibraryStaticWithSyspropSrcs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library_static with sysprop sources", Blueprint: ` cc_library_static { name: "foo", srcs: [ "bar.sysprop", "baz.sysprop", "blah.cpp", ], min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `[ "bar.sysprop", "baz.sysprop", ]`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_static", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `[":foo_cc_sysprop_library_static"]`, }), }, }) } func TestCcLibraryStaticWithSyspropSrcsSomeConfigs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_library_static with sysprop sources in some configs but not others", Blueprint: ` cc_library_static { name: "foo", srcs: [ "blah.cpp", ], target: { android: { srcs: ["bar.sysprop"], }, }, min_sdk_version: "5", }`, ExpectedBazelTargets: []string{ MakeBazelTarget("sysprop_library", "foo_sysprop_library", AttrNameToString{ "srcs": `select({ "//build/bazel/platforms/os:android": ["bar.sysprop"], "//conditions:default": [], })`, }), MakeBazelTarget("cc_sysprop_library_static", "foo_cc_sysprop_library_static", AttrNameToString{ "dep": `":foo_sysprop_library"`, "min_sdk_version": `"5"`, }), MakeBazelTarget("cc_library_static", "foo", AttrNameToString{ "srcs": `["blah.cpp"]`, "local_includes": `["."]`, "min_sdk_version": `"5"`, "whole_archive_deps": `select({ "//build/bazel/platforms/os:android": [":foo_cc_sysprop_library_static"], "//conditions:default": [], })`, }), }, }) }
cc/Android.bp +1 −0 Original line number Diff line number Diff line Loading @@ -45,6 +45,7 @@ bootstrap_go_package { "snapshot_utils.go", "stl.go", "strip.go", "sysprop.go", "tidy.go", "util.go", "vendor_snapshot.go", Loading