Loading android/allowlists/allowlists.go +1 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,7 @@ var ( "development/apps/DevelopmentSettings": Bp2BuildDefaultTrue, "development/apps/Fallback": Bp2BuildDefaultTrue, "development/apps/WidgetPreview": Bp2BuildDefaultTrue, "development/python-packages/adb": Bp2BuildDefaultTrueRecursively, "development/samples/BasicGLSurfaceView": Bp2BuildDefaultTrue, "development/samples/BluetoothChat": Bp2BuildDefaultTrue, "development/samples/BrokenKeyDerivation": Bp2BuildDefaultTrue, Loading bazel/configurability.go +12 −12 Original line number Diff line number Diff line Loading @@ -31,11 +31,11 @@ const ( // OsType names in arch.go OsAndroid = "android" osDarwin = "darwin" osLinux = "linux_glibc" OsDarwin = "darwin" OsLinux = "linux_glibc" osLinuxMusl = "linux_musl" osLinuxBionic = "linux_bionic" osWindows = "windows" OsWindows = "windows" // Targets in arch.go osArchAndroidArm = "android_arm" Loading Loading @@ -156,11 +156,11 @@ var ( // constraint_value for the @platforms//os:os constraint_setting platformOsMap = map[string]string{ OsAndroid: "//build/bazel/platforms/os:android", osDarwin: "//build/bazel/platforms/os:darwin", osLinux: "//build/bazel/platforms/os:linux_glibc", OsDarwin: "//build/bazel/platforms/os:darwin", OsLinux: "//build/bazel/platforms/os:linux_glibc", osLinuxMusl: "//build/bazel/platforms/os:linux_musl", osLinuxBionic: "//build/bazel/platforms/os:linux_bionic", osWindows: "//build/bazel/platforms/os:windows", OsWindows: "//build/bazel/platforms/os:windows", ConditionsDefaultConfigKey: ConditionsDefaultSelectKey, // The default condition of an os select map. } Loading Loading @@ -192,22 +192,22 @@ var ( // in a cyclic dependency. osToArchMap = map[string][]string{ OsAndroid: {archArm, archArm64, archRiscv64, archX86, archX86_64}, osLinux: {archX86, archX86_64}, OsLinux: {archX86, archX86_64}, osLinuxMusl: {archX86, archX86_64}, osDarwin: {archArm64, archX86_64}, OsDarwin: {archArm64, archX86_64}, osLinuxBionic: {archArm64, archX86_64}, // TODO(cparsons): According to arch.go, this should contain archArm, archArm64, as well. osWindows: {archX86, archX86_64}, OsWindows: {archX86, archX86_64}, } osAndInApexMap = map[string]string{ AndroidAndInApex: "//build/bazel/rules/apex:android-in_apex", AndroidPlatform: "//build/bazel/rules/apex:system", osDarwin: "//build/bazel/platforms/os:darwin", osLinux: "//build/bazel/platforms/os:linux_glibc", OsDarwin: "//build/bazel/platforms/os:darwin", OsLinux: "//build/bazel/platforms/os:linux_glibc", osLinuxMusl: "//build/bazel/platforms/os:linux_musl", osLinuxBionic: "//build/bazel/platforms/os:linux_bionic", osWindows: "//build/bazel/platforms/os:windows", OsWindows: "//build/bazel/platforms/os:windows", ConditionsDefaultConfigKey: ConditionsDefaultSelectKey, } Loading bp2build/cc_library_conversion_test.go +46 −0 Original line number Diff line number Diff line Loading @@ -4663,3 +4663,49 @@ cc_library { }, }) } func TestCcLibraryHostLdLibs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_binary linker flags for host_ldlibs", ModuleTypeUnderTest: "cc_binary", ModuleTypeUnderTestFactory: cc.BinaryFactory, Blueprint: soongCcLibraryPreamble + `cc_binary { name: "a", host_supported: true, ldflags: ["-lcommon"], target: { linux: { host_ldlibs: [ "-llinux", ], }, darwin: { ldflags: ["-ldarwinadditional"], host_ldlibs: [ "-ldarwin", ], }, windows: { host_ldlibs: [ "-lwindows", ], }, }, } `, ExpectedBazelTargets: []string{ MakeBazelTargetNoRestrictions("cc_binary", "a", AttrNameToString{ "linkopts": `["-lcommon"] + select({ "//build/bazel/platforms/os:darwin": [ "-ldarwinadditional", "-ldarwin", ], "//build/bazel/platforms/os:linux_glibc": ["-llinux"], "//build/bazel/platforms/os:windows": ["-lwindows"], "//conditions:default": [], })`, "local_includes": `["."]`, }), }, }) } cc/bp2build.go +3 −0 Original line number Diff line number Diff line Loading @@ -1266,6 +1266,9 @@ func (la *linkerAttributes) bp2buildForAxisAndConfig(ctx android.BazelConversion } la.additionalLinkerInputs.SetSelectValue(axis, config, additionalLinkerInputs) if axis == bazel.OsConfigurationAxis && (config == bazel.OsDarwin || config == bazel.OsLinux || config == bazel.OsWindows) { linkerFlags = append(linkerFlags, props.Host_ldlibs...) } la.linkopts.SetSelectValue(axis, config, linkerFlags) if axisFeatures != nil { Loading Loading
android/allowlists/allowlists.go +1 −0 Original line number Diff line number Diff line Loading @@ -85,6 +85,7 @@ var ( "development/apps/DevelopmentSettings": Bp2BuildDefaultTrue, "development/apps/Fallback": Bp2BuildDefaultTrue, "development/apps/WidgetPreview": Bp2BuildDefaultTrue, "development/python-packages/adb": Bp2BuildDefaultTrueRecursively, "development/samples/BasicGLSurfaceView": Bp2BuildDefaultTrue, "development/samples/BluetoothChat": Bp2BuildDefaultTrue, "development/samples/BrokenKeyDerivation": Bp2BuildDefaultTrue, Loading
bazel/configurability.go +12 −12 Original line number Diff line number Diff line Loading @@ -31,11 +31,11 @@ const ( // OsType names in arch.go OsAndroid = "android" osDarwin = "darwin" osLinux = "linux_glibc" OsDarwin = "darwin" OsLinux = "linux_glibc" osLinuxMusl = "linux_musl" osLinuxBionic = "linux_bionic" osWindows = "windows" OsWindows = "windows" // Targets in arch.go osArchAndroidArm = "android_arm" Loading Loading @@ -156,11 +156,11 @@ var ( // constraint_value for the @platforms//os:os constraint_setting platformOsMap = map[string]string{ OsAndroid: "//build/bazel/platforms/os:android", osDarwin: "//build/bazel/platforms/os:darwin", osLinux: "//build/bazel/platforms/os:linux_glibc", OsDarwin: "//build/bazel/platforms/os:darwin", OsLinux: "//build/bazel/platforms/os:linux_glibc", osLinuxMusl: "//build/bazel/platforms/os:linux_musl", osLinuxBionic: "//build/bazel/platforms/os:linux_bionic", osWindows: "//build/bazel/platforms/os:windows", OsWindows: "//build/bazel/platforms/os:windows", ConditionsDefaultConfigKey: ConditionsDefaultSelectKey, // The default condition of an os select map. } Loading Loading @@ -192,22 +192,22 @@ var ( // in a cyclic dependency. osToArchMap = map[string][]string{ OsAndroid: {archArm, archArm64, archRiscv64, archX86, archX86_64}, osLinux: {archX86, archX86_64}, OsLinux: {archX86, archX86_64}, osLinuxMusl: {archX86, archX86_64}, osDarwin: {archArm64, archX86_64}, OsDarwin: {archArm64, archX86_64}, osLinuxBionic: {archArm64, archX86_64}, // TODO(cparsons): According to arch.go, this should contain archArm, archArm64, as well. osWindows: {archX86, archX86_64}, OsWindows: {archX86, archX86_64}, } osAndInApexMap = map[string]string{ AndroidAndInApex: "//build/bazel/rules/apex:android-in_apex", AndroidPlatform: "//build/bazel/rules/apex:system", osDarwin: "//build/bazel/platforms/os:darwin", osLinux: "//build/bazel/platforms/os:linux_glibc", OsDarwin: "//build/bazel/platforms/os:darwin", OsLinux: "//build/bazel/platforms/os:linux_glibc", osLinuxMusl: "//build/bazel/platforms/os:linux_musl", osLinuxBionic: "//build/bazel/platforms/os:linux_bionic", osWindows: "//build/bazel/platforms/os:windows", OsWindows: "//build/bazel/platforms/os:windows", ConditionsDefaultConfigKey: ConditionsDefaultSelectKey, } Loading
bp2build/cc_library_conversion_test.go +46 −0 Original line number Diff line number Diff line Loading @@ -4663,3 +4663,49 @@ cc_library { }, }) } func TestCcLibraryHostLdLibs(t *testing.T) { runCcLibraryTestCase(t, Bp2buildTestCase{ Description: "cc_binary linker flags for host_ldlibs", ModuleTypeUnderTest: "cc_binary", ModuleTypeUnderTestFactory: cc.BinaryFactory, Blueprint: soongCcLibraryPreamble + `cc_binary { name: "a", host_supported: true, ldflags: ["-lcommon"], target: { linux: { host_ldlibs: [ "-llinux", ], }, darwin: { ldflags: ["-ldarwinadditional"], host_ldlibs: [ "-ldarwin", ], }, windows: { host_ldlibs: [ "-lwindows", ], }, }, } `, ExpectedBazelTargets: []string{ MakeBazelTargetNoRestrictions("cc_binary", "a", AttrNameToString{ "linkopts": `["-lcommon"] + select({ "//build/bazel/platforms/os:darwin": [ "-ldarwinadditional", "-ldarwin", ], "//build/bazel/platforms/os:linux_glibc": ["-llinux"], "//build/bazel/platforms/os:windows": ["-lwindows"], "//conditions:default": [], })`, "local_includes": `["."]`, }), }, }) }
cc/bp2build.go +3 −0 Original line number Diff line number Diff line Loading @@ -1266,6 +1266,9 @@ func (la *linkerAttributes) bp2buildForAxisAndConfig(ctx android.BazelConversion } la.additionalLinkerInputs.SetSelectValue(axis, config, additionalLinkerInputs) if axis == bazel.OsConfigurationAxis && (config == bazel.OsDarwin || config == bazel.OsLinux || config == bazel.OsWindows) { linkerFlags = append(linkerFlags, props.Host_ldlibs...) } la.linkopts.SetSelectValue(axis, config, linkerFlags) if axisFeatures != nil { Loading